In compas_timber
you can connect two Beams
using one of the three types of joints: T-Butt
, L-Butt
and L-Miter
.
The prefixes in the joint names refer to how the two beams are positioned relatively to each other. We distinguish four (topological) situations: I
, L
, T
and X
:
I
- a splice, i.e. beams are co-linear and connect at their endsL
- a corner, i.e. two beam meet at their ends at an angleT
- one beam (here called main beam) connects with one of its ends along the length of the other (here called cross beam)X
- the beams cross each other
In a T-Butt
joint, one beam (here called main beam) connects with one of its ends to the side of the other (here called cross beam). The side to connect to is selected automatically based on the angles between the main beam and the sides of the cross beam.
An L-Butt
joint is similar to the T-Butt
joint but additionally the cross beam is trimmed with the respective side of the main beam to create a clean corner joint.
An L-Miter
joint connects two beams with a planar cut at a bisector of an angle between them.
Connecting beams can be automated using JointCategoryRule
and AutomaticJoints
components.
JointCategoryRule
component serves to define which joint type should be applied when a beam of the first category (CatA
) meets a beam of the second category (CatB
).
AutomaticJoints
component does two things: First, it determines if two beams connect and if yes, determines the joint topology (I, L, T or X). Then, assigns the join type to every connecting pair of beams according to the defined rules. If the defined joint type has a different topology than the beams, no joint is assigned (Example: two beams form a corner (L) but the rule tries to assign a T-Butt joint).
Beams
: list of beams. To avoid unintended results, it should be the same list that is later used as an input toAssembly
Rules
: rules defined usingJointCategoryRule
componentsMaxDistance
: (optional) tolerance for finding connecting beams if the centerlines to not intersect exactly but are at a certain distance from each other.