Part EditAttachment: Difference between revisions

From FreeCAD Documentation
(Replaced GuiCommand with GuiCommandNoIcon)
(Added Description, How to use, Options, Attachment Offset header, removed table. Not finished!)
Line 1: Line 1:
{{UnfinishedDocu}}
{{UnfinishedDocu}}


{{GuiCommandNoIcon|Name=Part Attachment|Workbenches=[[Part Module|Part]], [[PartDesign Workbench|PartDesign]]|MenuLocation=Part → Attachment...|Shortcut=None|SeeAlso=[[Placement]]}}
{{GuiCommandNoIcon|Name=Part Attachment|Workbenches=[[Part Module|Part]], [[PartDesign Workbench|PartDesign]]|MenuLocation=Part → Attachment…|Shortcut=None|SeeAlso=[[Placement]]}}


==Description==
==Description==


'''Attachment''' is a utility to attach an object to another one. The attached object is linked to the other object, which means that if the latter's placement is changed afterwards, the attached object will follow to its new position.
To be detailed.


{{Version|0.17}}
(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==
==How to use==


# Select the object to be attached.
todo
# Go to the '''Part → Attachment…''' menu.

#: '''Note''': when working in [[PartDesign Workbench|PartDesign]] and creating sketches, datum geometry or primitives, steps 1 and 2 are unnecessary: the Attachment dialogue is brought up automatically.
In PartDesign, Attachment is automatically called.
# Under '''Attachment''' parameters, ''Not attached'' can be read. The first button below is labeled {{KEY|Selecting…}} to indicate it is expecting a selection in the 3D view.
# Select a topology element on the object to attach to: vertex, edge or face/plane. Datum geometry from [[Std Part|Part containers]] are also selectable.
# The first button's label now adopts the type of topology selected. In the white field to its right, the referenced object and its element is added. For example, if a face on a primitive cube is selected, the field will show Box:Face6.
# Select an [[#Attachment mode|Attachment mode]] in the list. The available modes are filtered by the selected references. ''Attached with mode <mode description>'' will be displayed under the '''Attachment''' header.
#: For live information on the attachment modes, hover the mouse on top of one of the modes in the list for a tooltip to appear.
# Optionally, add up to 3 more references by pressing the {{KEY|Reference2}}, {{KEY|Reference3}}, and {{KEY|Reference3}} buttons and repeating step 4.
# Optionally set an [[#Attachment Offset|Attachment Offset]].
# Press {{KEY|OK}}.


==Options==
==Options==


[[File:Part Offset Tasks.png|right]]
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.

====Normal to edge====
Object is made perpendicular to edge. Optional vertex reference defines location.
:; Reference combinations
: Edge
: Edge, Vertex
: Vertex, Edge

====Align O-N-X====
Matches object's origin with first referenced vertex, then aligns its normal and horizontal plane axis toward vertex/along line.
:; Reference combinations
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge

====Align O-N-Y====
Matches object's origin with first referenced vertex and aligns its normal and vertical plane axis toward vertex/along line.
:; Reference combinations
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge

====Align O-X-Y====
Matches object's origin with first referenced vertex and aligns its horizontal and vertical plane axes toward vertex/along line.
:; Reference combinations
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
:Vertex, Edge

====Align O-X-N====
Matches object's origin with first referenced vertex and aligns its horizontal plane axis and normal toward vertex/along line.
:; Reference combinations
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge

====Align O-Y-N====
Matches object's origin with first referenced vertex and aligns its vertical plane axis and normal toward vertex/along line.
:; Reference combinations
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge


====Align O-Y-X====
'''Attachment mode'''
Matches object's origin with first referenced vertex and aligns its vertical and horizontal plane axes toward vertex/along line.
* Deactivated ''(Default, no reference selected)''
:; Reference combinations
* Translate origin ''(Origin is aligned to matched Vertex. Orientation is controlled by Placement property. Reference combinations: Vertex'')
: Vertex, Vertex, Vertex
* Object's XYZ ''(Placement is made equal to Placement of linked object. Reference combinations: Any, Conic)''
: Vertex, Vertex, Edge
* Object's XZ-Y ''(X', Y', Z' axis are matched with objet's local X, Z, -Y respectively. Reference combinations: Any, Conic)''
: Vertex, Edge, Vertex
* Object's YZX ''(X', Y', Z' axis are matched with objet's local Y, Z, X respectively. Reference combinations: Any, Conic)''
: Vertex, Edge, Edge
* XY on plane ''(X', Y' plane is aligned to coincide planar face. Reference combinations: Plane)''
: Vertex, Vertex
* XY tangent to surface ''(X', Y' plane is made tangent to surface at vertex. Reference combinations: Face, Vertex / Vertex, Face)''
:Vertex, Edge
* 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)''


