Part EditAttachment: Difference between revisions

From FreeCAD Documentation
mNo edit summary
(SeeAlso)
 
(120 intermediate revisions by 8 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
<translate>
<translate>

<!--T:90-->
<!--T:90-->
{{Docnav
{{Docnav
|[[Part_ProjectionOnSurface|ProjectionOnSurface]]
|[[Part_SectionCross|CrossSections]]
|[[Part_CompCompoundTools|CompCompoundTools]]
|[[Part_Measure_Menu|Part Measure Menu]]
|[[Part_Module|Part]]
|[[Part_Workbench|Part]]
|IconL=Part_CrossSections.svg
|IconL=Part_ProjectionOnSurface.svg
|IconR=Part_Measure_Menu.png
|IconR=Part_CompCompoundTools.png
|IconC=Workbench_Part.svg
|IconC=Workbench_Part.svg
}}
}}
Line 13: Line 14:
<!--T:1-->
<!--T:1-->
{{GuiCommand
{{GuiCommand
|Name=Part Attachment
|Name=Part EditAttachment
|MenuLocation=Part → Attachment...
|MenuLocation=Part → Attachment...
|Workbenches=[[Part Module|Part]], [[PartDesign Workbench|PartDesign]]
|Workbenches=[[Part_Workbench|Part]], [[PartDesign_Workbench|PartDesign]]
|SeeAlso=[[Placement|Placement]]
|Version=0.17
|Version=0.17
|SeeAlso=[[Placement|Placement]], [[Basic_Attachment_Tutorial|Basic Attachment Tutorial]]
}}
}}


== Description== <!--T:2-->
== Description == <!--T:2-->


<!--T:3-->
<!--T:3-->
'''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 update to its new position.
'''Part EditAttachment''' is a utility to attach an object to one or more other objects. The attached object is linked to the referenced object(s), which means that if the [[Std Placement|placement]] or geometry of the referenced object(s) is changed, the placement of the attached object will update accordingly.


==Usage== <!--T:5-->
== Attach engines == <!--T:109-->


<!--T:6-->
<!--T:110-->
The attachment of an object is controlled by one of four attach engines. The default engine that is used for an object depends on its type.
# Select the object to be attached.
# 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.
# 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|Reference4}} buttons and repeating step 4.
# Optionally set an [[#Attachment Offset|Attachment Offset]].
# Press {{KEY|OK}}.


== Options== <!--T:7-->
<!--T:111-->
The four engines are:
* [[#Attacher::AttachEnginePoint|Attacher::AttachEnginePoint]]
* [[#Attacher::AttachEngineLine|Attacher::AttachEngineLine]]
* [[#Attacher::AttachEnginePlane|Attacher::AttachEnginePlane]]
* [[#Attacher::AttachEngine3D|Attacher::AttachEngine3D]]


<!--T:8-->
<!--T:112-->
The rest of this page focuses on the AttachEngine3D. The modes of the other engines are only listed. Note that the modes of AttachEnginePlane are in fact identical to those of AttachEngine3D.
[[File:Part Offset Tasks.png | right]]


=== Attachment mode=== <!--T:9-->
== Usage == <!--T:5-->


==== Deactivated==== <!--T:10-->
<!--T:6-->
# Select the object to be attached.
# Select the {{MenuCommand|Part → [[Image:Part_EditAttachment.svg|16px]] Attachment...}} option from the menu.
# The {{MenuCommand|Attachment}} task panel opens.
# At the top of the task panel ''Not attached'' can be read. The first button labeled {{Button|Selecting...}} is highlighted to indicate a selection in the [[3D_view|3D view]] is expected.
# Select a vertex, edge or face/plane belonging to another object.
# In the input field to the right of the button, the referenced object and subelement are shown. For example, if a face of a [[Part_Box|Part Box]] is selected, the field may show {{Value|Box:Face6}}.
# The available modes are filtered based on the selected references and their order. For example, for modes [[#Align_O-Z-X|Align O-Z-X]] to [[#Align_O-Y-X|Align O-Y-X]] the first reference must be a vertex. If the first reference is a subelement of a different type, they are removed from the list.
# Select an [[#Attachment mode|Attachment mode]] in the list. For information on the attachment modes, hover the mouse over them for a tooltip to appear.
# ''Attached with mode <description>'' is now displayed at the top of the task panel.
# Depending on the selected mode, add up to three more references by pressing the {{Button|Reference2}}, {{Button|Reference3}}, and {{Button|Reference4}} buttons and repeating step 5. It is also possible to specify all references before selecting an attachment mode.
# When selecting an additional reference the label of the previous button will change and display the type of subelement of that reference.
# Optionally set an [[#Attachment Offset|Attachment Offset]].
# Press {{Button|OK}}.
# If applicable, optionally change the {{PropertyData|Map Path Parameter}} property in the [[Property_editor|Property editor]].


<!--T:11-->
== Change attach engine == <!--T:113-->
Default, no reference selected.


==== Normal to edge==== <!--T:12-->
<!--T:114-->
It is possible to manually change the attach engine of an object:
# Select the object.
# Right-click in the [[Property_editor|Property editor]] and select {{MenuCommand|Show all}} from the context menu.
# Edit the {{PropertyData|Attacher Type}} property of the object.


<!--T:13-->
== Attachment modes == <!--T:115-->
Object is made perpendicular to edge. Optional vertex reference defines location.


</translate>
<!--T:14-->
<div class="toccolours mw-collapsible mw-collapsed">
:; Reference combinations:
<translate>
: Edge
: Edge, Vertex
: Vertex, Edge


==== Align O-N-X==== <!--T:15-->
=== Attacher::AttachEnginePoint === <!--T:116-->


</translate>
<!--T:16-->
<div class="mw-collapsible-content">
Matches object's origin with first referenced vertex, then aligns its normal and horizontal plane axis toward vertex/along line.
<translate>


<!--T:17-->
<!--T:117-->
* Deactivated
:; Reference combinations:
* Object's origin
: Vertex, Vertex, Vertex
* Focus1
: Vertex, Vertex, Edge
* Focus2
: Vertex, Edge, Vertex
* On edge
: Vertex, Edge, Edge
* Center of curvature
: Vertex, Vertex
* Center of mass
: Vertex, Edge
* Vertex
* Proximity point 1
* Proximity point 2


</translate>
==== Align O-N-Y==== <!--T:18-->
</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
<translate>


=== Attacher::AttachEngineLine === <!--T:118-->
<!--T:19-->
Matches object's origin with first referenced vertex and aligns its normal and vertical plane axis toward vertex/along line.


</translate>
<!--T:20-->
<div class="mw-collapsible-content">
:; Reference combinations:
<translate>
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge


==== Align O-X-Y==== <!--T:21-->
<!--T:119-->
* Deactivated
* Object's X
* Object's Y
* Object's Z
* Axis of curvature
* Directrix1
* Directrix2
* Asymptote1
* Asymptote2
* Tangent
* Normal to edge
* Binormal
* Through two points
* Proximity line
* 1st principal axis
* 2nd principal axis
* 3rd principal axis
* Normal to surface


</translate>
<!--T:22-->
</div>
Matches object's origin with first referenced vertex and aligns its horizontal and vertical plane axes toward vertex/along line.
</div>
<div class="toccolours mw-collapsible mw-collapsed">
<translate>


=== Attacher::AttachEnginePlane === <!--T:120-->
<!--T:23-->
:; Reference combinations:
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
:Vertex, Edge


</translate>
==== Align O-X-N==== <!--T:24-->
<div class="mw-collapsible-content">
<translate>


<!--T:25-->
<!--T:121-->
* Deactivated
Matches object's origin with first referenced vertex and aligns its horizontal plane axis and normal toward vertex/along line.
* Translate origin
* Object's XY
* Object's XZ
* Object's YZ
* Plane face
* Tangent to surface
* Normal to edge
* Frenet NB
* Frenet TN
* Frenet TB
* Concentric
* Revolution Section
* Plane by 3 points
* Normal to 3 points
* Folding
* Inertia 2-3
* Align O-N-X
* Align O-N-Y
* Align O-X-Y
* Align O-X-N
* Align O-Y-N
* Align O-Y-X


</translate>
<!--T:26-->
</div>
:; Reference combinations:
</div>
: Vertex, Vertex, Vertex
<translate>
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge


==== Align O-Y-N==== <!--T:27-->
=== Attacher::AttachEngine3D === <!--T:122-->


<!--T:28-->
<!--T:8-->
[[File:Part_Offset_Tasks.png|250px|right]]
Matches object's origin with first referenced vertex and aligns its vertical plane axis and normal toward vertex/along line.


<!--T:29-->
==== Deactivated ==== <!--T:10-->
:; Reference combinations:
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
: Vertex, Edge


==== Align O-Y-X==== <!--T:30-->
<!--T:95-->
Attachment is disabled. The object can be moved by editing its [[Placement|Placement]] property.

<!--T:31-->
Matches object's origin with first referenced vertex and aligns its vertical and horizontal plane axes toward vertex/along line.

<!--T:32-->
:; Reference combinations:
: Vertex, Vertex, Vertex
: Vertex, Vertex, Edge
: Vertex, Edge, Vertex
: Vertex, Edge, Edge
: Vertex, Vertex
:Vertex, Edge


==== Translate origin==== <!--T:33-->
==== Translate origin ==== <!--T:33-->


<!--T:34-->
<!--T:34-->
Object's origin is aligned to matched vertex. Orientation is controlled by [[Placement|Placement]] property.
The origin is matched with a vertex. The orientation is still controlled by the Placement property of the attached object.


<!--T:35-->
<!--T:35-->
Line 156: Line 184:
: Vertex.
: Vertex.


==== Object's XY==== <!--T:36-->
==== Object's X Y Z ==== <!--T:36-->


<!--T:37-->
<!--T:37-->
Plane is aligned to XY local plane of linked object.
The Placement is made equal to the Placement of a linked object.


<!--T:38-->
<!--T:38-->
:; Reference combinations:
:; Reference combinations:
: Any, Conic.
: Any
: Conic


==== Object's XZ==== <!--T:39-->
==== Object's X Z Y ==== <!--T:39-->


<!--T:40-->
<!--T:40-->
Plane is aligned to XZ local plane of linked object.
The X, Y and Z axes are matched with a linked object's local X, Z and -Y axes, respectively.


<!--T:41-->
<!--T:41-->
:; Reference combinations:
:; Reference combinations:
: Any, Conic.
: Any
: Conic


==== Object's YZ==== <!--T:42-->
==== Object's Y Z X ==== <!--T:42-->


<!--T:43-->
<!--T:43-->
Plane is aligned to YZ local plane of linked object.
The X, Y and Z axes are matched with a linked object's local Y, Z and X axes, respectively.


<!--T:44-->
<!--T:44-->
:; Reference combinations:
:; Reference combinations:
: Any, Conic
: Any
: Conic


==== Plane face==== <!--T:45-->
==== XY on plane ==== <!--T:45-->


<!--T:46-->
<!--T:46-->
Plane is aligned to coincide to planar face.
The XY plane is aligned to coincide with a planar face.


<!--T:47-->
<!--T:47-->
Line 192: Line 223:
: Plane
: Plane


==== Tangent to surface==== <!--T:48-->
==== XY tangent to surface ==== <!--T:48-->


<!--T:49-->
<!--T:49-->
Plane is made tangent to surface at vertex.
The XY plane is made tangent to a face at a vertex.


<!--T:50-->
<!--T:50-->
Line 202: Line 233:
: Vertex, Face
: Vertex, Face


==== Frenet NB==== <!--T:51-->
==== Z tangent to edge ==== <!--T:12-->

<!--T:13-->
The Z axis is aligned to be tangent to an edge. An optional vertex defines where.

<!--T:96-->
If no vertex is linked the {{PropertyData|Map Path Parameter}} property determines the point.

<!--T:14-->
:; Reference combinations:
: Edge
: Edge, Vertex
: Vertex, Edge

==== Frenet NBT ==== <!--T:51-->

</translate>
[[File:Attacher_mode_FrenetNB.png|250px]]
<translate>


<!--T:52-->
<!--T:52-->
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.
The X and Y axes are aligned to the normal (N) and binormal (B) axes of the [https://en.wikipedia.org/wiki/Frenet%E2%80%93Serret_formulas Frenet-Serret coordinate system] at a point on a curved edge. An optional vertex defines where.

<!--T:97-->
If no vertex is linked the {{PropertyData|Map Path Parameter}} property determines the point. The object's origin is translated to the vertex if the vertex is first, or kept at the curve if the curve is first.

<!--T:98-->
''Frenet NBT'' is similar to ''Z tangent to edge'', except that the X axis is well-defined.


<!--T:53-->
<!--T:53-->
Line 212: Line 267:
: Curve, Vertex
: Curve, Vertex
: Vertex, Curve
: Vertex, Curve
: [[File:Attacher mode FrenetNB.png|250px]]


==== Frenet TN==== <!--T:54-->
==== Frenet TNB ==== <!--T:54-->

</translate>
[[File:Attacher_mode_FrenetTN.png|250px]]
<translate>


<!--T:55-->
<!--T:55-->
The X and Y axes are aligned to the tangent (T) and normal (N) axes of the Frenet-Serret coordinate system at a point on a curved edge. An optional vertex defines where.
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.


<!--T:56-->
<!--T:99-->
See [[#Frenet_NBT|Frenet NBT]].
:;Reference combinations:
: Curve
: Curve, Vertex
: Vertex, Curve
: [[File:Attacher_mode_FrenetTN.png|250px]]


==== Frenet TB==== <!--T:57-->
==== Frenet TBN ==== <!--T:57-->

</translate>
[[File:Attacher_mode_FrenetTB.png|250px]]
<translate>


<!--T:58-->
<!--T:58-->
The X and Y axes are aligned to the tangent (T) and binormal (B) axes of the Frenet-Serret coordinate system at a point on a curved edge. An optional vertex defines where.
Plane is set tangent-binormal (TB) 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.


<!--T:59-->
<!--T:100-->
See [[#Frenet_NBT|Frenet NBT]].
:;Reference combinations:
: Curve
: Curve, Vertex
: Vertex, Curve
: [[File:Attacher_mode_FrenetTB.png|250px]]


==== Concentric==== <!--T:60-->
==== Concentric ==== <!--T:60-->


<!--T:61-->
<!--T:61-->
Aligns to plane to osculating circle of an edge. Optional Vertex link defines where.
The XY plane is aligned to the [https://en.wikipedia.org/wiki/Osculating_circle osculating circle] at a point on an edge. An optional vertex defines where.

<!--T:101-->
If no vertex is linked the {{PropertyData|Map Path Parameter}} property determines the point.


<!--T:62-->
<!--T:62-->
Line 252: Line 309:
: Vertex, Circle
: Vertex, Circle


==== Revolution Section==== <!--T:63-->
==== Revolution Section ==== <!--T:63-->


<!--T:64-->
<!--T:64-->
Plane is perpendicular to edge, and Y axis is matched with axis of osculating circle. Optional Vertex link defines where.
The Y axis is aligned to match the axis of the osculating circle at a point on an edge. An optional vertex defines where.


<!--T:65-->
<!--T:102-->
See [[#Concentric|Concentric]].
:; Reference combinations:
: Curve
: Circle
: Curve, Vertex
: Circle, Vertex
: Vertex, Curve
: Vertex, Circle


==== Plane by 3 points==== <!--T:66-->
==== XY plane by 3 points ==== <!--T:66-->


<!--T:67-->
<!--T:67-->
Aligns XY plane to pass through three vertices.
The XY plane is aligned to pass through three vertices. The X axis will pass through the first two vertices.


<!--T:68-->
<!--T:68-->
Line 278: Line 329:
: Line, Line
: Line, Line


==== Normal to 3 points==== <!--T:69-->
==== XZ plane by 3 points ==== <!--T:69-->


<!--T:70-->
<!--T:70-->
Aligns plane to pass through first two vertices, and perpendicular to plane that passes through 3 vertices.
The XZ plane is aligned to pass through three vertices. The X axis will pass through the first two vertices.


<!--T:71-->
<!--T:103-->
See [[#XY_plane_by_3_points|XY plane by 3 points]].
:; Reference combinations:
: Vertex, Vertex, Vertex
: Line, Vertex
: Vertex, Line
: Line, Line


==== Folding==== <!--T:72-->
==== Folding ==== <!--T:72-->

</translate>
[[File:Attacher_mode_Folding.png|250px]]
<translate>


<!--T:73-->
<!--T:73-->
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.
This is a special mode for folding polyhedra. Select four lines that share a common point in this order: contour line (1), fold line (2), other fold line (3), other contour line (4). To determine the coordinate system the selected contour lines are made coincident by rotating line 1 around line 2, and line 4 around line 3. The origin is matched with the common point, the X axis is matched with line 2, the Y axis is aligned towards the direction of the coincident contour lines.


<!--T:74-->
<!--T:74-->
:; Reference combinations
:; Reference combinations
: Line, Line, Line, Line
: Line, Line, Line, Line
: [[File:Attacher_mode_Folding.png| 250px]]


==== Inertia 2-3==== <!--T:75-->
==== Inertia CS ==== <!--T:75-->


<!--T:76-->
<!--T:76-->
Object will be attached to a plane passing through second and third principal axes of inertia (passes through center of mass).
The X, Y and Z axes are matched with those of an inertial coordinate system, constructed on principal axes of inertia and center of mass.


<!--T:77-->
<!--T:77-->
Line 312: Line 362:
: Any, Any, Any, Any
: Any, Any, Any, Any


=== Attachment Offset=== <!--T:78-->
==== Align O-Z-X ==== <!--T:15-->

<!--T:16-->
The origin is matched with the first Vertex. The Z and X axes are aligned towards a vertex or along a line.

<!--T:94-->
See [[O-X-Y_Type_Attachment_Modes|Align O-X-Y Type Attachment Modes]] for more details.

<!--T:17-->
:; Reference combinations:
: Vertex, Vertex, Vertex
: Vertex, Vertex, Line
: Vertex, Line, Vertex
: Vertex, Line, Line
: Vertex, Vertex
: Vertex, Line

==== Align O-Z-Y ==== <!--T:18-->

<!--T:19-->
The origin is matched with the first Vertex. The Z and Y axes are aligned towards a vertex or along a line.

<!--T:104-->
See [[#Align_O-Z-X|Align O-Z-X]].

==== Align O-X-Y ==== <!--T:21-->

<!--T:22-->
The origin is matched with the first Vertex. The X and Y axes are aligned towards a vertex or along a line.

<!--T:105-->
See [[#Align_O-Z-X|Align O-Z-X]].

==== Align O-X-Z ==== <!--T:24-->

<!--T:25-->
The origin is matched with the first Vertex. The X and Z axes are aligned towards a vertex or along a line.

<!--T:106-->
See [[#Align_O-Z-X|Align O-Z-X]].

==== Align O-Y-Z ==== <!--T:27-->

<!--T:28-->
The origin is matched with the first Vertex. The Y and Z axes are aligned towards a vertex or along a line.

<!--T:107-->
See [[#Align_O-Z-X|Align O-Z-X]].

==== Align O-Y-X ==== <!--T:30-->

<!--T:31-->
The origin is matched with the first Vertex. The Y and X axes are aligned towards a vertex or along a line.

<!--T:108-->
See [[#Align_O-Z-X|Align O-Z-X]].

== Attachment offset == <!--T:78-->


<!--T:79-->
<!--T:79-->
Attachment Offset is used to apply a linear or rotary offset from the referenced object. That means the offsets are relative to the ''local'' coordinate system, not to the global. It becomes active when an attachment mode other than ''Deactivated'' has been selected.
Attachment Offset becomes active when an attachment mode other than ''Deactivated'' has been selected. It is used to apply a linear or rotary offset within the attachment coordinate system (ACS), as defined by the attachment mode and the referenced object(s).


<!--T:80-->
<!--T:80-->
* '''X''': sets an offset distance in the X axis of the reference object.
* '''In x-direction''': sets an offset distance along the X axis of the ACS.


<!--T:81-->
<!--T:81-->
* '''Y''': sets an offset distance in the Y axis of the reference object.
* '''In y-direction''': sets an offset distance along the Y axis of the ACS.


<!--T:82-->
<!--T:82-->
* '''Z''': sets an offset distance in the Z axis of the reference object. This coordinate is to be used for the frequent use case that you want to offset a sketch perpendicular to the plane.
* '''In z-direction''': sets an offset distance along the Z axis of the ACS.


<!--T:83-->
<!--T:85-->
* '''Yaw''': rotates the attached object along the reference object's Z axis.
* '''Around x-axis''': rotates the attached object around the X axis of the ACS.


<!--T:84-->
<!--T:84-->
* '''Pitch''': rotates the attached object along the reference object's Y axis.
* '''Around y-axis''': rotates the attached object around the Y axis of the ACS.


<!--T:85-->
<!--T:83-->
* '''Roll''': rotates the attached object along the reference object's X axis.
* '''Around z-axis''': rotates the attached object around the Z axis of the ACS.


<!--T:86-->
<!--T:86-->
* '''Flip sides''': if checked, the attached object is reversed from its XY plane.
* '''Flip sides''': if checked, the attachment is reversed. This is equivalent to rotating the object 180° around the Y axis of the ACS.


=== Limitations=== <!--T:87-->
== Limitations == <!--T:87-->


<!--T:88-->
<!--T:88-->
* If selecting two lines results in an error: "Points are collinear. Can't make a plane", try selecting three vertices instead [https://forum.freecadweb.org/viewtopic.php?f=8&t=55088&p=473614#p473594].
* [[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.




<!--T:91-->
<!--T:91-->
{{Docnav
{{Docnav
|[[Part_ProjectionOnSurface|ProjectionOnSurface]]
|[[Part_SectionCross|CrossSections]]
|[[Part_CompCompoundTools|CompCompoundTools]]
|[[Part_Measure_Menu|Part Measure Menu]]
|[[Part_Module|Part]]
|[[Part_Workbench|Part]]
|IconL=Part_CrossSections.svg
|IconL=Part_ProjectionOnSurface.svg
|IconR=Part_Measure_Menu.png
|IconR=Part_CompCompoundTools.png
|IconC=Workbench_Part.svg
|IconC=Workbench_Part.svg
}}
}}


</translate>
</translate>
{{Part Tools navi{{#translation:}}}}
{{Part_Tools_navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 07:35, 13 October 2023

Part EditAttachment

Menu location
Part → Attachment...
Workbenches
Part, PartDesign
Default shortcut
None
Introduced in version
0.17
See also
Placement, Basic Attachment Tutorial

Description

Part EditAttachment is a utility to attach an object to one or more other objects. The attached object is linked to the referenced object(s), which means that if the placement or geometry of the referenced object(s) is changed, the placement of the attached object will update accordingly.

Attach engines

The attachment of an object is controlled by one of four attach engines. The default engine that is used for an object depends on its type.

The four engines are:

The rest of this page focuses on the AttachEngine3D. The modes of the other engines are only listed. Note that the modes of AttachEnginePlane are in fact identical to those of AttachEngine3D.

Usage

  1. Select the object to be attached.
  2. Select the Part → Attachment... option from the menu.
  3. The Attachment task panel opens.
  4. At the top of the task panel Not attached can be read. The first button labeled Selecting... is highlighted to indicate a selection in the 3D view is expected.
  5. Select a vertex, edge or face/plane belonging to another object.
  6. In the input field to the right of the button, the referenced object and subelement are shown. For example, if a face of a Part Box is selected, the field may show Box:Face6.
  7. The available modes are filtered based on the selected references and their order. For example, for modes Align O-Z-X to Align O-Y-X the first reference must be a vertex. If the first reference is a subelement of a different type, they are removed from the list.
  8. Select an Attachment mode in the list. For information on the attachment modes, hover the mouse over them for a tooltip to appear.
  9. Attached with mode <description> is now displayed at the top of the task panel.
  10. Depending on the selected mode, add up to three more references by pressing the Reference2, Reference3, and Reference4 buttons and repeating step 5. It is also possible to specify all references before selecting an attachment mode.
  11. When selecting an additional reference the label of the previous button will change and display the type of subelement of that reference.
  12. Optionally set an Attachment Offset.
  13. Press OK.
  14. If applicable, optionally change the DataMap Path Parameter property in the Property editor.

Change attach engine

It is possible to manually change the attach engine of an object:

  1. Select the object.
  2. Right-click in the Property editor and select Show all from the context menu.
  3. Edit the DataAttacher Type property of the object.

Attachment modes

Attacher::AttachEnginePoint

  • Deactivated
  • Object's origin
  • Focus1
  • Focus2
  • On edge
  • Center of curvature
  • Center of mass
  • Vertex
  • Proximity point 1
  • Proximity point 2

Attacher::AttachEngineLine

  • Deactivated
  • Object's X
  • Object's Y
  • Object's Z
  • Axis of curvature
  • Directrix1
  • Directrix2
  • Asymptote1
  • Asymptote2
  • Tangent
  • Normal to edge
  • Binormal
  • Through two points
  • Proximity line
  • 1st principal axis
  • 2nd principal axis
  • 3rd principal axis
  • Normal to surface

Attacher::AttachEnginePlane

  • Deactivated
  • Translate origin
  • Object's XY
  • Object's XZ
  • Object's YZ
  • Plane face
  • Tangent to surface
  • Normal to edge
  • Frenet NB
  • Frenet TN
  • Frenet TB
  • Concentric
  • Revolution Section
  • Plane by 3 points
  • Normal to 3 points
  • Folding
  • Inertia 2-3
  • Align O-N-X
  • Align O-N-Y
  • Align O-X-Y
  • Align O-X-N
  • Align O-Y-N
  • Align O-Y-X

Attacher::AttachEngine3D

Deactivated

Attachment is disabled. The object can be moved by editing its Placement property.

Translate origin

The origin is matched with a vertex. The orientation is still controlled by the Placement property of the attached object.

Reference combinations
Vertex.

Object's X Y Z

The Placement is made equal to the Placement of a linked object.

Reference combinations
Any
Conic

Object's X Z Y

The X, Y and Z axes are matched with a linked object's local X, Z and -Y axes, respectively.

Reference combinations
Any
Conic

Object's Y Z X

The X, Y and Z axes are matched with a linked object's local Y, Z and X axes, respectively.

Reference combinations
Any
Conic

XY on plane

The XY plane is aligned to coincide with a planar face.

Reference combinations
Plane

XY tangent to surface

The XY plane is made tangent to a face at a vertex.

Reference combinations
Face, Vertex
Vertex, Face

Z tangent to edge

The Z axis is aligned to be tangent to an edge. An optional vertex defines where.

If no vertex is linked the DataMap Path Parameter property determines the point.

Reference combinations
Edge
Edge, Vertex
Vertex, Edge

Frenet NBT

The X and Y axes are aligned to the normal (N) and binormal (B) axes of the Frenet-Serret coordinate system at a point on a curved edge. An optional vertex defines where.

If no vertex is linked the DataMap Path Parameter property determines the point. The object's origin is translated to the vertex if the vertex is first, or kept at the curve if the curve is first.

Frenet NBT is similar to Z tangent to edge, except that the X axis is well-defined.

Reference combinations
Curve
Curve, Vertex
Vertex, Curve

Frenet TNB

The X and Y axes are aligned to the tangent (T) and normal (N) axes of the Frenet-Serret coordinate system at a point on a curved edge. An optional vertex defines where.

See Frenet NBT.

Frenet TBN

The X and Y axes are aligned to the tangent (T) and binormal (B) axes of the Frenet-Serret coordinate system at a point on a curved edge. An optional vertex defines where.

See Frenet NBT.

Concentric

The XY plane is aligned to the osculating circle at a point on an edge. An optional vertex defines where.

If no vertex is linked the DataMap Path Parameter property determines the point.

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

Revolution Section

The Y axis is aligned to match the axis of the osculating circle at a point on an edge. An optional vertex defines where.

See Concentric.

XY plane by 3 points

The XY plane is aligned to pass through three vertices. The X axis will pass through the first two vertices.

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

XZ plane by 3 points

The XZ plane is aligned to pass through three vertices. The X axis will pass through the first two vertices.

See XY plane by 3 points.

Folding

This is a special mode for folding polyhedra. Select four lines that share a common point in this order: contour line (1), fold line (2), other fold line (3), other contour line (4). To determine the coordinate system the selected contour lines are made coincident by rotating line 1 around line 2, and line 4 around line 3. The origin is matched with the common point, the X axis is matched with line 2, the Y axis is aligned towards the direction of the coincident contour lines.

Reference combinations
Line, Line, Line, Line

Inertia CS

The X, Y and Z axes are matched with those of an inertial coordinate system, constructed on principal axes of inertia and center of mass.

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

Align O-Z-X

The origin is matched with the first Vertex. The Z and X axes are aligned towards a vertex or along a line.

See Align O-X-Y Type Attachment Modes for more details.

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

Align O-Z-Y

The origin is matched with the first Vertex. The Z and Y axes are aligned towards a vertex or along a line.

See Align O-Z-X.

Align O-X-Y

The origin is matched with the first Vertex. The X and Y axes are aligned towards a vertex or along a line.

See Align O-Z-X.

Align O-X-Z

The origin is matched with the first Vertex. The X and Z axes are aligned towards a vertex or along a line.

See Align O-Z-X.

Align O-Y-Z

The origin is matched with the first Vertex. The Y and Z axes are aligned towards a vertex or along a line.

See Align O-Z-X.

Align O-Y-X

The origin is matched with the first Vertex. The Y and X axes are aligned towards a vertex or along a line.

See Align O-Z-X.

Attachment offset

Attachment Offset becomes active when an attachment mode other than Deactivated has been selected. It is used to apply a linear or rotary offset within the attachment coordinate system (ACS), as defined by the attachment mode and the referenced object(s).

  • In x-direction: sets an offset distance along the X axis of the ACS.
  • In y-direction: sets an offset distance along the Y axis of the ACS.
  • In z-direction: sets an offset distance along the Z axis of the ACS.
  • Around x-axis: rotates the attached object around the X axis of the ACS.
  • Around y-axis: rotates the attached object around the Y axis of the ACS.
  • Around z-axis: rotates the attached object around the Z axis of the ACS.
  • Flip sides: if checked, the attachment is reversed. This is equivalent to rotating the object 180° around the Y axis of the ACS.

Limitations

  • If selecting two lines results in an error: "Points are collinear. Can't make a plane", try selecting three vertices instead [1].