EM FHNode: Difference between revisions
(→Options: Adding "continue" mode) |
Renatorivo (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
<languages/> |
|||
<translate> |
|||
{{GuiCommand |
{{GuiCommand |
||
|Name=EM FHNode |
|Name=EM FHNode |
||
Line 11: | Line 14: | ||
The FHNode tool inserts a FastHenry node object. |
The FHNode tool inserts a FastHenry node object. |
||
</translate> |
|||
[[Image:EM_FHNode_Example.png]] |
[[Image:EM_FHNode_Example.png]] |
||
<translate> |
|||
{{Caption|FastHenry FHNode}} |
{{Caption|FastHenry FHNode}} |
||
Line 45: | Line 49: | ||
The FHNode object can be used in [[macros]] and from the [[Python]] console by using the following function: |
The FHNode object can be used in [[macros]] and from the [[Python]] console by using the following function: |
||
</translate> |
|||
{{Code|code= |
{{Code|code= |
||
node = makeFHNode(baseobj=None, X=0.0, Y=0.0, Z=0.0, color=None, size=None, name='FHNode') |
node = makeFHNode(baseobj=None, X=0.0, Y=0.0, Z=0.0, color=None, size=None, name='FHNode') |
||
}} |
}} |
||
<translate> |
|||
* Creates a {{incode|FHNode}} object. |
* Creates a {{incode|FHNode}} object. |
||
* {{incode|baseobj}} is the Draft Point object whose position can be used as base for the FHNode. It has priority over {{incode|X}}, {{incode|Y}}, {{incode|Z}}. If no {{incode|baseobj}} is given, {{incode|X}},{{incode|Y}},{{incode|Z}} are used as coordinates. |
* {{incode|baseobj}} is the Draft Point object whose position can be used as base for the FHNode. It has priority over {{incode|X}}, {{incode|Y}}, {{incode|Z}}. If no {{incode|baseobj}} is given, {{incode|X}},{{incode|Y}},{{incode|Z}} are used as coordinates. |
||
Line 62: | Line 66: | ||
Additionally, the _FHNode class exposes these methods. The _FHNode class can be accessed through the FHNode object Proxy (e.g. fhnode.Proxy). |
Additionally, the _FHNode class exposes these methods. The _FHNode class can be accessed through the FHNode object Proxy (e.g. fhnode.Proxy). |
||
</translate> |
|||
{{Code|code= |
{{Code|code= |
||
pos = getAbsCoord() |
pos = getAbsCoord() |
||
}} |
}} |
||
<translate> |
|||
* Get a {{incode|FreeCAD.Vector}} containing the node coordinates in the absolute reference system |
* Get a {{incode|FreeCAD.Vector}} containing the node coordinates in the absolute reference system |
||
</translate> |
|||
{{Code|code= |
{{Code|code= |
||
pos = getRelCoord() |
pos = getRelCoord() |
||
}} |
}} |
||
<translate> |
|||
* Get a {{incode|FreeCAD.Vector}} containing the node coordinates relative to the FHNode Placement |
* Get a {{incode|FreeCAD.Vector}} containing the node coordinates relative to the FHNode Placement |
||
</translate> |
|||
{{Code|code= |
{{Code|code= |
||
pos = setRelCoord(rel_coord, placement=None) |
pos = setRelCoord(rel_coord, placement=None) |
||
}} |
}} |
||
<translate> |
|||
* Sets the node position relative to the placement |
* Sets the node position relative to the placement |
||
* {{incode|rel_coord}} is a FreeCAD.Vector containing the node coordinates relative to the FHNode Placement |
* {{incode|rel_coord}} is a FreeCAD.Vector containing the node coordinates relative to the FHNode Placement |
||
* {{incode|placement}} is a new FHNode placement. If {{incode|None}}, the placement is not changed |
* {{incode|placement}} is a new FHNode placement. If {{incode|None}}, the placement is not changed |
||
</translate> |
|||
{{Code|code= |
{{Code|code= |
||
pos = setAbsCoord(abs_coord, placement=None) |
pos = setAbsCoord(abs_coord, placement=None) |
||
}} |
}} |
||
<translate> |
|||
* Sets the absolute node position, considering the object placement, and in case forcing a new placement |
* Sets the absolute node position, considering the object placement, and in case forcing a new placement |
||
* {{incode|abs_coord}} is a FreeCAD.Vector containing the node coordinates in the absolute reference system |
* {{incode|abs_coord}} is a FreeCAD.Vector containing the node coordinates in the absolute reference system |
||
Line 93: | Line 97: | ||
Example: |
Example: |
||
</translate> |
|||
{{Code|code= |
{{Code|code= |
||
import FreeCAD, EM |
import FreeCAD, EM |
||
Line 101: | Line 105: | ||
{{clear}} |
{{clear}} |
||
<translate> |
|||
[[Category:User Documentation]] |
[[Category:User Documentation]] |
||
[[Category:Addons]] |
[[Category:Addons]] |
||
[[Category:External Workbenches]] |
[[Category:External Workbenches]] |
||
</translate> |
Revision as of 15:56, 3 February 2019
EM FHNode |
Menu location |
---|
EM → FHNode |
Workbenches |
EM |
Default shortcut |
E N |
Introduced in version |
0.17 (Add-on) |
See also |
EM FHSegment, EM FHPath, EM FHPlane, EM FHPlane Add/Remove Node/Hole, EM FHEquiv, EM FHPort |
Description
The FHNode tool inserts a FastHenry node object.
FastHenry FHNode
How to use
The FHNode object can be based on the position of a Draft Point object, or you can select the 3D location of the FHNode.
- Press the EM FHNode button, or press E then N keys.
- Click a point on the 3D view, or type a coordinate and press the add point button.
Alternatively, you can also:
- Select one or multiple Draft Point object(s)
- Press the EM FHNode button, or press E then N keys. As many FHNodes will be created as the Draft Point objects, at the same coordinates of the Draft Points.
Options
- To enter coordinates manually, simply enter the numbers, then press Enter between each X, Y and Z component. You can press the add point button when you have the desired values to insert the point.
- Click the checkbox to toggle continue mode. If continue mode is on, the FHNode tool will restart after you place a node, allowing you to place another one without pressing the tool button again.
- Press Esc or the Close button to abort the current command.
Properties
- DataX: the X coordinate of the node
- DataY: the Y coordinate of the node
- DataZ: the Z coordinate of the node
Scripting
See also: FreeCAD Scripting Basics.
The FHNode object can be used in macros and from the Python console by using the following function:
node = makeFHNode(baseobj=None, X=0.0, Y=0.0, Z=0.0, color=None, size=None, name='FHNode')
- Creates a
FHNode
object. baseobj
is the Draft Point object whose position can be used as base for the FHNode. It has priority overX
,Y
,Z
. If nobaseobj
is given,X
,Y
,Z
are used as coordinates.X
x coordinate of the node, in absolute coordinate system.Y
y coordinate of the node, in absolute coordinate system.Z
z coordinate of the node, in absolute coordinate system.color
is the node color, e.g. a tuple (1.0,0.0,0.0). Defaults toEMFHNODE_DEF_NODECOLOR
.size
is the node size. Defaults toEMFHNODE_DEF_NODESIZE
.name
is the name of the object
The placement of the FHNode can be changed by modifying its Placement
property, or changing the X
,Y
,Z
properties individually. Changing X
,Y
,Z
modifies the node position in the relative coordinate system of the Placement
.
Additionally, the _FHNode class exposes these methods. The _FHNode class can be accessed through the FHNode object Proxy (e.g. fhnode.Proxy).
pos = getAbsCoord()
- Get a
FreeCAD.Vector
containing the node coordinates in the absolute reference system
pos = getRelCoord()
- Get a
FreeCAD.Vector
containing the node coordinates relative to the FHNode Placement
pos = setRelCoord(rel_coord, placement=None)
- Sets the node position relative to the placement
rel_coord
is a FreeCAD.Vector containing the node coordinates relative to the FHNode Placementplacement
is a new FHNode placement. IfNone
, the placement is not changed
pos = setAbsCoord(abs_coord, placement=None)
- Sets the absolute node position, considering the object placement, and in case forcing a new placement
abs_coord
is a FreeCAD.Vector containing the node coordinates in the absolute reference systemplacement
is a new FHNode placement. IfNone
, the placement is not changed
Example:
import FreeCAD, EM
fhnode = EM.makeFHNode(X=1.0,Y=2.0,Z=0.0)