====Translate origin====
Object's origin is aligned to matched vertex. Orientation is controlled by Placement property.
:; Reference combinations
: Vertex.


====Object's XY====
{|{{Prettytable}}
Plane is aligned to XY local plane of linked object.
!Attachment mode
:; Reference combinations
!Action
: Any, Conic.
!Reference combinations
|--
|'''Deactivated'''
|Default, no reference selected
|
|--
|'''Translate origin'''
|Origin is aligned to matched Vertex.
Orientation is controlled by Placement property.
|Vertex
|--
|'''Object's XYZ'''
|Placement is made equal to Placement of linked object.
|Any
Conic
|--
|'''Object's XZ-Y'''
|X', Y', Z' axis are matched with objet's local X, Z, -Y respectively.
|Any
Conic
|--
|'''Object's YZX'''
|X', Y', Z' axis are matched with objet's local Y, Z, X respectively.
|Any
Conic
|--
|'''XY on plane'''
|X', Y' plane is aligned to coincide planar face.
|Plane
|--
|'''XY tangent to surface'''
|X', Y' plane is made tangent to surface at vertex.
|Face, Vertex / Vertex, Face
|--
|'''Z tangent to edge'''
|Z' axis is aligned to be tangent to edge
Optional Vertex link defines where.
|Edge
Edge, Vertex / Vertex, Edge
|--
|'''Frenet NBT'''
|Align to Frenet-Serret coordinate system of curved edge
Optional Vertex link defines where.
|Curve
Curve, Vertex / Vertex, Curve
|--
|'''Frenet TNB'''
|Align to Frenet-Serret coordinate system of curved edge
Optional Vertex link defines where.
|Curve
Curve, Vertex / Vertex, Curve
|--
|'''Frenet TBN'''
|Align to Frenet-Serret coordinate system of curved edge
Optional Vertex link defines where.
|Curve
Curve, Vertex / Vertex, Curve
|--
|'''Concentric'''
|Align XY plane to osculating circle of an edge.
Optional Vertex link defines where.
|Curve
Circle


====Object's XZ====
Curve, Vertex / Vertex, Curve
Plane is aligned to XZ local plane of linked object.
:; Reference combinations
: Any, Conic.


====Object's YZ====
Circle, Vertex / Vertex, Circle
Plane is aligned to YZ local plane of linked object.
|--
:; Reference combinations
|'''Revolution section'''
: Any, Conic
|Align Y' axis of osculating circle of an edge.
Optional Vertex link defines where.
|Curve
Circle


====Plane face====
Curve, Vertex / Vertex, Curve
Plane is aligned to coincide to planar face.
:; Reference combinations
: Plane


====Tangent to surface====
Circle, Vertex / Vertex, Circle
Plane is made tangent to surface at vertex.
|--
:; Reference combinations
|'''XY plane by 3 points'''
: Face, Vertex
|Align XY plane to pass through three vertices.
|Vertex, Vertex, Vertex
: Vertex, Face
Line, Vertex / Vertex, Line


====Frenet NB====
Line, Line
Plane is set to normal-binormal (NB) axes of [https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas Frenet-Serret coordinates] at the point of the edge's curve that is closest to the vertex (or defined by MapPathParameter property, if vertex is not linked). The object's origin is translated to the vertex if the vertex is first, or kept at the curve if edge is first. This mode is similar to ''Normal to edge'', except that X axis is well-defined.
|--
:;Reference combinations
|'''XZ plane by 3 points'''
: Curve
|Align XZ plane to pass through 3 points.
: Curve, Vertex
X axis will pass through two first points.
|Vertex, Vertex, Vertex
: Vertex, Curve
: [[File:Attacher mode FrenetNB.png|250px]]
Line, Vertex / Vertex, Line


====Frenet TN====
Line, Line
Plane is set to tangent-normal (TN) axes of [https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas Frenet-Serret coordinates] at the point of the edge's curve that is closest to the vertex (or defined by MapPathParameter property, if vertex is not linked). The origin of sketch is translated to the vertex if the vertex is first, or kept at the curve if edge is first. Effectively, if the curve is planar, the sketching plane is the plane of the curve.
|--
:;Reference combinations
|'''Folding'''
: Curve
|Specialty mode for folding polihedra.
: Curve, Vertex
Select 4 edge in order: foldable edge, fold line, other fold line, other foldable edge.
: Vertex, Curve
: [[File:Attacher_mode_FrenetTN.png|250px]]


====Frenet TB====
XY plane will be aligned to folding the first edge.
Plane is set tangent-binormal (TB) axes of Frenet-Serret coordinates at the point of the edge's curve that is closest to the vertex (or defined by MapPathParameter property, if vertex is not linked). The origin of sketch is translated to the vertex if the vertex is first, or kept at the curve if edge is first.
|Line, Line, Line, Line
:;Reference combinations
|--
: Curve
|}
: Curve, Vertex
: Vertex, Curve
: [[File:Attacher_mode_FrenetTB.png|250px]]


