Class FreeformHolder
Represents a freeform tool holder with customizable geometry.
public class FreeformHolder : IHolder, ITopoDisplayee, IGetAsmb, IGetTopoIndex, IAnchoredDisplayee, IGetRootAnchor, IDisplayee, IExpandToBox3d, IGetAnchoredDisplayeeList, IGetBuckleAnchorList, IMakeXmlSource, IAbstractNote, IGetFletchBuckle, IDuplicate, INameNote, IGetSolid, IDisposable, IAnchoredCollidableLeaf, IAnchoredCollidableNode, IAnchoredCollidableBased, ICollidable
- Inheritance
-
FreeformHolder
- Implements
- Inherited Members
- Extension Methods
Constructors
FreeformHolder()
Ctor.
public FreeformHolder()
FreeformHolder(IGetStl)
Initializes a new instance of the FreeformHolder class from STL geometry.
public FreeformHolder(IGetStl rawGeom)
Parameters
rawGeom
IGetStlThe STL geometry provider.
FreeformHolder(IGetStl, ITransformer)
Initializes a new instance of the FreeformHolder class from STL geometry with a transformer.
public FreeformHolder(IGetStl rawGeom, ITransformer transformer)
Parameters
rawGeom
IGetStlThe STL geometry provider.
transformer
ITransformerThe geometry transformer.
FreeformHolder(XElement, string, string)
Initializes a new instance of the FreeformHolder class from XML data.
public FreeformHolder(XElement src, string baseDirectory, string relFile)
Parameters
src
XElementThe XML element containing holder data
baseDirectory
stringBase directory path for resolving relative paths
relFile
stringRelative file path
Fields
XName
XML Name.
public static string XName
Field Value
Properties
AbstractNote
Gets a descriptive note or abstract about the object.
public string AbstractNote { get; }
Property Value
CollidableName
Gets the name of the collidable object.
public string CollidableName { get; }
Property Value
CollisionFlag
Gets or sets the collision flag.
public CollisionFlag CollisionFlag { get; set; }
Property Value
GeomAnchor
Gets the geometry anchor point
public Anchor GeomAnchor { get; }
Property Value
GeomToBaseBranch
Gets the branch from geometry to base
public Branch GeomToBaseBranch { get; }
Property Value
GeomToBaseTransformer
Gets or sets the transformer from geometry to base
public ITransformer GeomToBaseTransformer { get; set; }
Property Value
GeomToTailBranch
Gets the branch from geometry to tail
public Branch GeomToTailBranch { get; }
Property Value
GeomToTailTransformer
Gets or sets the transformer from geometry to tail
public ITransformer GeomToTailTransformer { get; set; }
Property Value
GeomTransformer
Gets or sets the geometry transformer.
public ITransformer GeomTransformer { get; set; }
Property Value
Name
Gets or sets the name of the object.
public string Name { get; set; }
Property Value
Note
Gets or sets the descriptive note for the object.
public string Note { get; set; }
Property Value
RawGeom
Gets or sets the raw geometry
public IGetStl RawGeom { get; set; }
Property Value
TransformationGeom
Gets the transformation geometry. Internal Use Only.
public TransformationGeom TransformationGeom { get; }
Property Value
Remarks
Call UpdateByRawGeomOrTransformer() to keep state of Hi.NcMech.Holders.FreeformHolder.Solid if content modified.
Methods
Display(Bind)
Display function called in DispEngine rendering loop.
public void Display(Bind bind)
Parameters
bind
BindBind with DispEngine. See Bind.
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()
Dispose(bool)
protected virtual void Dispose(bool disposing)
Parameters
disposing
bool
Duplicate(params object[])
Creates a deep copy of the object, excluding any source file references.
public object Duplicate(params object[] res)
Parameters
res
object[]Optional parameters that may be needed during the duplication process
Returns
- object
A new instance that is a deep copy of the original object
ExpandToBox3d(Box3d)
Expands the destination box. This function is usually used to compute the bounding box of elements.
public void ExpandToBox3d(Box3d dst)
Parameters
dst
Box3dDestination box
GetAnchoredCollidableNode()
Gets the anchored collidable node associated with this object.
public IAnchoredCollidableNode GetAnchoredCollidableNode()
Returns
- IAnchoredCollidableNode
The anchored collidable node.
GetAnchoredDisplayeeList()
Gets a list of anchored displayable objects.
public List<IAnchoredDisplayee> GetAnchoredDisplayeeList()
Returns
- List<IAnchoredDisplayee>
A list of IAnchoredDisplayee objects
GetAsmb()
Gets the key asmb.
public Asmb GetAsmb()
Returns
- Asmb
The key asmb.
GetBuckleAnchorList()
Get buckle anchors.
public List<Anchor> GetBuckleAnchorList()
Returns
GetCollidableAnchor()
Gets the anchor associated with this collidable leaf.
public Anchor GetCollidableAnchor()
Returns
- Anchor
The anchor for this collidable leaf.
GetCollidee()
Get ICollidee.
public ICollidee GetCollidee()
Returns
GetFletchBuckle()
Get fletch buckle anchor. the anchor that generally connect to fixed part such as ground and triggering(motor)-side.
public Anchor GetFletchBuckle()
Returns
- Anchor
buckle anchor
GetRootAnchor()
Get root anchor.
public Anchor GetRootAnchor()
Returns
- Anchor
root anchor.
GetSolid()
Gets the solid geometry object.
public Solid GetSolid()
Returns
- Solid
The solid geometry object.
GetTailBuckle()
Tool Buckle. Generally locate on free-end-side.
public Anchor GetTailBuckle()
Returns
MakeXmlSource(string, string)
Creates an XML representation of the object. This method may also generate additional resources such as related files.
public XElement MakeXmlSource(string baseDirectory, string relFile)
Parameters
baseDirectory
stringThe base directory for resolving relative paths
relFile
stringThe relative file path for the XML source
Returns
- XElement
An XML element representing the object's state
UpdateByRawGeomOrTransformer()
public void UpdateByRawGeomOrTransformer()