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

Provide uniform parametric coordinates for a curve/surface. More...

#include <GT_DAParametric.h>

+ Inheritance diagram for GT_DAParametric:

Public Member Functions

 GT_DAParametric ()
 Default constructor. More...
 
 GT_DAParametric (GT_Size nu, GT_Size nv, fpreal64 u0=0, fpreal64 u1=1, fpreal64 v0=0, fpreal64 v1=1)
 Useful constructor. More...
 
 GT_DAParametric (const GT_DAParametric &src)
 Copy constructor. More...
 
virtual ~GT_DAParametric ()
 
virtual const char * className () const
 
void init (GT_Size nu, GT_Size nv, fpreal64 u0=0, fpreal64 u1=1, fpreal64 v0=0, fpreal64 v1=1)
 Initialize with given data. More...
 
void splitU0 ()
 
void splitU1 ()
 
void splitV0 ()
 
void splitV1 ()
 
virtual GT_Storage getStorage () const
 
virtual GT_Size getTupleSize () const
 
virtual int64 getMemoryUsage () const
 
virtual GT_Type getTypeInfo () const
 
virtual GT_Size entries () const
 
virtual uint8 getU8 (GT_Offset offset, int idx) const
 
virtual int32 getI32 (GT_Offset offset, int idx) const
 
virtual int64 getI64 (GT_Offset offset, int idx) const
 
virtual fpreal16 getF16 (GT_Offset offset, int idx) const
 
virtual fpreal32 getF32 (GT_Offset offset, int idx) const
 
virtual fpreal64 getF64 (GT_Offset offset, int idx) const
 
virtual GT_String getS (GT_Offset, int) const
 
virtual GT_Size getStringIndexCount () const
 
virtual GT_Offset getStringIndex (GT_Offset, int) const
 
virtual void getIndexedStrings (UT_StringArray &, UT_IntArray &) const
 
virtual GT_DataArrayHandle harden () const
 
- Public Member Functions inherited from GT_DataArray
 GT_DataArray ()
 
 GT_DataArray (const GT_DataArray &src)
 
virtual ~GT_DataArray ()
 
virtual bool hasArrayEntries () const
 Returns "true" if each entry is an array. More...
 
virtual bool getPointerAliasing (const void *data) const
 Return "true" if there's pointer aliasing. More...
 
virtual bool isValid () const
 Data array is valid; can be sampled from. More...
 
virtual int64 getDataId () const
 
virtual void getStrings (UT_StringArray &strings) const
 
void fillStrings (std::string *strings, int tuple_idx=0) const
 
virtual void extendedFillArray (uint8 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1, fpreal black=0, fpreal white=1) const
 
bool isEqual (const GT_DataArray &src) const
 Compare whether two data arrays are equal. More...
 
GT_Storage checkIndexing (GT_IndexingMode mode) const
 Test to see whether the data array requires int32 or int64 indexing. More...
 
void dumpValues (const char *msg=NULL) const
 For debugging, print values to stdout. More...
 
bool save (UT_JSONWriter &w, bool flat=true) const
 
void copyDataId (const GT_DataArray &src)
 
void setDataId (int64 id)
 
virtual void updateGeoDetail (const GU_ConstDetailHandle &dtl, const char *attrib_name, GT_Owner attrib_owner, const int expected_size)
 Update cached data, in case the underlying attribute changed. More...
 
template<typename T >
T getValue (GT_Offset index) const
 Public accessor for POD types. More...
 
template<typename T >
T lerpValue (GT_Offset i0, GT_Offset i1, fpreal t) const
 
template<typename T >
T bilerpValue (GT_Offset u0v0, GT_Offset u1v0, GT_Offset u0v1, GT_Offset u1v1, fpreal u, fpreal v)
 
virtual int8 getI8 (GT_Offset offset, int idx=0) const
 
virtual int16 getI16 (GT_Offset offset, int idx=0) const
 
virtual bool getSA (UT_StringArray &a, GT_Offset offset) const
 
virtual bool getFA32 (UT_ValArray< fpreal32 > &a, GT_Offset offset) const
 
virtual bool getIA32 (UT_ValArray< int32 > &a, GT_Offset offset) const
 
virtual const uint8getU8Array (GT_DataArrayHandle &buffer) const
 
virtual const int8getI8Array (GT_DataArrayHandle &buffer) const
 
virtual const int16getI16Array (GT_DataArrayHandle &buffer) const
 
virtual const int32getI32Array (GT_DataArrayHandle &buffer) const
 
virtual const int64getI64Array (GT_DataArrayHandle &buffer) const
 
virtual const fpreal16getF16Array (GT_DataArrayHandle &buffer) const
 
virtual const fpreal32getF32Array (GT_DataArrayHandle &buffer) const
 
virtual const fpreal64getF64Array (GT_DataArrayHandle &buffer) const
 
const fprealgetRealArray (GT_DataArrayHandle &buffer) const
 
void import (GT_Offset idx, int8 *data, GT_Size size=0) const
 
void import (GT_Offset idx, int16 *data, GT_Size size=0) const
 
void import (GT_Offset idx, int32 *data, GT_Size size=0) const
 
void import (GT_Offset idx, int64 *data, GT_Size size=0) const
 
void import (GT_Offset idx, fpreal16 *data, GT_Size size=0) const
 
void import (GT_Offset idx, fpreal32 *data, GT_Size size=0) const
 
void import (GT_Offset idx, fpreal64 *data, GT_Size size=0) const
 
void import (GT_Offset idx, UT_ValArray< fpreal32 > &data) const
 
void import (GT_Offset idx, UT_ValArray< int32 > &data) const
 
void import (GT_Offset idx, uint8 *data, GT_Size size=0, fpreal black=0, fpreal white=1) const
 
void fillArray (int8 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (int16 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (int32 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (int64 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (fpreal16 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (fpreal32 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (fpreal64 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1) const
 
void fillArray (uint8 *data, GT_Offset start, GT_Size length, int tsize, int stride=-1, fpreal black=0, fpreal white=1) const
 
void fillVec3BBox (fpreal32 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxF &bbox, int tsize, int stride=-1)
 
void fillVec3BBox (fpreal64 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxD &bbox, int tsize, int stride=-1)
 
virtual void extendedFill (uint8 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int8 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int16 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int32 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (int64 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (fpreal16 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (fpreal32 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual void extendedFill (fpreal64 *data, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride=-1) const
 
virtual const uint8get (GT_Offset i, uint8 *store, int sz) const
 
virtual const int8get (GT_Offset i, int8 *store, int sz) const
 
virtual const int16get (GT_Offset i, int16 *store, int sz) const
 
virtual const int32get (GT_Offset i, int32 *store, int sz) const
 
virtual const int64get (GT_Offset i, int64 *store, int sz) const
 
virtual const fpreal16get (GT_Offset i, fpreal16 *store, int z) const
 
virtual const fpreal32get (GT_Offset i, fpreal32 *store, int z) const
 
virtual const fpreal64get (GT_Offset i, fpreal64 *store, int z) const
 
virtual void getRange (exint &lo, exint &hi, int tuple_idx=0) const
 
virtual void getRange (fpreal &lo, fpreal &hi, int tidx=0) const
 
- Public Member Functions inherited from UT_IntrusiveRefCounter< GT_DataArray >
SYS_FORCE_INLINE UT_IntrusiveRefCounter ()
 Default constructor: Sets counter to 0. More...
 
SYS_FORCE_INLINE UT_IntrusiveRefCounter (const UT_IntrusiveRefCounter &)
 Copy constructor: Sets counter to 0. More...
 
UT_IntrusiveRefCounteroperator= (const UT_IntrusiveRefCounter &)
 Assignment operator: Does not modify counter. More...
 
SYS_FORCE_INLINE uint32 use_count () const
 Return current counter. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from GT_DataArray
static bool isBigInteger (GT_Size size)
 Quick & dirty test to see if a size is bigger than a 32 bit int. More...
 
static voidoperator new (size_t size)
 
static voidoperator new (size_t size, void *p)
 
static void operator delete (void *p, size_t size)
 
- Protected Member Functions inherited from GT_DataArray
SYS_STATIC_FORCE_INLINE GT_Size fixImportTupleSize (GT_Size size, GT_Size tuple_size)
 
template<typename T_POD >
void t_extendedFill (T_POD *dest, GT_Offset start, GT_Size length, int tsize, int nrepeats, int stride) const
 Templated method to fill an array. More...
 
virtual void doImport (GT_Offset idx, uint8 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int8 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int16 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int32 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, int64 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, fpreal16 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, fpreal32 *data, GT_Size size) const
 
virtual void doImport (GT_Offset idx, fpreal64 *data, GT_Size size) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< fpreal32 > &data) const
 
virtual void doImportArray (GT_Offset idx, UT_ValArray< int32 > &data) const
 
virtual void doImportQuantized (GT_Offset idx, uint8 *data, GT_Size size, fpreal black, fpreal white) const
 
virtual void doFillArray (uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int16 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int32 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (int64 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (fpreal16 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (fpreal32 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillArray (fpreal64 *data, GT_Offset start, GT_Size length, int tuple_size, int stride) const
 
virtual void doFillQuantizedArray (uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int stride, fpreal black, fpreal white) const
 
virtual void doExtendedQuantizedFill (uint8 *data, GT_Offset start, GT_Size length, int tuple_size, int nrepeats, int stride, fpreal black, fpreal white) const
 
virtual void doFillVec3BBox (fpreal32 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxF &bbox, int, int stride)
 
virtual void doFillVec3BBox (fpreal64 *dest, GT_Offset start, GT_Size length, UT_BoundingBoxD &bbox, int, int stride)
 
- Protected Member Functions inherited from UT_IntrusiveRefCounter< GT_DataArray >
SYS_FORCE_INLINE ~UT_IntrusiveRefCounter ()
 Destructor: Only derived classes can destruct this. More...
 

Detailed Description

Provide uniform parametric coordinates for a curve/surface.

An efficient way of representing parametric coordinates For a patch:

uv = GT_DAParamtric(nu, nv);

For a curve primitive:

uv = GT_DAParamtric(nu, 1);

Definition at line 28 of file GT_DAParametric.h.

Constructor & Destructor Documentation

GT_DAParametric::GT_DAParametric ( )
inline

Default constructor.

Definition at line 32 of file GT_DAParametric.h.

GT_DAParametric::GT_DAParametric ( GT_Size  nu,
GT_Size  nv,
fpreal64  u0 = 0,
fpreal64  u1 = 1,
fpreal64  v0 = 0,
fpreal64  v1 = 1 
)
inline

Useful constructor.

Definition at line 38 of file GT_DAParametric.h.

GT_DAParametric::GT_DAParametric ( const GT_DAParametric src)
inline

Copy constructor.

Definition at line 46 of file GT_DAParametric.h.

virtual GT_DAParametric::~GT_DAParametric ( )
virtual

Member Function Documentation

virtual const char* GT_DAParametric::className ( void  ) const
inlinevirtual

Implements GT_DataArray.

Definition at line 58 of file GT_DAParametric.h.

virtual GT_Size GT_DAParametric::entries ( void  ) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 90 of file GT_DAParametric.h.

virtual fpreal16 GT_DAParametric::getF16 ( GT_Offset  offset,
int  idx 
) const
inlinevirtual

Methods defined on GT_DataArray

Reimplemented from GT_DataArray.

Definition at line 98 of file GT_DAParametric.h.

virtual fpreal32 GT_DAParametric::getF32 ( GT_Offset  offset,
int  idx 
) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 100 of file GT_DAParametric.h.

virtual fpreal64 GT_DAParametric::getF64 ( GT_Offset  offset,
int  idx 
) const
inlinevirtual

Methods defined on GT_DataArray

Reimplemented from GT_DataArray.

Definition at line 102 of file GT_DAParametric.h.

virtual int32 GT_DAParametric::getI32 ( GT_Offset  offset,
int  idx 
) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 94 of file GT_DAParametric.h.

virtual int64 GT_DAParametric::getI64 ( GT_Offset  offset,
int  idx 
) const
inlinevirtual

Methods defined on GT_DataArray

Reimplemented from GT_DataArray.

Definition at line 96 of file GT_DAParametric.h.

virtual void GT_DAParametric::getIndexedStrings ( UT_StringArray ,
UT_IntArray  
) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 107 of file GT_DAParametric.h.

virtual int64 GT_DAParametric::getMemoryUsage ( ) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 86 of file GT_DAParametric.h.

virtual GT_String GT_DAParametric::getS ( GT_Offset  ,
int   
) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 104 of file GT_DAParametric.h.

virtual GT_Storage GT_DAParametric::getStorage ( ) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 82 of file GT_DAParametric.h.

virtual GT_Offset GT_DAParametric::getStringIndex ( GT_Offset  ,
int   
) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 106 of file GT_DAParametric.h.

virtual GT_Size GT_DAParametric::getStringIndexCount ( ) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 105 of file GT_DAParametric.h.

virtual GT_Size GT_DAParametric::getTupleSize ( ) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 84 of file GT_DAParametric.h.

virtual GT_Type GT_DAParametric::getTypeInfo ( ) const
inlinevirtual

Methods defined on GT_DataArray

Reimplemented from GT_DataArray.

Definition at line 88 of file GT_DAParametric.h.

virtual uint8 GT_DAParametric::getU8 ( GT_Offset  offset,
int  idx 
) const
inlinevirtual

Methods defined on GT_DataArray

Implements GT_DataArray.

Definition at line 92 of file GT_DAParametric.h.

virtual GT_DataArrayHandle GT_DAParametric::harden ( ) const
inlinevirtual

Methods defined on GT_DataArray

Reimplemented from GT_DataArray.

Definition at line 109 of file GT_DAParametric.h.

void GT_DAParametric::init ( GT_Size  nu,
GT_Size  nv,
fpreal64  u0 = 0,
fpreal64  u1 = 1,
fpreal64  v0 = 0,
fpreal64  v1 = 1 
)
inline

Initialize with given data.

Definition at line 61 of file GT_DAParametric.h.

void GT_DAParametric::splitU0 ( )
inline

After being duplicated, you can perform a binary split

Definition at line 74 of file GT_DAParametric.h.

void GT_DAParametric::splitU1 ( )
inline

After being duplicated, you can perform a binary split

Definition at line 75 of file GT_DAParametric.h.

void GT_DAParametric::splitV0 ( )
inline

After being duplicated, you can perform a binary split

Definition at line 76 of file GT_DAParametric.h.

void GT_DAParametric::splitV1 ( )
inline

After being duplicated, you can perform a binary split

Definition at line 77 of file GT_DAParametric.h.


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