'''Reference selected'''


====Concentric====
* '''Reference 1 = Solid,'''
Aligns to plane to osculating circle of an edge. Optional Vertex link defines where.
** Object's XYZ
:; Reference combinations
** Object's XZ-Y
: Curve
** Object's YZX
: Circle
: Curve, Vertex
: Circle, Vertex
: Vertex, Curve
: Vertex, Circle


====Revolution Section====
Plane is perpendicular to edge, and Y axis is matched with axis of osculating circle. Optional Vertex link defines where.
:; Reference combinations
: Curve
: Circle
: Curve, Vertex
: Circle, Vertex
: Vertex, Curve
: Vertex, Circle


====Plane by 3 points====
* '''Reference 1 = Face,'''
Aligns XY plane to pass through three vertices.
** XY on plane
:; Reference combinations
: Vertex, Vertex, Vertex
: Line, Vertex
: Vertex, Line
: Line, Line


====Normal to 3 points====
Aligns plane to pass through first wo vertices, and perpendicular to plane that passes through 3 vertices.
:; Reference combinations
: Vertex, Vertex, Vertex
: Line, Vertex
: Vertex, Line
: Line, Line


====Folding====
* '''Reference 1 = Edge,'''
Specialty mode for folding polyhedra. Select 4 edge in order: foldable edge, fold line, other fold line, other foldable edge. Plane will be aligned to folding the first edge. In the picture below, it is not required that both leafs to fold together be the same.
* Z tangent to edge
:; Reference combinations
** '''Reference 2 = Edge''' (Vertex/Edge/Face/Line/Curve/Circle)
: Line, Line, Line, Line
*** Z tangent to edge
: [[File:Attacher_mode_Folding.png|250px]]
*** XY plane by 3 points
*** XZ plane by 3 points




====Inertia 2-3====
* '''Reference 1 = Point, Vertex,'''
Object will be attached to a plane passing through second and third principal axes of inertia (passes through center of mass).
* Translate origin
:; Reference combinations
** '''Reference 2 = Edge''' (Vertex/Edge/Face/Line/Curve/Circle)
: Any
*** Z tangent to edge
: Any, Any
*** XY plane by 3 points
: Any, Any, Any
*** XZ plane by 3 points
: Any, Any, Any, Any


