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

A virtual container used by sphere, circle and tube meshes. More...

#include <GT_GEOPrimCaptureRegions.h>

+ Inheritance diagram for GT_GEOPrimCaptureRegions:

Public Member Functions

 GT_GEOPrimCaptureRegions ()
 Default c-tor. More...
 
 GT_GEOPrimCaptureRegions (const GT_GEOPrimCaptureRegions &src)
 
 GT_GEOPrimCaptureRegions (const GT_DataArrayHandle &taperx, const GT_DataArrayHandle &tapery, const GT_DataArrayHandle &bcap, const GT_DataArrayHandle &tcap, const GT_AttributeListHandle &vertex, const GT_AttributeListHandle &detail, const GT_TransformArrayHandle &xforms)
 Construct a full list of quadrics. More...
 
 ~GT_GEOPrimCaptureRegions () override
 
const char * className () const override
 
int getPrimitiveType () const override
 
GT_PrimitiveHandle doSoftCopy () const override
 
GT_PrimitiveHandle doHarden () const override
 
bool refine (GT_Refine &refiner, const GT_RefineParms *parms) const override
 
GT_Size entries () const
 
const GT_DataArrayHandletaperX () const
 
const GT_DataArrayHandletaperY () const
 
const GT_DataArrayHandlebottomCap () const
 
const GT_DataArrayHandletopCap () const
 
- Public Member Functions inherited from GT_PrimQuadricMesh
 GT_PrimQuadricMesh ()
 Default c-tor. More...
 
 GT_PrimQuadricMesh (const GT_PrimQuadricMesh &src)
 
 GT_PrimQuadricMesh (const GT_AttributeListHandle &vertex, const GT_AttributeListHandle &detail, const GT_TransformArrayHandle &xforms)
 Construct a full list of quadrics. More...
 
 GT_PrimQuadricMesh (const GT_PrimQuadric *q)
 Construct a mesh from a single quadric. More...
 
const char * className () const override
 
bool saveQuadricMesh (UT_JSONWriter &w, const char *name) const
 
bool init (const GT_AttributeListHandle &vertex, const GT_AttributeListHandle &detail, const GT_TransformArrayHandle &xforms)
 Initialize the quadric mesh. More...
 
bool updateGeoPrim (const GU_ConstDetailHandle &dtl, const GT_RefineParms &refine) override
 update any cached data for geometry and its attributes More...
 
virtual bool getBaseTransform (UT_Matrix4D &) const
 
void enlargeBounds (UT_BoundingBox boxes[], int nsegments) const override
 
int getMotionSegments () const override
 
int64 getMemoryUsage () const override
 
bool refine (GT_Refine &refiner, const GT_RefineParms *parms) const override
 
GT_Size getQuadricCount () const
 
const GT_AttributeListHandlegetVertex () const
 
const GT_AttributeListHandlegetDetail () const
 
const GT_TransformArrayHandlegetTransforms () const
 
const GT_TransformHandlegetTransform (GT_Size i) const
 
const GT_AttributeListHandlegetVertexAttributes () const override
 
const GT_AttributeListHandlegetDetailAttributes () const override
 
- 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_TransformHandlegetPrimitiveTransform () 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
 
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 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
getUniformAttributes () const
 
const GT_AttributeListHandlegetAttributeList (GT_Owner owner) const
 
