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

#include <HUSD_Xform.h>

Public Member Functions

 HUSD_Xform (HUSD_AutoWriteLock &dest)
 
 ~HUSD_Xform ()
 
bool applyXforms (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, const UT_Matrix4D &xform, const HUSD_TimeCode &timecode, HUSD_XformStyle xform_style, UT_Map< HUSD_Path, UT_StringHolder > *suffix_map=nullptr) const
 
bool applyXforms (const HUSD_XformEntryMap &xform_map, const UT_StringRef &name_suffix, HUSD_XformStyle xform_style, UT_Map< HUSD_Path, UT_StringHolder > *suffix_map=nullptr) const
 
bool applyLookAt (const HUSD_FindPrims &findprims, const UT_StringRef &lookatprim, const UT_Vector3D &lookatpos, const UT_Vector3D &upvec, fpreal twist, const HUSD_TimeCode &timecode, UT_Map< HUSD_Path, UT_StringHolder > *suffix_map=nullptr) const
 
bool setXformOrder (const HUSD_FindPrims &findprims, const UT_StringArray &order) const
 
bool clearXformOrder (const HUSD_FindPrims &findprims) const
 
bool setXformReset (const HUSD_FindPrims &findprims, bool reset) const
 
void setWarnBadPrimTypes (bool warn_bad_prim_types)
 
bool warnBadPrimTypes () const
 
void setCheckEditableFlag (bool check_editable_flag)
 
bool checkEditableFlag () const
 
void setClearExistingFlag (bool clear_existing_flag)
 
bool clearExistingFlag () const
 
bool getIsTimeVarying () const
 
bool addXform (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, const UT_Matrix4D &xform, const HUSD_TimeCode &timecode, bool is_timecode_strict=true) const
 
bool addTranslate (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, const UT_Vector3D &t, const HUSD_TimeCode &timecode, bool is_timecode_strict=true) const
 
bool addRotate (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, HUSD_XformAxisOrder xyz_order, const UT_Vector3D &r, const HUSD_TimeCode &timecode, bool is_timecode_strict=true) const
 
bool addRotate (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, HUSD_XformAxis xyz_axis, double angle, const HUSD_TimeCode &timecode, bool is_timecode_strict=true) const
 
bool addScale (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, const UT_Vector3D &s, const HUSD_TimeCode &timecode, bool is_timecode_strict=true) const
 
bool addOrient (const HUSD_FindPrims &findprims, const UT_StringRef &name_suffix, const UT_QuaternionD &o, const HUSD_TimeCode &timecode, bool is_timecode_strict=true) const
 
bool addToXformOrder (const HUSD_FindPrims &findprims, const UT_StringRef &full_name) const
 
bool addInverseToXformOrder (const HUSD_FindPrims &findprims, const UT_StringRef &full_name) const
 

Detailed Description

Definition at line 54 of file HUSD_Xform.h.

Constructor & Destructor Documentation

HUSD_Xform::HUSD_Xform ( HUSD_AutoWriteLock dest)
HUSD_Xform::~HUSD_Xform ( )

Member Function Documentation

bool HUSD_Xform::addInverseToXformOrder ( const HUSD_FindPrims findprims,
const UT_StringRef full_name 
) const

Appends the given transform to the given primitives. The full_name is the transform operation full name, which is equivalent to the full attribute name and the entry in the transform order string array attribute. See HUSD_Info::getXformName().

bool HUSD_Xform::addOrient ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
const UT_QuaternionD o,
const HUSD_TimeCode timecode,
bool  is_timecode_strict = true 
) const

Add a given transform operation to the given primitives. The name_suffix is used to construct the transform operation full name. The transform name is equivalent to the full attribute name and the the entry in the transform order string array attribute.

When is_timecode_strict is true, the op attriubte is set at a given time code, otherwise the given time code, if it's the default value, may be cast to a specific frame time code, if the attribute has some time samples already.

See HUSD_Info::getXformName().

bool HUSD_Xform::addRotate ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
HUSD_XformAxisOrder  xyz_order,
const UT_Vector3D r,
const HUSD_TimeCode timecode,
bool  is_timecode_strict = true 
) const

Add a given transform operation to the given primitives. The name_suffix is used to construct the transform operation full name. The transform name is equivalent to the full attribute name and the the entry in the transform order string array attribute.

When is_timecode_strict is true, the op attriubte is set at a given time code, otherwise the given time code, if it's the default value, may be cast to a specific frame time code, if the attribute has some time samples already.

See HUSD_Info::getXformName().

bool HUSD_Xform::addRotate ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
HUSD_XformAxis  xyz_axis,
double  angle,
const HUSD_TimeCode timecode,
bool  is_timecode_strict = true 
) const

Add a given transform operation to the given primitives. The name_suffix is used to construct the transform operation full name. The transform name is equivalent to the full attribute name and the the entry in the transform order string array attribute.

When is_timecode_strict is true, the op attriubte is set at a given time code, otherwise the given time code, if it's the default value, may be cast to a specific frame time code, if the attribute has some time samples already.