===Attachment Offset===
{|{{Prettytable}}
!Reference 1
!option 1
!Reference 2
!option 2
!Reference 3
!option 3
!Reference 4
|--
|Solid
|
* Object's XYZ
* Object's XZ-Y
* Object's YZX
|
|
|
|
|
|--
|Face
|
* XY on plane
|Vertex
|
* XY tangent to surface
|
|
|
|--
|Edge
|
* Z tangent to edge
|Edge (Vertex/Edge/Face/Line/Curve/Circle)
|
* Z tangent to edge
* XY plane by 3 points
* XZ plane by 3 points
|Vertex
|
|
|--
|Point, Vertex
|
* Translate origin
|Edge (Vertex/Edge/Face/Line/Curve/Circle)
|
* Z tangent to edge
* XY plane by 3 points
* XZ plane by 3 points
|
|
|
|--
|
|
|
|
|
|
|
|}


Attachment Offset is used to apply a linear or rotary offset from the referenced object.


===Limitations===
{{clear}}
* [[Std Part|Part]] and [[PartDesign Body|Body]] containers are not supported. While it's possible to use Attachment to align them, the attachment won't be parametrically linked.

Revision as of 22:54, 11 March 2018

This documentation is not finished. Please help and contribute documentation.

GuiCommand model explains how commands should be documented. Browse Category:UnfinishedDocu to see more incomplete pages like this one. See Category:Command Reference for all commands.

See WikiPages to learn about editing the wiki pages, and go to Help FreeCAD to learn about other ways in which you can contribute.

Template:GuiCommandNoIcon

Description

Attachment is a utility to attach an object to another one. The attached object is linked to the other object, which means that if the latter's placement is changed afterwards, the attached object will follow to its new position.

introduced in version 0.17

How to use

  1. Select the object to be attached.
  2. Go to the Part → Attachment… menu.
    Note: when working in PartDesign and creating sketches, datum geometry or primitives, steps 1 and 2 are unnecessary: the Attachment dialogue is brought up automatically.
  3. Under Attachment parameters, Not attached can be read. The first button below is labeled Selecting… to indicate it is expecting a selection in the 3D view.
  4. Select a topology element on the object to attach to: vertex, edge or face/plane. Datum geometry from Part containers are also selectable.
  5. The first button's label now adopts the type of topology selected. In the white field to its right, the referenced object and its element is added. For example, if a face on a primitive cube is selected, the field will show Box:Face6.
  6. Select an Attachment mode in the list. The available modes are filtered by the selected references. Attached with mode <mode description> will be displayed under the Attachment header.
    For live information on the attachment modes, hover the mouse on top of one of the modes in the list for a tooltip to appear.
  7. Optionally, add up to 3 more references by pressing the Reference2, Reference3, and Reference3 buttons and repeating step 4.
  8. Optionally set an Attachment Offset.
  9. Press OK.

Options

Attachment mode

Deactivated

Default, no reference selected.

Normal to edge

Object is made perpendicular to edge. Optional vertex reference defines location.

Reference combinations
Edge
Edge, Vertex
Vertex, Edge

Align O-N-X

Matches object's origin with first referenced vertex, then aligns its normal and horizontal plane axis toward vertex/along line.

Reference combinations
Vertex, Vertex, Vertex
Vertex, Vertex, Edge
Vertex, Edge, Vertex
Vertex, Edge, Edge
Vertex, Vertex
Vertex, Edge

Align O-N-Y

Matches object's origin with first referenced vertex and aligns its normal and vertical plane axis toward vertex/along line.

Reference combinations
Vertex, Vertex, Vertex
Vertex, Vertex, Edge
Vertex, Edge, Vertex
Vertex, Edge, Edge
Vertex, Vertex
Vertex, Edge

Align O-X-Y

Matches object's origin with first referenced vertex and aligns its horizontal and vertical plane axes toward vertex/along line.

Reference combinations
Vertex, Vertex, Vertex
Vertex, Vertex, Edge
Vertex, Edge, Vertex
Vertex, Edge, Edge
Vertex, Vertex
Vertex, Edge

Align O-X-N

Matches object's origin with first referenced vertex and aligns its horizontal plane axis and normal toward vertex/along line.

