EM FHPath

Description
The FHPath tool inserts a FHPath object, that is a set of FastHenry segments along a path.



How to use
The FHPath object can be based on any shape containing edges, but the FHPath object is designed to work best with the support of a sketch or a wire.


 * 1) Select one or multiple object(s) containing edges.
 * 2) Press the  button, or press  then  keys. As many FHPath objects will be created as the selected objects.

Remarks:

 * The FHPath will create a set of FHNodes and a set of FastHenry segments following the path formed by the edges.


 * Curved edges will be discretized according to the FHPath properties settings.


 * If the resulting segments are too short with respect to the cross-section, a warning will be raised in the Report window of FreeCAD, as this can cause issues in FastHenry simulations.


 * The default orientation of the FHPath segment cross-sections is the FastHenry default one: the vector along the width is parallel to the XY plane; if the width is along the Z direction, the width vector is aligned to the X axis. You can change the orientation of the cross-section of the first segment of the FHPath specifying the vector property. This is done in the base Placement coordinate system, i.e. changes in the Placement preserve the relative cross-connection orientation without changing . Subsequent segments are automatically oriented applying the rotations corresponding to the angle between each pair of segments in turn.


 * A FHPath will have at least one starting FHNode and one ending FHNode, if there is at least one edge in the base object. The start FHNode object and the ending FHNode will be kept the same if you change the path, by including or removing edges from the base object, or changing the FHPath discretization. Therefore, when changing the FHPath, you don't need to worry about the connections to other objects already done using the FHPath endpoints, e.g. if you used the endpoints as starting point for FHSegment objects, FHPort objects, FHEquiv objects, or connections to a FHPlane object. In particular, when you modify a FHPath causing the creation of more segments, the already existing FHNode object list will be simply extended, and the old FHNode positions will be re-arranged. If instead you modify a FHPath causing the removal of segments, the FHNode object list will be shortened and the excess FHNode objects removed from the Document, unless any of the FHNode had been already used within any other object (e.g. if you used an intermediate node for creating a FHSegment). In this case the FHNode will be kept, but outside the FHPath object, and the connection will be possibly dangling; it is up to the user to guarantee the correcness of the connections.


 * You cannot freely move the FHPath object or its FHNodes. To change the position of the FHPath, move the underlying base object (the base object is hidden by default, you can show it again by selecting the object in the tree and pressing.


 * Curved edges will be discretized into a set of segments according to the FHPath property.

Properties

 * : The base object this component is built upon
 * : The list of FHNode along the path. Not for direct user modification.
 * : the FHPath segments width ('w' segment parameter in FastHenry)
 * : the FHPath segments height ('h' segment parameter in FastHenry)
 * : the max number of segments into which curved edges will be discretized
 * : the FHPath segments conductivity ('sigma' segment parameter in FastHenry)
 * : the cross-section direction along the width for the first segment of the FHPath ('wx', 'wy', 'wz' segment parameter in FastHenry)
 * : the number of filaments in the height direction ('nhinc' segment parameter in FastHenry)
 * : the number of filaments in the width direction ('nwinc' segment parameter in FastHenry)
 * : the ratio of adjacent filaments in the height direction ('rh' segment parameter in FastHenry)
 * : the ratio of adjacent filaments in the width direction ('rw' segment parameter in FastHenry)

Scripting
FreeCAD Scripting Basics.

The FHPath object can be used in macros and from the Python console by using the following function:


 * Creates a object.
 * is the Draft Line object that can be used as base for the FHSegment. If and  are specified, they have priority over the, and  is ignored.
 * is the segment starting node FHNode object.
 * is the segment ending node FHNode object.
 * is the segment width. Defaults to.
 * is the segment height. Defaults to.
 * is the name of the object

def : ''' Creates a FastHenry Path (a set connected 'E' FastHenry statements) 'baseobj' is the object on which the path is based. If no 'baseobj' is given, the user must assign a base object later on, to be able to use this object. The 'baseobj' is mandatory, and can be any shape containing edges, even if the Path is designed to work best with the support of           a sketch or a wire. 'name' is the name of the object Example: path = makeFHPath(myWire)

Example: