Handle scheme.png

A Handle is a connection plane used for connecting two AssemblyObjects together.


L-polyline

0-1-2 is the point drawing sequence

0-1-2 is the point drawing sequence

The Handle plane is defined using an L-shaped polyline, drawn in X-O-Y order: the elbow is the plane origin point and the lines connecting the first and third point respectively the X and Y axis of the plane. If the polyline segments are not at 90°, the plane X axis will be precisely aligned with the respective segment, and the Y axis will be the closest perpendicular (maintaining the same plane). The Z axis is determined using the right-hand rule (see Orientation Principles).

Constructing a Handle from an L polyline in Rhino (default type T is 0)

Constructing a Handle from an L polyline in Rhino (default type T is 0)

Sender & receiver planes

A Handle can act both as a receiver and a sender. Think about a plug (sender) and a socket (receiver) system, for example: when a Handle acts as a sender, it is like a plug, while when it acts as receiver, it is like a socket. In receiver mode, a Handle can accept a sender Handle using one or more rotations.

electrical-sockets-around-the-world_254045_5.jpg

The plane defined with the L polyline is the sender plane of the Handle.

The receiver plane is created by flipping the sender plane along its Y axis and then applying the rotation along the Z axis.

Animation of a Handle connecting with itself, 90 degrees rotation - when the 2 handles overlap, the red handle matches the receiver plane of the white object’s handle with rotation 0, then the 90 degrees rotation is applied

Animation of a Handle connecting with itself, 90 degrees rotation - when the 2 handles overlap, the red handle matches the receiver plane of the white object’s handle with rotation 0, then the 90 degrees rotation is applied

Assembler automatically creates all the necessary receiver planes (one for each rotation).

<aside> 💡 For optimal control over the results, L-polylines must be placed perfectly adjacent to a Collision Mesh flat face, with the Z axis of the sender plane pointing outwards: . a Handle inside the Collision Mesh and/or with the Z axis pointing inwards will never connect . a Handle pointing outwards, but not adjacent and outside the Collision Mesh will leave gaps (although this might be an intentional design feature)

</aside>