Reference combinations
Vertex, Vertex, Vertex
Vertex, Vertex, Edge
Vertex, Edge, Vertex
Vertex, Edge, Edge
Vertex, Vertex
Vertex, Edge

Align O-Y-N

Matches object's origin with first referenced vertex and aligns its vertical plane axis and normal toward vertex/along line.

Reference combinations
Vertex, Vertex, Vertex
Vertex, Vertex, Edge
Vertex, Edge, Vertex
Vertex, Edge, Edge
Vertex, Vertex
Vertex, Edge

Align O-Y-X

Matches object's origin with first referenced vertex and aligns its vertical and horizontal plane axes toward vertex/along line.

Reference combinations
Vertex, Vertex, Vertex
Vertex, Vertex, Edge
Vertex, Edge, Vertex
Vertex, Edge, Edge
Vertex, Vertex
Vertex, Edge

Translate origin

Object's origin is aligned to matched vertex. Orientation is controlled by Placement property.

Reference combinations
Vertex.

Object's XY

Plane is aligned to XY local plane of linked object.

Reference combinations
Any, Conic.

Object's XZ

Plane is aligned to XZ local plane of linked object.

Reference combinations
Any, Conic.

Object's YZ

Plane is aligned to YZ local plane of linked object.

Reference combinations
Any, Conic

Plane face

Plane is aligned to coincide to planar face.

Reference combinations
Plane

Tangent to surface

Plane is made tangent to surface at vertex.

Reference combinations
Face, Vertex
Vertex, Face

Frenet NB

Plane is set to normal-binormal (NB) axes of Frenet-Serret coordinates at the point of the edge's curve that is closest to the vertex (or defined by MapPathParameter property, if vertex is not linked). The object's origin is translated to the vertex if the vertex is first, or kept at the curve if edge is first. This mode is similar to Normal to edge, except that X axis is well-defined.

Reference combinations
Curve
Curve, Vertex
Vertex, Curve

Frenet TN

Plane is set to tangent-normal (TN) axes of Frenet-Serret coordinates at the point of the edge's curve that is closest to the vertex (or defined by MapPathParameter property, if vertex is not linked). The origin of sketch is translated to the vertex if the vertex is first, or kept at the curve if edge is first. Effectively, if the curve is planar, the sketching plane is the plane of the curve.

Reference combinations
Curve
Curve, Vertex
Vertex, Curve

Frenet TB

Plane is set tangent-binormal (TB) axes of Frenet-Serret coordinates at the point of the edge's curve that is closest to the vertex (or defined by MapPathParameter property, if vertex is not linked). The origin of sketch is translated to the vertex if the vertex is first, or kept at the curve if edge is first.

Reference combinations
Curve
Curve, Vertex
Vertex, Curve


Concentric

Aligns to 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

Plane is perpendicular to edge, and Y axis is matched with axis of osculating circle. Optional Vertex link defines where.

Reference combinations
Curve
Circle
Curve, Vertex
Circle, Vertex
Vertex, Curve
Vertex, Circle

Plane by 3 points

Aligns XY plane to pass through three vertices.

Reference combinations
Vertex, Vertex, Vertex
Line, Vertex
Vertex, Line
Line, Line

Normal to 3 points

Aligns plane to pass through first wo vertices, and perpendicular to plane that passes through 3 vertices.

Reference combinations
Vertex, Vertex, Vertex
Line, Vertex
Vertex, Line
Line, Line

Folding

Specialty mode for folding polyhedra. Select 4 edge in order: foldable edge, fold line, other fold line, other foldable edge. Plane will be aligned to folding the first edge. In the picture below, it is not required that both leafs to fold together be the same.

Reference combinations
Line, Line, Line, Line


Inertia 2-3

Object will be attached to a plane passing through second and third principal axes of inertia (passes through center of mass).

Reference combinations
Any
Any, Any
Any, Any, Any
Any, Any, Any, Any

Attachment Offset

Attachment Offset is used to apply a linear or rotary offset from the referenced object.

Limitations

  • Part and Body containers are not supported. While it's possible to use Attachment to align them, the attachment won't be parametrically linked.