HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SIM_ConstraintNetwork::GenericAnchorAccessor Class Reference

#include <SIM_ConstraintNetworkIterator.h>

+ Inheritance diagram for SIM_ConstraintNetwork::GenericAnchorAccessor:

Public Member Functions

 GenericAnchorAccessor (bool need_object_centroid=false)
 
 UT_NON_COPYABLE (GenericAnchorAccessor)
 
bool init (const GU_Detail &gdp, const UT_Matrix4D &xform, const SIM_Data &container, const SIM_Data &data_root, const SIM_Time &t) override
 Initialize with the constraint network's GU_Detail and transform. More...
 
void advance (GA_Offset pt_a, GA_Offset pt_b)
 
GA_Offset getAnchorPointOffset (bool anchor1) const
 
GA_Index getAnchorPointIndex (bool anchor1) const
 
UT_Vector3 getAnchorPosition (bool anchor1) const
 
UT_Vector3 getAnchorVelocity (bool anchor1) const
 
PositionType getAnchorPositionType (bool anchor1) const
 
UT_Quaternion getAnchorOrientation (bool anchor1) const
 
UT_Vector3 getAnchorAngularVelocity (bool anchor1) const
 
bool getObjectCentroid (bool anchor1, UT_Vector3 &pos) const
 
int getAnchorNumConDOFs (bool anchor1) const
 
UT_Vector3 getAnchorDOFVector (bool anchor1) const
 
const UT_StringHoldergetAnchorName (bool anchor1) const
 
int getObjectId (bool anchor1) const
 
const SIM_ObjectgetObject (bool anchor1) const
 
- Public Member Functions inherited from SIM_ConstraintNetwork::AnchorAccessor
 AnchorAccessor ()=default
 
virtual ~AnchorAccessor ()=default
 
 UT_NON_COPYABLE (AnchorAccessor)
 

Detailed Description

Generic implementation of AnchorAccessor, which builds its own cache of the objects (transforms, etc) referenced by the anchor points.

Definition at line 451 of file SIM_ConstraintNetworkIterator.h.

Constructor & Destructor Documentation

SIM_ConstraintNetwork::GenericAnchorAccessor::GenericAnchorAccessor ( bool  need_object_centroid = false)

Member Function Documentation

void SIM_ConstraintNetwork::GenericAnchorAccessor::advance ( GA_Offset  pt_a,
GA_Offset  pt_b 
)
inline

Definition at line 463 of file SIM_ConstraintNetworkIterator.h.

UT_Vector3 SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorAngularVelocity ( bool  anchor1) const
UT_Vector3 SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorDOFVector ( bool  anchor1) const
inline

Definition at line 248 of file SIM_ConstraintNetworkIteratorImpl.h.

const UT_StringHolder & SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorName ( bool  anchor1) const
inline

Definition at line 256 of file SIM_ConstraintNetworkIteratorImpl.h.

int SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorNumConDOFs ( bool  anchor1) const
inline

Definition at line 241 of file SIM_ConstraintNetworkIteratorImpl.h.

UT_Quaternion SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorOrientation ( bool  anchor1) const
GA_Index SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorPointIndex ( bool  anchor1) const
inline

Gets the point index of the point referred to by the anchor in a similar way to getAnchorPointOffset.

Definition at line 231 of file SIM_ConstraintNetworkIteratorImpl.h.

GA_Offset SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorPointOffset ( bool  anchor1) const

Get the point offset of the point referred to by the anchor. Either the anchor directly references a point on an object, or it references a vertex on an object which has an associated point. Returns GA_INVALID_OFFSET in the case where the anchor doesnt reference a point. If 'anchor_pid' or 'anchor_vid' is present, then return the first point (or vertex) with same id as on the constraint.

UT_Vector3 SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorPosition ( bool  anchor1) const
PositionType SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorPositionType ( bool  anchor1) const
inline

Returns the type of position described by the anchor (e.g. relative offset).

Definition at line 294 of file SIM_ConstraintNetworkIteratorImpl.h.

UT_Vector3 SIM_ConstraintNetwork::GenericAnchorAccessor::getAnchorVelocity ( bool  anchor1) const
const SIM_Object* SIM_ConstraintNetwork::GenericAnchorAccessor::getObject ( bool  anchor1) const
bool SIM_ConstraintNetwork::GenericAnchorAccessor::getObjectCentroid ( bool  anchor1,
UT_Vector3 pos 
) const
int SIM_ConstraintNetwork::GenericAnchorAccessor::getObjectId ( bool  anchor1) const

Returns the id of the object named by the anchor. Returns -1 of the anchor does not name an object.

bool SIM_ConstraintNetwork::GenericAnchorAccessor::init ( const GU_Detail gdp,
const UT_Matrix4D xform,
const SIM_Data container,
const SIM_Data data_root,
const SIM_Time t 
)
overridevirtual

Initialize with the constraint network's GU_Detail and transform.

Implements SIM_ConstraintNetwork::AnchorAccessor.

SIM_ConstraintNetwork::GenericAnchorAccessor::UT_NON_COPYABLE ( GenericAnchorAccessor  )

The documentation for this class was generated from the following files: