Free attachments
Free attachments place reusable printable CSG directly in world space and can participate in both assembly mates and manufacturing connections.
Definition#
A Free attachment is a printable attachment instance with its own world-space position and rotation. It is not hosted by a Physical or Virtual link.
Use Free attachments for brackets, enclosures, adapters, mounts, and other parametric printed parts whose placement belongs to an assembly relationship or an absolute design coordinate rather than a stock member or construction link.
Like link-hosted attachments, a Free attachment instantiates a reusable type from the Frame's Attachments catalogue. Its type owns the CSG recipe, parameters, body parts, connection ports, clearances, and mount interfaces. Unlike a Foreign part, the resulting CSG is manufactured geometry rather than a fixed purchased mesh.
Placement and transforms#
An unmated Free attachment stores an editable:
- world position in millimetres;
- XYZ world rotation in degrees.
These values can use Frame reactive-property expressions. Editing the transform moves the rendered instance without regenerating its CSG.
A Free type receives no hidden link dimensions. Its explicit parameters and computed properties must fully determine its geometry. Use a Physical-link attachment when a part needs tube radius, wall thickness, or another member property; use a Virtual-link attachment when it needs a persistent construction axis.
Assembly mates#
A Free attachment may be freely placed or mated through compatible typed mount interfaces. It may:
- mate to a Physical, Virtual, or Free attachment;
- mate to a Foreign part;
- act as the reference owner for another Free attachment or Foreign part;
- remain an unmated assembly root.
A mate aligns and propagates pose. It does not union printable bodies or add connector material. When a reference owner moves, all Free and Foreign descendants follow through the same assembly dependency graph.
Mount availability is tracked per physical capacity, not as one taken/free flag for a whole interface. If two bolts occupy two sites in a four-hole board interface, the other two holes remain available. A Free attachment that requires two mounting points can select those two distinct free sites in one mate; it cannot count the same hole twice through alternative interface descriptions. Its through-hole fastener entries remain available as reference sites for separate bolts after the attachment is mated, without becoming one-hole placement fallbacks for the attachment itself.
The selected card shows whether the attachment is mated and links back to its reference owner. Unmate removes the dependency, preserves orientation, and moves the released part 10 mm clear of the interface so its new free placement is visible. Direct translation or an incompatible rotation also breaks the mate.
Type, parameters, and materials#
The Type field chooses a FreeContext attachment definition available in the Frame catalogue. A Free instance stores explicit parameter values for that type. Changing the type or a parameter regenerates only that attachment's CSG.
Body parts are the material and manufacturing units within the type. A simple model has one whole-attachment material; multi-part models expose per-body-part material and appearance controls. Clearances remain subtractive authoring data and are applied through explicit manufacturing connectivity.
Attachment connections#
Free connection ports are ordinary Attachment Connection participants. A single connection can combine ports from Physical-link, Virtual-link, and Free attachments when the owning body materials are compatible.
This relationship is separate from mating:
``text mate = assembly alignment and pose propagation attachment connection = printable grouping and connector geometry ``
Use Add connection on an exported Free port, then choose the remaining participants. Hull, Union, Strut, material continuity, and shared-clearance rules are identical to other attachment kinds.
Creating and editing#
Import a Free attachment type into the Frame's Attachments catalogue. Open + Add, choose the type under Attachments, and place it at the desired world position.
The selected card provides actions to:
- rename the instance;
- edit world position and XYZ rotation;
- change type and explicit parameters;
- edit whole-body or per-body materials and appearances;
- start an Attachment Connection from a port;
- follow its mate owner or unmate it;
- hide, show, or delete it.
Deleting a reference owner cascades through its assembly dependents. Undo restores owners before dependents and restores both mate directions exactly.
Manufacturing and BOM#
Free body parts enter STL/3MF output and printable-component BOM rows. Explicit Attachment Connections determine whether several attachment bodies export as one component. A mate alone leaves them as separate printable components.
Mated Foreign parts remain separate catalogue hardware: their GLB meshes never enter manufacturing booleans, and they appear only in assembly BOM output. Foreign keep-out diagnostics still test those parts against Free printable bodies.
Common mistakes#
- Using a Free attachment for member-aware geometry. Choose a Physical-link
attachment when the CSG must adapt to stock dimensions.
- Expecting a mate to manufacture a bridge. Add an Attachment Connection when
the bodies should become one printable component.
- Expecting a connection to align parts. Connections do not own placement; use
a mate or edit the world transform.
- Treating a Foreign part as printable CSG. Purchased meshes remain assembly and
diagnostic data only.
- Editing position while expecting a mate to remain. Unconstrained movement
deliberately releases the placement dependency.
Related learning#
Read Physical-link attachments and Virtual-link attachments for hosted alternatives, Attachment Connections for printable grouping, or Assembly for manufacturing handoff.
Get occasional TrussLab updates, or send questions and build notes directly.
Subscribe to our newsletter