|
| GT_GEOPrimPacked (const GU_ConstDetailHandle &prim_gdh, const GU_PrimPacked *prim, bool transformed=true, bool include_packed_attribs=false) |
|
| GT_GEOPrimPacked (const GT_GEOPrimPacked &src) |
|
| ~GT_GEOPrimPacked () override |
|
bool | refine (GT_Refine &refiner, const GT_RefineParms *parms=NULL) const override |
|
void | geometryAndTransform (const GT_RefineParms *parms, GT_PrimitiveHandle &result, GT_TransformHandle &xform) const |
|
bool | getViewportTransform (UT_Matrix4D &xform) const |
|
virtual bool | canInstance () const |
|
virtual bool | getInstanceKey (UT_Options &options) const |
|
virtual GT_PrimitiveHandle | getInstanceGeometry (const GT_RefineParms *parms, bool ignore_visibility=false) const |
|
virtual GT_AttributeListHandle | getInstanceAttributes () const |
|
virtual GT_TransformHandle | getInstanceTransform () const |
|
GT_TransformHandle | getFullTransform () const |
|
const GU_PrimPacked * | getPrim () const |
| Accessor to the primitive. More...
|
|
const GU_PackedImpl * | getImplementation () const |
| Accessor to the packed implementation. More...
|
|
virtual GU_ConstDetailHandle | getPackedDetail () const |
|
|
const char * | className () const override |
|
int | getPrimitiveType () const override |
|
void | enlargeBounds (UT_BoundingBox boxes[], int nseg) const override |
|
void | enlargeRenderBounds (UT_BoundingBox boxes[], int nseg) const override |
|
void | getVelocityRange (UT_Vector3 &vmin, UT_Vector3 &vmax, const UT_StringRef &attribute_name) const override |
|
int | getMotionSegments () const override |
|
int64 | getMemoryUsage () const override |
|
bool | save (UT_JSONWriter &w) const override |
|
const GT_ViewportRefineOptions & | viewportRefineOptions () const override |
|
GT_PrimitiveHandle | doSoftCopy () const override |
|
const GT_AttributeListHandle & | getPointAttributes () const override |
|
|
bool | transformed () const |
|
void | setTransformed (bool f) |
|
|
virtual void | setViewportLOD (GEO_ViewportLOD, int) |
|
virtual GEO_ViewportLOD | getViewportLOD (int) const |
|
| GT_Primitive () |
|
| GT_Primitive (const GT_Primitive &src) |
|
virtual | ~GT_Primitive () |
|
virtual bool | getUniqueID (int64 &id) const |
|
const GT_TransformHandle & | getPrimitiveTransform () const |
|
void | setPrimitiveTransform (const GT_TransformHandle &x) |
| Set the transform for a the primitive. More...
|
|
GT_PrimitiveHandle | clone () const |
|
virtual bool | hasDataArray (const UT_StringRef &name, GT_Owner owner_scope[], int num_owners, GT_Storage *storage=NULL, GT_Size *tuple_size=NULL) const |
|
virtual bool | updateGeoPrim (const GU_ConstDetailHandle &dtl, const GT_RefineParms &parms) |
| update any cached data for geometry and its attributes More...
|
|
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 |
|
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 | 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 & | 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 |
|
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...
|
|
Container for a GU packed primitive.
- Examples:
- packedsphere/GT_GEOPackedSphere.C.
Definition at line 21 of file GT_GEOPrimPacked.h.
virtual bool GT_GEOPrimPacked::copyPackedAttributesToGeometry |
( |
| ) |
const |
|
protectedvirtual |
When extracting geometry for a single primitive, the base class may automatically copy some attributes from the packed primitive to the GT instance. If you've written a custom handler which is able to instance geometry (i.e. share the geometry through a GT_PrimInstance), this will do the wrong thing, since the shader attributes will be copied to the geometry (rather than being able to change on a per-instance basis). So, you must override this method to indicate that you're handling the packed attributes yourself.
The default is to copy the attributes, if you're handling them yourself, return false
.
bool GT_GEOPrimPacked::transformed |
( |
| ) |
const |
|
inline |
Normally, the primitive will pick up the transform from the GU primitive implementation and use this in the GT representation. However, when doing instancing of shared geometry, the transforms will be picked up by the instance object, and so should be ignored on the base primitive.
Definition at line 88 of file GT_GEOPrimPacked.h.