See HUSD_Info::getXformName().

bool HUSD_Xform::addScale ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
const UT_Vector3D s,
const HUSD_TimeCode timecode,
bool  is_timecode_strict = true 
) const

Add a given transform operation to the given primitives. The name_suffix is used to construct the transform operation full name. The transform name is equivalent to the full attribute name and the the entry in the transform order string array attribute.

When is_timecode_strict is true, the op attriubte is set at a given time code, otherwise the given time code, if it's the default value, may be cast to a specific frame time code, if the attribute has some time samples already.

See HUSD_Info::getXformName().

bool HUSD_Xform::addToXformOrder ( const HUSD_FindPrims findprims,
const UT_StringRef full_name 
) const

Appends the given transform to the given primitives. The full_name is the transform operation full name, which is equivalent to the full attribute name and the entry in the transform order string array attribute. See HUSD_Info::getXformName().

bool HUSD_Xform::addTranslate ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
const UT_Vector3D t,
const HUSD_TimeCode timecode,
bool  is_timecode_strict = true 
) const

Add a given transform operation to the given primitives. The name_suffix is used to construct the transform operation full name. The transform name is equivalent to the full attribute name and the the entry in the transform order string array attribute.

When is_timecode_strict is true, the op attriubte is set at a given time code, otherwise the given time code, if it's the default value, may be cast to a specific frame time code, if the attribute has some time samples already.

See HUSD_Info::getXformName().

bool HUSD_Xform::addXform ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
const UT_Matrix4D xform,
const HUSD_TimeCode timecode,
bool  is_timecode_strict = true 
) const

Add a given transform operation to the given primitives. The name_suffix is used to construct the transform operation full name. The transform name is equivalent to the full attribute name and the the entry in the transform order string array attribute.

When is_timecode_strict is true, the op attriubte is set at a given time code, otherwise the given time code, if it's the default value, may be cast to a specific frame time code, if the attribute has some time samples already.

See HUSD_Info::getXformName().

bool HUSD_Xform::applyLookAt ( const HUSD_FindPrims findprims,
const UT_StringRef lookatprim,
const UT_Vector3D lookatpos,
const UT_Vector3D upvec,
fpreal  twist,
const HUSD_TimeCode timecode,
UT_Map< HUSD_Path, UT_StringHolder > *  suffix_map = nullptr 
) const
bool HUSD_Xform::applyXforms ( const HUSD_FindPrims findprims,
const UT_StringRef name_suffix,
const UT_Matrix4D xform,
const HUSD_TimeCode timecode,
HUSD_XformStyle  xform_style,
UT_Map< HUSD_Path, UT_StringHolder > *  suffix_map = nullptr 
) const
bool HUSD_Xform::applyXforms ( const HUSD_XformEntryMap xform_map,
const UT_StringRef name_suffix,
HUSD_XformStyle  xform_style,
UT_Map< HUSD_Path, UT_StringHolder > *  suffix_map = nullptr 
) const
bool HUSD_Xform::checkEditableFlag ( ) const
inline

Definition at line 169 of file HUSD_Xform.h.

bool HUSD_Xform::clearExistingFlag ( ) const
inline

Definition at line 177 of file HUSD_Xform.h.

bool HUSD_Xform::clearXformOrder ( const HUSD_FindPrims findprims) const

Clears the primitive's xform order string array attribute, effectively earasing the local transform.

bool HUSD_Xform::getIsTimeVarying ( ) const

Returns true if the transform that was set on primitives may be time-varying.

void HUSD_Xform::setCheckEditableFlag ( bool  check_editable_flag)
inline

Control whether or not this operation should check for the "houdini:editable" attribute on primitives before transforming them. Warnings are added for prims with this flag set to false.

Definition at line 167 of file HUSD_Xform.h.

void HUSD_Xform::setClearExistingFlag ( bool  clear_existing_flag)
inline

Control whether or not this operation should check for the "houdini:editable" attribute on primitives before transforming them. Warnings are added for prims with this flag set to false.

Definition at line 175 of file HUSD_Xform.h.

void HUSD_Xform::setWarnBadPrimTypes ( bool  warn_bad_prim_types)
inline

Control whether or not warnings should be added if this object is told to transform a prim that is not xformable. Defaults to true.

Definition at line 159 of file HUSD_Xform.h.

bool HUSD_Xform::setXformOrder ( const HUSD_FindPrims findprims,
const UT_StringArray order 
) const

Sets the transform order attribute to the given sequence of transform operations. The contains transforms full names (see above).

bool HUSD_Xform::setXformReset ( const HUSD_FindPrims findprims,
bool  reset 
) const

Sets the flag to ignore primitive parent's transform, when calculating world transform of this primitive. Ie, if the reset flag is set, the primitive does not inherit the transformation from the parent.

bool HUSD_Xform::warnBadPrimTypes ( ) const
inline

Definition at line 161 of file HUSD_Xform.h.


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