|
HDK
|
Contains a list of agents which share the same rig. More...
#include <GT_GEOPackedAgent.h>
Inheritance diagram for GT_GEOPackedAgent:Classes | |
| class | RigElement |
Public Member Functions | |
| GT_GEOPackedAgent (const GU_ConstDetailHandle &detail) | |
| GT_GEOPackedAgent (const GT_GEOPackedAgent &src) | |
| ~GT_GEOPackedAgent () override | |
| int | getNumAgents () const |
| Main interface. More... | |
| bool | buildRig (UT_IntArray &bone_transform_indices, UT_ValArray< UT_QuaternionF > &bone_quats, UT_BoundingBox &rig_worst_case_bounds) const |
| bool | getBoundingBox (int agent_idx, UT_BoundingBox &box) const |
| GT_DataArrayHandle | getPrimIDs () const |
| Primitive IDs (GA_Index) of all agents in the agent list. More... | |
| GT_DataArrayHandle | getPointIDs () const |
| Point IDs (GA_Index) of all agents in the agent list. More... | |
| GT_DataArrayHandle | getPointPos () const |
| Point positions of all agents' points. More... | |
| GT_DataArrayHandle | fetchAttributeData (const UT_StringRef &attrib_name, GT_Owner &attrib_list_owner) const |
| Fetch a data array for the attribute named 'attrib_name'. More... | |
| bool | hasDataArray (const UT_StringRef &name, GT_Owner owner_scope[], int num_owners, GT_Storage *storage=NULL, GT_Size *tuple_size=NULL) const override |
| bool | getTransform (int idx, UT_Matrix4D &mat) const |
| local transform for agent at idx. Returns false if no transform present More... | |
| bool | getTransform (int idx, UT_Matrix4F &mat) const |
| local transform for agent at idx. More... | |
| GT_AgentTransformsHandle | agentTransforms () const |
| computed main transforms for all visible agents More... | |
| GT_AgentRigTransformsHandle | rigTransforms () const |
| computed rig transforms for all visible agents More... | |
| GT_AgentIndexMapHandle | indexMap () const |
| map GA index locations of agent prims to a flat list used by this rig More... | |
| GT_AgentSelectionHandle | selection () const |
| list of selected agent primitives More... | |
| GT_AgentIDHandle | primIDs () const |
| list of agent primitive ids. More... | |
| GT_AgentColorsHandle | colors () const |
| List of agent colors;. More... | |
| GT_AgentVisibilityHandle | visibility () const |
| Visibility information for agents. More... | |
| const GT_GEOOffsetList & | pointOffsets () const |
| const GT_GEOOffsetList & | primOffsets () const |
| const GT_GEOOffsetList & | vtxOffsets () const |
| void | init () |
| const char * | className () const override |
| int | getPrimitiveType () const override |
| int | getMotionSegments () const override |
| int64 | getMemoryUsage () const override |
| GT_PrimitiveHandle | doSoftCopy () const override |
| void | enlargeBounds (UT_BoundingBox boxes[], int nsegments) const override |
| bool | refine (GT_Refine &refiner, const GT_RefineParms *parms=nullptr) const override |
| void | append (const GU_PrimPacked *prim) |
| const GU_PrimPacked * | getPackedAgent (int agent_idx) const |
| const GU_ConstDetailHandle & | getDetail () const |
| void | computeTransforms (bool initial_pass) const |
| void | bumpTransformSerial () const |
| int | getTransformSerial () const |
| bool | updateGeoPrim (const GU_ConstDetailHandle &dtl, const GT_RefineParms &parms) override |
| update any cached data for geometry and its attributes More... | |
Public Member Functions inherited from GT_Primitive | |
| GT_Primitive () | |
| GT_Primitive (const GT_Primitive &src) | |
| virtual | ~GT_Primitive () |
| virtual bool | getUniqueID (int64 &id) const |
| virtual void | enlargeRenderBounds (UT_BoundingBox boxes[], int nsegments) const |
| virtual void | getVelocityRange (UT_Vector3 &min, UT_Vector3 &max, const UT_StringRef &attribute_name=GA_Names::v) const |
| const GT_TransformHandle & | getPrimitiveTransform () const |
| void | setPrimitiveTransform (const GT_TransformHandle &x) |
| Set the transform for a the primitive. More... | |
| GT_PrimitiveHandle | clone () const |
| void | setStaticGeometry (bool static_geo) |
| Return true if the primitive represents geometry at frame 'fr'. More... | |
| bool | isStaticGeometry () const |
| bool | isFrameInfoAvailable () const |
| bool | getDataIdHash (int64 &hash, int segment=0, bool cache_data_id=false) const |
| virtual bool | getTopologyVersion (int64 &version) const |
| Returns the topology version for the primitive. More... | |
| GT_DataArrayHandle | findAttribute (const UT_StringRef &name, GT_Owner &owner, int segment) const |
| void | dumpAttributeLists (const char *label, bool data_too) const |
| print out all attribute lists More... | |
| void | dumpPrimitive () const |
| bool | saveAttributeLists (UT_JSONWriter &w) const |
| virtual bool | save (UT_JSONWriter &w) const |
| virtual const GT_ViewportRefineOptions & | viewportRefineOptions () const |
| GT_PrimitiveHandle | harden () const |
| GT_PrimitiveHandle | copyTransformed (const GT_TransformHandle &x, bool force=false) const |
| void | refineCopyTransformFrom (const GT_Primitive &src) |
| GT_PrimitiveHandle | attributeMerge (const GT_Primitive &src, const UT_StringMMPattern *vertex_pattern, const UT_StringMMPattern *point_pattern, const UT_StringMMPattern *uniform_pattern, const UT_StringMMPattern *detail_pattern) const |
| virtual GT_PrimitiveHandle | doHarden () const |
| virtual GT_PrimitiveHandle | doAttributeMerge (const GT_Primitive &src, const UT_StringMMPattern *vertex, const UT_StringMMPattern *point, const UT_StringMMPattern *uniform, const UT_StringMMPattern *detail) const |
| The virtual implementation of attribute merging. More... | |
| bool | enlargeWidth (UT_BoundingBox boxes[], int nsegments, fpreal defwidth=-1) const |
| virtual const GT_AttributeListHandle & | getPointAttributes () const |
| virtual const GT_AttributeListHandle & | getVertexAttributes () const |
| virtual const GT_AttributeListHandle & | getUniformAttributes () const |
| virtual const GT_AttributeListHandle & | getDetailAttributes () const |
| const GT_AttributeListHandle & | getAttributeList (GT_Owner owner) const |
| virtual const GT_DataArrayHandle & | getVertexList () const |
| virtual GT_DataArrayHandle | createPointNormals (int segment=0, const UT_StringRef &P=GA_Names::P, bool normalize=true, const fpreal32 *pntdata=NULL, GT_Storage store=GT_STORE_REAL32) const |
| virtual fpreal | computePerimeter (int seg=0) const |
| virtual fpreal | computeSurfaceArea (int seg=0) const |
| virtual fpreal | computeVolume (const UT_Vector3 &ref_P, int seg=0) const |
Public Member Functions inherited from UT_IntrusiveRefCounter< GT_Primitive > | |
| SYS_FORCE_INLINE | UT_IntrusiveRefCounter () noexcept |
| Default constructor: Sets counter to 0. More... | |
| SYS_FORCE_INLINE | UT_IntrusiveRefCounter (const UT_IntrusiveRefCounter &) noexcept |
| Copy constructor: Sets counter to 0. More... | |
| UT_IntrusiveRefCounter & | operator= (const UT_IntrusiveRefCounter &) noexcept |
| Assignment operator: Does not modify counter. More... | |
| SYS_FORCE_INLINE uint32 | use_count () const noexcept |
| Return current counter. More... | |
| SYS_FORCE_INLINE bool | conditionalAddRef () noexcept |
Contains a list of agents which share the same rig.
Definition at line 34 of file GT_GEOPackedAgent.h.
| GT_GEOPackedAgent::GT_GEOPackedAgent | ( | const GU_ConstDetailHandle & | detail | ) |
| GT_GEOPackedAgent::GT_GEOPackedAgent | ( | const GT_GEOPackedAgent & | src | ) |
|
override |
|
inline |
computed main transforms for all visible agents
Definition at line 102 of file GT_GEOPackedAgent.h.
| void GT_GEOPackedAgent::append | ( | const GU_PrimPacked * | prim | ) |
| bool GT_GEOPackedAgent::buildRig | ( | UT_IntArray & | bone_transform_indices, |
| UT_ValArray< UT_QuaternionF > & | bone_quats, | ||
| UT_BoundingBox & | rig_worst_case_bounds | ||
| ) | const |
Return a list of bones corresponding to all the ones used by deforming shapes. bone_transform_indices correspond to transforms in the rig and bone_quats are the directions for the bone (assuming a source orientation pointing in the -Z axis), and scaled to indicate the bone length.
|
inline |
Definition at line 159 of file GT_GEOPackedAgent.h.
|
inlineoverridevirtual |
Implements GT_Primitive.
Definition at line 132 of file GT_GEOPackedAgent.h.
|
inline |
List of agent colors;.
Definition at line 120 of file GT_GEOPackedAgent.h.
| void GT_GEOPackedAgent::computeTransforms | ( | bool | initial_pass | ) | const |
compute transform information for those agents that are visible. 'initial_pass' indicates a topology change where incremental updates cannot be done.
|
inlineoverridevirtual |
Create a copy of the primitive, referencing all the source data This can return a NULL pointer, but it would be better to implement it properly.
Implements GT_Primitive.
Definition at line 138 of file GT_GEOPackedAgent.h.
|
inlineoverridevirtual |
An array of bounding boxes is passed in. There is a bounding box for each segement. Each bounding box should be enlarged appropriately.
Implements GT_Primitive.
Definition at line 141 of file GT_GEOPackedAgent.h.
| GT_DataArrayHandle GT_GEOPackedAgent::fetchAttributeData | ( | const UT_StringRef & | attrib_name, |
| GT_Owner & | attrib_list_owner | ||
| ) | const |
Fetch a data array for the attribute named 'attrib_name'.
| bool GT_GEOPackedAgent::getBoundingBox | ( | int | agent_idx, |
| UT_BoundingBox & | box | ||
| ) | const |
Fetch bounding box of an agent, return false if bbox couldn't be computed.
|
inline |
Definition at line 152 of file GT_GEOPackedAgent.h.
|
inlineoverridevirtual |
Return an approximate memory usage. Since data may be shared, this will always be an over-estimation.
Implements GT_Primitive.
Definition at line 136 of file GT_GEOPackedAgent.h.
|
inlineoverridevirtual |
Return the number of motion segments defined on the geometry By default, this simply returns the number of segments on P.
Implements GT_Primitive.
Definition at line 135 of file GT_GEOPackedAgent.h.
|
inline |
Main interface.
Number of agents in this agent list
Definition at line 44 of file GT_GEOPackedAgent.h.
| const GU_PrimPacked* GT_GEOPackedAgent::getPackedAgent | ( | int | agent_idx | ) | const |
| GT_DataArrayHandle GT_GEOPackedAgent::getPointIDs | ( | ) | const |
Point IDs (GA_Index) of all agents in the agent list.
| GT_DataArrayHandle GT_GEOPackedAgent::getPointPos | ( | ) | const |
Point positions of all agents' points.
| GT_DataArrayHandle GT_GEOPackedAgent::getPrimIDs | ( | ) | const |
Primitive IDs (GA_Index) of all agents in the agent list.
|
inlineoverridevirtual |
Return the primitive type. By default this returns GT_PRIM_UNDEFINED,
Reimplemented from GT_Primitive.
Definition at line 133 of file GT_GEOPackedAgent.h.
| bool GT_GEOPackedAgent::getTransform | ( | int | idx, |
| UT_Matrix4D & | mat | ||
| ) | const |
local transform for agent at idx. Returns false if no transform present
| bool GT_GEOPackedAgent::getTransform | ( | int | idx, |
| UT_Matrix4F & | mat | ||
| ) | const |
local transform for agent at idx.
|
inline |
Definition at line 160 of file GT_GEOPackedAgent.h.
|
overridevirtual |
Returns true if a data array with 'name' is found in 'owner_scope', and optionally its storage and tuple_size.
Reimplemented from GT_Primitive.
|
inline |
map GA index locations of agent prims to a flat list used by this rig
Definition at line 110 of file GT_GEOPackedAgent.h.
| void GT_GEOPackedAgent::init | ( | ) |
|
inline |
Definition at line 125 of file GT_GEOPackedAgent.h.
|
inline |
list of agent primitive ids.
Definition at line 117 of file GT_GEOPackedAgent.h.
|
inline |
Definition at line 126 of file GT_GEOPackedAgent.h.
|
overridevirtual |
Refine to a collection of instanced primitives (for static shapes) and unique meshes (for deforming shapes).
Reimplemented from GT_Primitive.
|
inline |
computed rig transforms for all visible agents
Definition at line 106 of file GT_GEOPackedAgent.h.
|
inline |
list of selected agent primitives
Definition at line 114 of file GT_GEOPackedAgent.h.
|
overridevirtual |
update any cached data for geometry and its attributes
Reimplemented from GT_Primitive.
|
inline |
Visibility information for agents.
Definition at line 123 of file GT_GEOPackedAgent.h.
|
inline |
Definition at line 127 of file GT_GEOPackedAgent.h.