Part Attachment

Description
To be detailed.

(When you start creating a solid primitive, it can be inserted at point 0,0,0 using the same system of axes BodyOrigin, ObjectXY, or you can map the solid in the ways ObjectXZ and ObjectYZ.)

Useful stuff: User:DeepSOIC

How to use
todo

In PartDesign, Attachment is automatically called.

Options
Note: clean up needed, and decide how to present info: list or table? Table is easier to read, list is easier to translate.

Attachment mode
 * Deactivated (Default, no reference selected)
 * Translate origin (Origin is aligned to matched Vertex. Orientation is controlled by Placement property. Reference combinations: Vertex)
 * Object's XYZ (Placement is made equal to Placement of linked object. Reference combinations: Any, Conic)
 * Object's XZ-Y (X', Y', Z' axis are matched with objet's local X, Z, -Y respectively. Reference combinations: Any, Conic)
 * Object's YZX (X', Y', Z' axis are matched with objet's local Y, Z, X respectively. Reference combinations: Any, Conic)
 * XY on plane (X', Y' plane is aligned to coincide planar face. Reference combinations: Plane)
 * XY tangent to surface (X', Y' plane is made tangent to surface at vertex. Reference combinations: Face, Vertex / Vertex, Face)
 * Z tangent to edge (Z' axis is aligned to be tangent to edge. Optional Vertex link defines where. Reference combinations: Edge / Edge, Vertex / Vertex, Edge)
 * Frenet NBT (Align to Frenet-Serret coordinate system of curved edge. Optional Vertex link defines where. Reference combinations: Curve / Curve, Vertex / Vertex, Curve)
 * Frenet TNB (Align to Frenet-Serret coordinate system of curved edge. Optional Vertex link defines where. Reference combinations: Curve / Curve, Vertex / Vertex, Curve)
 * Frenet TBN (Align to Frenet-Serret coordinate system of curved edge. Optional Vertex link defines where. Reference combinations: Curve / Curve, Vertex / Vertex, Curve)
 * Concentric (Align XY plane to osculating circle of an edge. Optional Vertex link defines where. Reference combinations: Curve / Circle / Curve, Vertex / Circle, Vertex / Vertex, Curve / Vertex, Circle)
 * Revolution section (Align Y' axis of osculating circle of an edge. Optional Vertex link defines where. Reference combinations: Curve / Circle / Curve, Vertex / Circle, Vertex / Vertex, Curve / Vertex, Circle)
 * XY plane by 3 points (Align XY plane to pass through three vertices. Reference combinations: Vertex, Vertex, Vertex / Line, Vertex / Vertex, Line / Line, Line)
 * XZ plane by 3 points (Align XZ plane to pass through 3 points. X axis will pass through two first points. Reference combinations: Vertex, Vertex, Vertex / Line, Vertex / Vertex, Line / Line, Line)
 * Folding (Specialty mode for folding polihedra. Select 4 edge in order: foldable edge, fold line, other fold line, other foldable edge. XY plane will be aligned to folding the first edge. Reference combinations: Line, Line, Line, Line)

Reference selected


 * Reference 1 = Solid,
 * Object's XYZ
 * Object's XZ-Y
 * Object's YZX


 * Reference 1 = Face,
 * XY on plane


 * Reference 1 = Edge,
 * Z tangent to edge
 * Reference 2 = Edge (Vertex/Edge/Face/Line/Curve/Circle)
 * Z tangent to edge
 * XY plane by 3 points
 * XZ plane by 3 points


 * Reference 1 = Point, Vertex,
 * Translate origin
 * Reference 2 = Edge (Vertex/Edge/Face/Line/Curve/Circle)
 * Z tangent to edge
 * XY plane by 3 points
 * XZ plane by 3 points