virtual const GT_DataArrayHandlegetVertexList () 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_IntrusiveRefCounteroperator= (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
 

Protected Member Functions

void getQBounds (UT_BoundingBox &box) const override
 
GT_PrimitiveHandle makeQuadric (GT_Size index, const GT_AttributeListHandle &h, const GT_TransformHandle &x, const GT_RefineParms *parms) const override
 Sub-class method to make an individual primitive. More...
 
GT_PrimitiveHandle refineToCurves (const GT_RefineParms *parms) const
 
- Protected Member Functions inherited from GT_PrimQuadricMesh
void hardenAttributes ()
 Method to harden attributes. More...
 
- Protected Member Functions inherited from GT_Primitive
void enlargeP (UT_BoundingBox &box, const GT_AttributeListHandle &list, int segment) const
 
void enlargeP (UT_BoundingBox &B, const GT_DataArrayHandle &P) const
 Convenience method to enlarge a bounding box given a position attribute. More...
 
void enlargePw (UT_BoundingBox &B, const GT_DataArrayHandle &P) const
 
- Protected Member Functions inherited from UT_IntrusiveRefCounter< GT_Primitive >
SYS_FORCE_INLINE ~UT_IntrusiveRefCounter ()
 Destructor: Only derived classes can destruct this. More...
 

Protected Attributes

GT_DataArrayHandle myTaperX
 
GT_DataArrayHandle myTaperY
 
GT_DataArrayHandle myBottomCap
 
GT_DataArrayHandle myTopCap
 
- Protected Attributes inherited from GT_PrimQuadricMesh
GT_AttributeListHandle myVertex
 
GT_AttributeListHandle myDetail
 
GT_TransformArrayHandle myTransforms
 

Additional Inherited Members

- Static Public Member Functions inherited from GT_Primitive
static int createPrimitiveTypeId ()
 
static GT_AttributeListHandle mergeAttributeLists (bool &changed, const GT_AttributeListHandle &src, const GT_AttributeListHandle &merge, const UT_StringMMPattern *pattern, const UT_StringMMPattern *alternate=NULL)
 
static bool computeVelocityRange (UT_Vector3 &vmin, UT_Vector3 &vmax, const GT_DataArrayHandle &v)
 
static GT_PrimitiveHandle refineDetail (const GU_ConstDetailHandle &detail, const GT_RefineParms *parms)
 
static GT_PrimitiveHandle refinePrimitive (const GT_PrimitiveHandle &primh, const GT_RefineParms *parms)
 
static voidoperator new (size_t size)
 
static voidoperator new (size_t size, void *p)
 
static void operator delete (void *p, size_t size)
 

Detailed Description

A virtual container used by sphere, circle and tube meshes.

Definition at line 19 of file GT_GEOPrimCaptureRegions.h.

Constructor & Destructor Documentation

GT_GEOPrimCaptureRegions::GT_GEOPrimCaptureRegions ( )
inline

Default c-tor.

Definition at line 23 of file GT_GEOPrimCaptureRegions.h.

GT_GEOPrimCaptureRegions::GT_GEOPrimCaptureRegions ( const GT_GEOPrimCaptureRegions src)
inline

Definition at line 29 of file GT_GEOPrimCaptureRegions.h.

GT_GEOPrimCaptureRegions::GT_GEOPrimCaptureRegions ( const GT_DataArrayHandle taperx,
const GT_DataArrayHandle tapery,
const GT_DataArrayHandle bcap,
const GT_DataArrayHandle tcap,
const GT_AttributeListHandle vertex,
const GT_AttributeListHandle detail,
const GT_TransformArrayHandle xforms 
)
inline

Construct a full list of quadrics.

Definition at line 39 of file GT_GEOPrimCaptureRegions.h.

GT_GEOPrimCaptureRegions::~GT_GEOPrimCaptureRegions ( )
override

Member Function Documentation

const GT_DataArrayHandle& GT_GEOPrimCaptureRegions::bottomCap ( ) const
inline

Definition at line 70 of file GT_GEOPrimCaptureRegions.h.

const char* GT_GEOPrimCaptureRegions::className ( ) const
inlineoverridevirtual

Implements GT_Primitive.

Definition at line 56 of file GT_GEOPrimCaptureRegions.h.

GT_PrimitiveHandle GT_GEOPrimCaptureRegions::doHarden ( ) const
overridevirtual

Hardening the primitive will return a copy of the primitive, but without any dangling references. The default implementation returns a NULL ptr.

Reimplemented from GT_Primitive.

GT_PrimitiveHandle GT_GEOPrimCaptureRegions::doSoftCopy ( ) const
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 60 of file GT_GEOPrimCaptureRegions.h.

GT_Size GT_GEOPrimCaptureRegions::entries ( ) const
inline

Definition at line 67 of file GT_GEOPrimCaptureRegions.h.

int GT_GEOPrimCaptureRegions::getPrimitiveType ( ) const
inlineoverridevirtual

Methods defined on GT_Primitive

Implements GT_PrimQuadricMesh.

Definition at line 58 of file GT_GEOPrimCaptureRegions.h.

void GT_GEOPrimCaptureRegions::getQBounds ( UT_BoundingBox box) const
overrideprotectedvirtual

Sub-class method to compute a bounding box for a single non-transformed element.

Implements GT_PrimQuadricMesh.

GT_PrimitiveHandle GT_GEOPrimCaptureRegions::makeQuadric ( GT_Size  index,
const GT_AttributeListHandle h,
const GT_TransformHandle x,
const GT_RefineParms parms 
) const
overrideprotectedvirtual

Sub-class method to make an individual primitive.

Implements GT_PrimQuadricMesh.

bool GT_GEOPrimCaptureRegions::refine ( GT_Refine refiner,
const GT_RefineParms parms 
) const
overridevirtual

Refine the primitive.

  • refiner
    The refiner object is responsible for processing primitives, and also giving the primitive hints on how to refine itself. The method should returns true if new primitives were added to the refiner.

Reimplemented from GT_Primitive.

GT_PrimitiveHandle GT_GEOPrimCaptureRegions::refineToCurves ( const GT_RefineParms parms) const
protected

Refine to a curve mesh. Each region will be composed of 4 individual curves.

const GT_DataArrayHandle& GT_GEOPrimCaptureRegions::taperX ( ) const
inline

Definition at line 68 of file GT_GEOPrimCaptureRegions.h.

const GT_DataArrayHandle& GT_GEOPrimCaptureRegions::taperY ( ) const
inline

Definition at line 69 of file GT_GEOPrimCaptureRegions.h.

const GT_DataArrayHandle& GT_GEOPrimCaptureRegions::topCap ( ) const
inline

Definition at line 71 of file GT_GEOPrimCaptureRegions.h.

Member Data Documentation

GT_DataArrayHandle GT_GEOPrimCaptureRegions::myBottomCap
protected

Definition at line 85 of file GT_GEOPrimCaptureRegions.h.

GT_DataArrayHandle GT_GEOPrimCaptureRegions::myTaperX
protected

Definition at line 83 of file GT_GEOPrimCaptureRegions.h.

GT_DataArrayHandle GT_GEOPrimCaptureRegions::myTaperY
protected

Definition at line 84 of file GT_GEOPrimCaptureRegions.h.

GT_DataArrayHandle GT_GEOPrimCaptureRegions::myTopCap
protected

Definition at line 86 of file GT_GEOPrimCaptureRegions.h.


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