GEO_TPSurf Class Reference

#include <GEO_TPSurf.h>

Inheritance diagram for GEO_TPSurf:

GEO_Hull GEO_Primitive GA_Primitive GEO_PrimNURBSurf GEO_PrimRBezSurf GU_PrimNURBSurf GU_PrimRBezSurf

List of all members.

Public Member Functions

 GEO_TPSurf (GEO_Detail *d, GA_Offset offset=GA_INVALID_OFFSET, int m=0, int n=0)
virtual ~GEO_TPSurf ()
virtual unsigned getNumSecondaryDetails () const
 A primitive may support any number of secondary details.
virtual const GA_DetailgetSecondaryDetail (GA_Index i) const
virtual GA_DetailgetSecondaryDetail (GA_Index i)
virtual void copyPrimitive (const GEO_Primitive *src, GEO_Point **ptredirect)
virtual GEO_Primitivecopy (int preserve_shared_pts=0) const
virtual void copyUnwiredForMerge (const GA_Primitive *src, const GA_MergeMap &map)
virtual void clearForDeletion ()
void mergeProfiles (const GEO_TPSurf &tpsurf, int onlyvisible=0)
SYS_DEPRECATED bool evaluateHomogeneous (fpreal u, fpreal v, GEO_Vertex result, GEO_AttributeHandleList &hlist, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const
SYS_DEPRECATED bool evaluate (fpreal u, fpreal v, GEO_Vertex result, GEO_AttributeHandleList &hlist, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const
bool evaluate (fpreal u, fpreal v, GA_Offset result_vtx, GA_AttributeRefMap &hlist, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const
int evaluateHomogeneous (float u, float v, UT_Vector4 &pos, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const
int evaluate (float u, float v, UT_Vector4 &pos, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const
template<typename T >
bool evaluateHomogeneous (fpreal u, fpreal v, const GA_ROGenericHandleVertex< T > &h, T &pos, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const
virtual int evaluateBasisDerivs (float u, float v, float ubmatx[][GA_MAXORDER], float vbmatx[][GA_MAXORDER], int &rowoffset, int &coloffset, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const =0
virtual int evaluateBasis (float u, float v, float *ubvals, float *vbvals, int &rowoffset, int &coloffset, unsigned du=0, unsigned dv=0, int uoffset=-1, int voffset=-1) const =0
virtual int evaluateUBasis (float u, float *ubvals, int &coloffset, unsigned du=0, int uoffset=-1) const =0
virtual int evaluateVBasis (float v, float *vbvals, int &rowoffset, unsigned dv=0, int voffset=-1) const =0
float computeUBValue (float u, int uoff) const
float computeVBValue (float v, int voff) const
float computeBValue (float u, float v, int uoff, int voff) const
void fillBreakParameters (UT_FloatArray &uvals, UT_FloatArray &vvals, int ustartidx, int ustopidx, int vstartidx, int vstopidx, int ulod, int vlod) const
bool evaluateMesh (const UT_FloatArray &uvals, const UT_FloatArray &vvals, UT_Vector4 *pos, bool transpose=false, unsigned du=0, unsigned dv=0) const
bool evaluateMesh (const UT_FloatArray &uvals, const UT_FloatArray &vvals, GEO_WorkVertexArray &verts, GEO_AttributeHandleList &hlist, bool transpose=false, unsigned du=0, unsigned dv=0) const
template<typename T >
bool evaluateMesh (const UT_FloatArray &uvals, const UT_FloatArray &vvals, const GA_ROGenericHandleVertex< T > &h, T *pos, bool transpose=false, unsigned du=0, unsigned dv=0) const
SYS_DEPRECATED int computeUConstCVs (float u, GEO_Vertex **results, GEO_AttributeHandleList &hlist, int uoffset=-1) const
int computeUConstCVs (float u, GEO_Vertex **results, GA_AttributeRefMap &map, int uoffset=-1) const
int computeUConstCVs (float u, UT_Vector4 *cvs, int uoffset=-1) const
SYS_DEPRECATED int computeVConstCVs (float u, GEO_Vertex **results, GEO_AttributeHandleList &hlist, int uoffset=-1) const
int computeVConstCVs (float u, GEO_Vertex **results, GA_AttributeRefMap &map, int uoffset=-1) const
int computeVConstCVs (float v, UT_Vector4 *cvs, int voffset=-1) const
int createUConstProfile (float u, float growtip=0.0f)
int createVConstProfile (float v, float growtip=0.0f)
int chordUBasis (float v, GA_Basis &ub, int voff=-1) const
int chordVBasis (float u, GA_Basis &vb, int uoff=-1) const
virtual int evaluateNormal (float u, float v, UT_Vector3 &nml) const
virtual int normalIndex (float iu, float iv, UT_Vector3 &nml) const
int curvature (float u, float v, float &curv) const
float arcLength (float u0, float v0, float u1, float v1, int divs=10) const
virtual int domainRangeOfCV (int i, int j, int &minuk, int &maxuk, int &minvk, int &maxvk) const =0
virtual int breakpointRangeOfCV (int i, int j, int &minbkpu, int &maxbkpu, int &minbkpv, int &maxbkpv) const =0
virtual void reparameterizeU (GA_ParameterizationType ptype)=0
virtual void reparameterizeV (GA_ParameterizationType ptype)=0
virtual void reverseU (void)
virtual void reverseV (void)
void mapUBasis (float orig, float len)
void mapVBasis (float orig, float len)
virtual void validURange (float &ua, float &ub) const
virtual void validVRange (float &va, float &vb) const
virtual void validUInterval (int &a, int &b) const
virtual void validVInterval (int &a, int &b) const
GA_RWAttributeRef uniformTexture (GA_RWAttributeRef txtoff, int ptattrib)
GA_RWAttributeRef grevilleTexture (GA_RWAttributeRef txtoff, int ptattrib)
GA_RWAttributeRef chordLenTexture (GA_RWAttributeRef txtoff, int ptattrib)
int setGreville (unsigned int r, unsigned int c)
int setGrevilles (void)
int buildGreville (unsigned r, unsigned c)
int buildGrevilles (int resize=1)
void clearGrevilles (void)
const GEO_GrevillegetGreville (unsigned int r, unsigned int c) const
unsigned hasGreville (void) const
int duApprox (int uIdx, int vIdx, UT_Vector3 &du, int normalize=1, float precision=0.008F) const
int dvApprox (int uIdx, int vIdx, UT_Vector3 &du, int normalize=1, float precision=0.008F) const
int setCV (unsigned r, unsigned c, const UT_Vector4 &v)
void weights (unsigned short onOff)
int setWeight (unsigned int r, unsigned int c, float w)
float getWeight (unsigned int r, unsigned int c) const
int isRational () const
virtual void unitToRealDomain (float u_unit, float v_unit, float &u_real, float &v_real) const
virtual void realToUnitDomain (float u_real, float v_real, float &u_unit, float &v_unit) const
virtual void unitToRealSequenceU (float *uunit, float *ureal, int ulen) const
virtual void unitToRealSequenceV (float *vunit, float *vreal, int vlen) const
void normalizeWeights ()
void normalizeDomain (float len=0.F, float *newuorigin=0, float *newvorigin=0)
virtual int recordChange (unsigned r, unsigned c)
virtual int recordChanges (unsigned short basisChange=0, unsigned short sizeChange=0)
void refineRange (const UT_BoundingRect &rect, float tol, float *&uunits, float *&vunits, int &udivs, int &vdivs, UT_FloatArray &uunrefineranges, UT_FloatArray &vunrefineranges)
void refineBelt (float ubwidth=0.4F, float vbwidth=0.4F, int ubdivs=2, int vbdivs=2)
virtual void changedVertices (void)=0
int setUBasis (GA_Basis *ub)
int setVBasis (GA_Basis *vb)
GA_BasisgetUBasis (void) const
GA_BasisgetVBasis (void) const
unsigned getUOrder (void) const
unsigned getVOrder (void) const
unsigned getUDim (void) const
unsigned getVDim (void) const
void getUGrevilles (UT_FloatArray &ugrevilles)
void getVGrevilles (UT_FloatArray &vgrevilles)
virtual bool isDegenerate (void) const
 Is the primitive degenerate.
virtual void getRangeBBox (const UT_Interval &u, const UT_Interval &v, UT_BoundingBox &bbox, const GA_ROHandleV4 &h) const =0
int raiseOrderU (int neworder)
SYS_DEPRECATED int raiseOrderU (int neworder, GEO_AttributeHandleList &hlist)
int raiseOrderV (int neworder)
SYS_DEPRECATED int raiseOrderV (int neworder, GEO_AttributeHandleList &hlist)
int raiseOrderU (int neworder, GA_AttributeRefMap &map)
int raiseOrderV (int neworder, GA_AttributeRefMap &map)
virtual int translateBreakpoints (const UT_IntArray &uindices, const UT_IntArray &vindices, const UT_Vector3 &delta, int fixbkpts=1, GA_PointGroup *ptgroup=NULL, GEO_Delta *geodelta=0)=0
virtual int transformBreakpoints (const UT_IntArray &uindices, const UT_IntArray &vindices, const UT_Matrix4 &matx, int fixbkpts=1, GA_PointGroup *ptgroup=NULL, GEO_Delta *geodelta=0)=0
virtual int attachU (const GEO_Hull &hull, int blend=1, float bias=0.5f, float tolerance=1.0f, int unrefine=1, GA_PointGroup *ptgroup=0)
virtual int attachV (const GEO_Hull &hull, int blend=1, float bias=0.5f, float tolerance=1.0f, int unrefine=1, GA_PointGroup *ptgroup=0)
virtual GEO_TPSurfextract (float ustart, float ustop, float vstart, float vstop) const =0
virtual void subdivide (int numdivs, GA_PointGroup *ptgroup=0)
virtual int parametricBBox (float u, float v, float *u0, float *u1, float *v0, float *v1)
int hasProfiles (void) const
GEO_Profilesprofiles (int create=1)
GEO_Profilesprofiles (void) const
int isPasted (void) const
GEO_PasteSurfpastedSurface (void) const
void pastedSurface (GEO_PasteSurf *p)
int updateDisplacement (GA_Offset ptoff, int updatekids=1)
int updateDisplacement (const GEO_Point &ppt, int updatekids=1)
virtual void isolate (void)
 Method to isolate a pasted surface.
int solveConstraints (const UT_Vector &uparam, const UT_Vector &vparam, const UT_IntArray &udervs, const UT_IntArray &vdervs, UT_MatrixF &soln, UT_IntArray &cv_idx)
int applyConstraints (UT_MatrixF &changes, const UT_Vector &uparam, const UT_Vector &vparam, const UT_IntArray &udervs, const UT_IntArray &vdervs, const UT_IntArray &cv_index, const UT_MatrixF &soln)
int solveAndApplyConstraints (const UT_Vector &uparam, const UT_Vector &vparam, const UT_IntArray &udervs, const UT_IntArray &vdervs, UT_MatrixF &changes)
bool jsonSaveUBasis (UT_JSONWriter &w) const
bool jsonSaveUBasis (UT_JSONValue &v) const
bool jsonSaveVBasis (UT_JSONWriter &w) const
bool jsonSaveVBasis (UT_JSONValue &v) const
bool jsonLoadUBasis (UT_JSONParser &p)
bool jsonLoadUBasis (UT_JSONParser &p, const UT_JSONValue &v)
bool jsonLoadVBasis (UT_JSONParser &p)
bool jsonLoadVBasis (UT_JSONParser &p, const UT_JSONValue &v)

Static Public Member Functions

static void dehomogenizeData (GA_Offset *vertices, GA_AttributeRefMap &hlist, int count)
static void dehomogenizeData (UT_Vector4 *pos, int count)

Protected Member Functions

virtual void copyOffsetPrimitive (const GEO_Primitive *src, int basept)
virtual bool savePrivateH9 (ostream &os, bool binary) const
virtual bool saveExtraH9 (ostream &, bool binary) const
virtual bool loadPrivateH9 (UT_IStream &is)
virtual bool loadExtraH9 (UT_IStream &)
virtual bool validate (void) const
void mergeAttachProfilesU (const GEO_TPSurf &tpsurf)
void mergeAttachProfilesV (const GEO_TPSurf &tpsurf)
float stepSize (float start, float stop, int count) const
virtual GA_BasisnewBasis (void) const =0
virtual bool evaluatePointRefMap (GA_Offset result_vtx, GA_AttributeRefMap &hlist, fpreal u, fpreal v, uint du, uint dv) const
virtual int evaluatePointV4 (UT_Vector4 &pos, float u, float v=0, unsigned du=0, unsigned dv=0) const
virtual bool evaluateIndexRefMap (fpreal u, fpreal v, GA_Offset result_vtx, GA_AttributeRefMap &hlist, unsigned du, unsigned dv) const
virtual int evaluateIndexV4 (float iu, float iv, UT_Vector4 &pos, unsigned du=0, unsigned dv=0) const
virtual void spanRefineURefMap (GA_AttributeRefMap &map, int ndivs=1)
virtual void spanRefineUInt (int numdivs=1)
virtual void spanRefineVRefMap (GA_AttributeRefMap &map, int ndivs=1)
virtual void spanRefineVInt (int numdivs=1)
virtual int raiseOrderUInt (int neworder)=0
virtual int raiseOrderVInt (int neworder)=0
virtual int raiseOrderURefMap (int neworder, GA_AttributeRefMap &map)=0
virtual int raiseOrderVRefMap (int neworder, GA_AttributeRefMap &map)=0
virtual int localIntrinsicTupleSize (const GA_IntrinsicEval &eval) const
virtual int localGetIntrinsicS (const GA_IntrinsicEval &eval, UT_String &value) const
virtual int localGetIntrinsicSA (const GA_IntrinsicEval &eval, UT_StringArray &value) const
virtual int localGetIntrinsicI (const GA_IntrinsicEval &eval, int64 *value, GA_Size size) const
virtual int localGetIntrinsicF (const GA_IntrinsicEval &eval, fpreal *value, GA_Size size) const

Static Protected Member Functions

static GA_PrimitiveFamilyMask buildFamilyMask ()
static
GA_IntrinsicManager::Registrar 
registerIntrinsics (GA_PrimitiveDefinition &defn)

Protected Attributes

GA_BasismyUBasis
GA_BasismyVBasis

Friends

ostream & operator<< (ostream &os, const GEO_TPSurf &d)


Detailed Description

Definition at line 44 of file GEO_TPSurf.h.


Constructor & Destructor Documentation

GEO_TPSurf::GEO_TPSurf ( GEO_Detail d,
GA_Offset  offset = GA_INVALID_OFFSET,
int  m = 0,
int  n = 0 
)

virtual GEO_TPSurf::~GEO_TPSurf (  )  [virtual]


Member Function Documentation

int GEO_TPSurf::applyConstraints ( UT_MatrixF changes,
const UT_Vector uparam,
const UT_Vector vparam,
const UT_IntArray udervs,
const UT_IntArray vdervs,
const UT_IntArray cv_index,
const UT_MatrixF soln 
)

float GEO_TPSurf::arcLength ( float  u0,
float  v0,
float  u1,
float  v1,
int  divs = 10 
) const

virtual int GEO_TPSurf::attachU ( const GEO_Hull hull,
int  blend = 1,
float  bias = 0.5f,
float  tolerance = 1.0f,
int  unrefine = 1,
GA_PointGroup ptgroup = 0 
) [virtual]

Implements GEO_Hull.

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::attachV ( const GEO_Hull hull,
int  blend = 1,
float  bias = 0.5f,
float  tolerance = 1.0f,
int  unrefine = 1,
GA_PointGroup ptgroup = 0 
) [virtual]

Implements GEO_Hull.

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::breakpointRangeOfCV ( int  i,
int  j,
int &  minbkpu,
int &  maxbkpu,
int &  minbkpv,
int &  maxbkpv 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

static GA_PrimitiveFamilyMask GEO_TPSurf::buildFamilyMask (  )  [inline, static, protected]

Reimplemented from GEO_Hull.

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

Definition at line 599 of file GEO_TPSurf.h.

int GEO_TPSurf::buildGreville ( unsigned  r,
unsigned  c 
)

int GEO_TPSurf::buildGrevilles ( int  resize = 1  ) 

virtual void GEO_TPSurf::changedVertices ( void   )  [pure virtual]

Implemented in GU_PrimNURBSurf, and GU_PrimRBezSurf.

GA_RWAttributeRef GEO_TPSurf::chordLenTexture ( GA_RWAttributeRef  txtoff,
int  ptattrib 
)

int GEO_TPSurf::chordUBasis ( float  v,
GA_Basis ub,
int  voff = -1 
) const

int GEO_TPSurf::chordVBasis ( float  u,
GA_Basis vb,
int  uoff = -1 
) const

virtual void GEO_TPSurf::clearForDeletion (  )  [virtual]

Reimplemented from GEO_Hull.

void GEO_TPSurf::clearGrevilles ( void   )  [inline]

Definition at line 285 of file GEO_TPSurf.h.

float GEO_TPSurf::computeBValue ( float  u,
float  v,
int  uoff,
int  voff 
) const

float GEO_TPSurf::computeUBValue ( float  u,
int  uoff 
) const

int GEO_TPSurf::computeUConstCVs ( float  u,
UT_Vector4 cvs,
int  uoffset = -1 
) const

int GEO_TPSurf::computeUConstCVs ( float  u,
GEO_Vertex **  results,
GA_AttributeRefMap map,
int  uoffset = -1 
) const

SYS_DEPRECATED int GEO_TPSurf::computeUConstCVs ( float  u,
GEO_Vertex **  results,
GEO_AttributeHandleList hlist,
int  uoffset = -1 
) const

float GEO_TPSurf::computeVBValue ( float  v,
int  voff 
) const

int GEO_TPSurf::computeVConstCVs ( float  v,
UT_Vector4 cvs,
int  voffset = -1 
) const

int GEO_TPSurf::computeVConstCVs ( float  u,
GEO_Vertex **  results,
GA_AttributeRefMap map,
int  uoffset = -1 
) const

SYS_DEPRECATED int GEO_TPSurf::computeVConstCVs ( float  u,
GEO_Vertex **  results,
GEO_AttributeHandleList hlist,
int  uoffset = -1 
) const

virtual GEO_Primitive* GEO_TPSurf::copy ( int  preserve_shared_pts = 0  )  const [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::copyOffsetPrimitive ( const GEO_Primitive src,
int  basept 
) [protected, virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::copyPrimitive ( const GEO_Primitive src,
GEO_Point **  ptredirect 
) [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::copyUnwiredForMerge ( const GA_Primitive src,
const GA_MergeMap map 
) [virtual]

Copy the specified primitive as part of the merge. The source primitive will be of the same type.

Since the vertex offsets will change for the merged geometry, the map should be used to lookup the new vertex offsets. For example

    map.mapDestFromSource( GA_ATTRIB_VERTEX, source_vertex );

See also:
GA_MergeMap

Reimplemented from GEO_Hull.

int GEO_TPSurf::createUConstProfile ( float  u,
float  growtip = 0.0f 
)

int GEO_TPSurf::createVConstProfile ( float  v,
float  growtip = 0.0f 
)

int GEO_TPSurf::curvature ( float  u,
float  v,
float &  curv 
) const

static void GEO_TPSurf::dehomogenizeData ( UT_Vector4 pos,
int  count 
) [static]

static void GEO_TPSurf::dehomogenizeData ( GA_Offset vertices,
GA_AttributeRefMap hlist,
int  count 
) [static]

virtual int GEO_TPSurf::domainRangeOfCV ( int  i,
int  j,
int &  minuk,
int &  maxuk,
int &  minvk,
int &  maxvk 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

int GEO_TPSurf::duApprox ( int  uIdx,
int  vIdx,
UT_Vector3 du,
int  normalize = 1,
float  precision = 0.008F 
) const

int GEO_TPSurf::dvApprox ( int  uIdx,
int  vIdx,
UT_Vector3 du,
int  normalize = 1,
float  precision = 0.008F 
) const

int GEO_TPSurf::evaluate ( float  u,
float  v,
UT_Vector4 pos,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const

bool GEO_TPSurf::evaluate ( fpreal  u,
fpreal  v,
GA_Offset  result_vtx,
GA_AttributeRefMap hlist,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const

SYS_DEPRECATED bool GEO_TPSurf::evaluate ( fpreal  u,
fpreal  v,
GEO_Vertex  result,
GEO_AttributeHandleList hlist,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const

virtual int GEO_TPSurf::evaluateBasis ( float  u,
float  v,
float *  ubvals,
float *  vbvals,
int &  rowoffset,
int &  coloffset,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::evaluateBasisDerivs ( float  u,
float  v,
float  ubmatx[][GA_MAXORDER],
float  vbmatx[][GA_MAXORDER],
int &  rowoffset,
int &  coloffset,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

template<typename T >
bool GEO_TPSurf::evaluateHomogeneous ( fpreal  u,
fpreal  v,
const GA_ROGenericHandleVertex< T > &  h,
T &  pos,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const [inline]

int GEO_TPSurf::evaluateHomogeneous ( float  u,
float  v,
UT_Vector4 pos,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const

SYS_DEPRECATED bool GEO_TPSurf::evaluateHomogeneous ( fpreal  u,
fpreal  v,
GEO_Vertex  result,
GEO_AttributeHandleList hlist,
unsigned  du = 0,
unsigned  dv = 0,
int  uoffset = -1,
int  voffset = -1 
) const

virtual bool GEO_TPSurf::evaluateIndexRefMap ( fpreal  u,
fpreal  v,
GA_Offset  result_vtx,
GA_AttributeRefMap hlist,
unsigned  du,
unsigned  dv 
) const [protected, virtual]

Reimplemented from GEO_Hull.

virtual int GEO_TPSurf::evaluateIndexV4 ( float  iu,
float  iv,
UT_Vector4 pos,
unsigned  du = 0,
unsigned  dv = 0 
) const [protected, virtual]

Reimplemented from GEO_Hull.

template<typename T >
bool GEO_TPSurf::evaluateMesh ( const UT_FloatArray uvals,
const UT_FloatArray vvals,
const GA_ROGenericHandleVertex< T > &  h,
T *  pos,
bool  transpose = false,
unsigned  du = 0,
unsigned  dv = 0 
) const [inline]

bool GEO_TPSurf::evaluateMesh ( const UT_FloatArray uvals,
const UT_FloatArray vvals,
GEO_WorkVertexArray verts,
GEO_AttributeHandleList hlist,
bool  transpose = false,
unsigned  du = 0,
unsigned  dv = 0 
) const

bool GEO_TPSurf::evaluateMesh ( const UT_FloatArray uvals,
const UT_FloatArray vvals,
UT_Vector4 pos,
bool  transpose = false,
unsigned  du = 0,
unsigned  dv = 0 
) const

virtual int GEO_TPSurf::evaluateNormal ( float  u,
float  v,
UT_Vector3 nml 
) const [virtual]

Reimplemented from GEO_Hull.

virtual bool GEO_TPSurf::evaluatePointRefMap ( GA_Offset  result_vtx,
GA_AttributeRefMap hlist,
fpreal  u,
fpreal  v,
uint  du,
uint  dv 
) const [protected, virtual]

Implements GEO_Primitive.

virtual int GEO_TPSurf::evaluatePointV4 ( UT_Vector4 pos,
float  u,
float  v = 0,
unsigned  du = 0,
unsigned  dv = 0 
) const [protected, virtual]

Evaluate the position for the given parametric coordinates (with the given derivatives). Return 0 if successful, or -1 if failure. The default implementation returns {0,0,0,0};

Reimplemented from GEO_Primitive.

virtual int GEO_TPSurf::evaluateUBasis ( float  u,
float *  ubvals,
int &  coloffset,
unsigned  du = 0,
int  uoffset = -1 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::evaluateVBasis ( float  v,
float *  vbvals,
int &  rowoffset,
unsigned  dv = 0,
int  voffset = -1 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual GEO_TPSurf* GEO_TPSurf::extract ( float  ustart,
float  ustop,
float  vstart,
float  vstop 
) const [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

void GEO_TPSurf::fillBreakParameters ( UT_FloatArray uvals,
UT_FloatArray vvals,
int  ustartidx,
int  ustopidx,
int  vstartidx,
int  vstopidx,
int  ulod,
int  vlod 
) const

const GEO_Greville& GEO_TPSurf::getGreville ( unsigned int  r,
unsigned int  c 
) const [inline]

Definition at line 288 of file GEO_TPSurf.h.

virtual unsigned GEO_TPSurf::getNumSecondaryDetails (  )  const [virtual]

A primitive may support any number of secondary details.

Reimplemented from GA_Primitive.

virtual void GEO_TPSurf::getRangeBBox ( const UT_Interval u,
const UT_Interval v,
UT_BoundingBox bbox,
const GA_ROHandleV4 h 
) const [pure virtual]

Implemented in GU_PrimNURBSurf, and GU_PrimRBezSurf.

virtual GA_Detail* GEO_TPSurf::getSecondaryDetail ( GA_Index  i  )  [virtual]

Reimplemented from GA_Primitive.

virtual const GA_Detail* GEO_TPSurf::getSecondaryDetail ( GA_Index  i  )  const [virtual]

Reimplemented from GA_Primitive.

GA_Basis* GEO_TPSurf::getUBasis ( void   )  const [inline]

Definition at line 412 of file GEO_TPSurf.h.

unsigned GEO_TPSurf::getUDim ( void   )  const [inline]

Definition at line 420 of file GEO_TPSurf.h.

void GEO_TPSurf::getUGrevilles ( UT_FloatArray ugrevilles  ) 

unsigned GEO_TPSurf::getUOrder ( void   )  const [inline]

Definition at line 416 of file GEO_TPSurf.h.

GA_Basis* GEO_TPSurf::getVBasis ( void   )  const [inline]

Definition at line 413 of file GEO_TPSurf.h.

unsigned GEO_TPSurf::getVDim ( void   )  const [inline]

Definition at line 421 of file GEO_TPSurf.h.

void GEO_TPSurf::getVGrevilles ( UT_FloatArray vgrevilles  ) 

unsigned GEO_TPSurf::getVOrder ( void   )  const [inline]

Definition at line 417 of file GEO_TPSurf.h.

float GEO_TPSurf::getWeight ( unsigned int  r,
unsigned int  c 
) const

GA_RWAttributeRef GEO_TPSurf::grevilleTexture ( GA_RWAttributeRef  txtoff,
int  ptattrib 
)

unsigned GEO_TPSurf::hasGreville ( void   )  const [inline]

Definition at line 295 of file GEO_TPSurf.h.

int GEO_TPSurf::hasProfiles ( void   )  const

virtual bool GEO_TPSurf::isDegenerate ( void   )  const [virtual]

Is the primitive degenerate.

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::isolate ( void   )  [virtual]

Method to isolate a pasted surface.

Reimplemented from GEO_Primitive.

int GEO_TPSurf::isPasted ( void   )  const [inline]

Definition at line 523 of file GEO_TPSurf.h.

int GEO_TPSurf::isRational (  )  const

bool GEO_TPSurf::jsonLoadUBasis ( UT_JSONParser p,
const UT_JSONValue v 
)

Method to load/save basis values.

bool GEO_TPSurf::jsonLoadUBasis ( UT_JSONParser p  ) 

Method to load/save basis values.

bool GEO_TPSurf::jsonLoadVBasis ( UT_JSONParser p,
const UT_JSONValue v 
)

Method to load/save basis values.

bool GEO_TPSurf::jsonLoadVBasis ( UT_JSONParser p  ) 

Method to load/save basis values.

bool GEO_TPSurf::jsonSaveUBasis ( UT_JSONValue v  )  const

Method to load/save basis values.

bool GEO_TPSurf::jsonSaveUBasis ( UT_JSONWriter w  )  const

Method to load/save basis values.

bool GEO_TPSurf::jsonSaveVBasis ( UT_JSONValue v  )  const

Method to load/save basis values.

bool GEO_TPSurf::jsonSaveVBasis ( UT_JSONWriter w  )  const

Method to load/save basis values.

virtual bool GEO_TPSurf::loadExtraH9 ( UT_IStream  )  [protected, virtual]

Implements GEO_Hull.

virtual bool GEO_TPSurf::loadPrivateH9 ( UT_IStream is  )  [protected, virtual]

Implements GEO_Hull.

virtual int GEO_TPSurf::localGetIntrinsicF ( const GA_IntrinsicEval eval,
fpreal value,
GA_Size  size 
) const [protected, virtual]

Virtual implementation of intrinsic attributes. See GA_IntrinsicEval for further details.

Note:
When implementing support for string intrinsic attributes, please ensure to implement for all methods (localGetIntrinsicS, localGetIntrinsicSA for reading and localSetIntrinsicSA, localSetIntrinsicSS for writing). You should do this even if the string tuple size is 1.

Reimplemented from GA_Primitive.

virtual int GEO_TPSurf::localGetIntrinsicI ( const GA_IntrinsicEval eval,
int64 val,
GA_Size  sz 
) const [protected, virtual]

Intrinsic evaluation

Reimplemented from GEO_Hull.

virtual int GEO_TPSurf::localGetIntrinsicS ( const GA_IntrinsicEval eval,
UT_String s 
) const [protected, virtual]

Intrinsic evaluation

Reimplemented from GEO_Hull.

virtual int GEO_TPSurf::localGetIntrinsicSA ( const GA_IntrinsicEval eval,
UT_StringArray s 
) const [protected, virtual]

Intrinsic evaluation

Reimplemented from GEO_Hull.

virtual int GEO_TPSurf::localIntrinsicTupleSize ( const GA_IntrinsicEval eval  )  const [protected, virtual]

Intrinsic evaluation

Reimplemented from GEO_Hull.

void GEO_TPSurf::mapUBasis ( float  orig,
float  len 
)

void GEO_TPSurf::mapVBasis ( float  orig,
float  len 
)

void GEO_TPSurf::mergeAttachProfilesU ( const GEO_TPSurf tpsurf  )  [protected]

void GEO_TPSurf::mergeAttachProfilesV ( const GEO_TPSurf tpsurf  )  [protected]

void GEO_TPSurf::mergeProfiles ( const GEO_TPSurf tpsurf,
int  onlyvisible = 0 
)

virtual GA_Basis* GEO_TPSurf::newBasis ( void   )  const [protected, pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::normalIndex ( float  iu,
float  iv,
UT_Vector3 nml 
) const [virtual]

Reimplemented from GEO_Hull.

void GEO_TPSurf::normalizeDomain ( float  len = 0.F,
float *  newuorigin = 0,
float *  newvorigin = 0 
)

void GEO_TPSurf::normalizeWeights (  ) 

virtual int GEO_TPSurf::parametricBBox ( float  u,
float  v,
float *  u0,
float *  u1,
float *  v0,
float *  v1 
) [virtual]

Reimplemented from GEO_Hull.

void GEO_TPSurf::pastedSurface ( GEO_PasteSurf p  )  [inline]

Definition at line 527 of file GEO_TPSurf.h.

GEO_PasteSurf* GEO_TPSurf::pastedSurface ( void   )  const [inline]

Definition at line 526 of file GEO_TPSurf.h.

GEO_Profiles* GEO_TPSurf::profiles ( void   )  const [inline]

Definition at line 520 of file GEO_TPSurf.h.

GEO_Profiles* GEO_TPSurf::profiles ( int  create = 1  ) 

int GEO_TPSurf::raiseOrderU ( int  neworder,
GA_AttributeRefMap map 
) [inline]

Definition at line 455 of file GEO_TPSurf.h.

SYS_DEPRECATED int GEO_TPSurf::raiseOrderU ( int  neworder,
GEO_AttributeHandleList hlist 
)

int GEO_TPSurf::raiseOrderU ( int  neworder  )  [inline]

Definition at line 447 of file GEO_TPSurf.h.

virtual int GEO_TPSurf::raiseOrderUInt ( int  neworder  )  [protected, pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::raiseOrderURefMap ( int  neworder,
GA_AttributeRefMap map 
) [protected, pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

int GEO_TPSurf::raiseOrderV ( int  neworder,
GA_AttributeRefMap map 
) [inline]

Definition at line 458 of file GEO_TPSurf.h.

SYS_DEPRECATED int GEO_TPSurf::raiseOrderV ( int  neworder,
GEO_AttributeHandleList hlist 
)

int GEO_TPSurf::raiseOrderV ( int  neworder  )  [inline]

Definition at line 451 of file GEO_TPSurf.h.

virtual int GEO_TPSurf::raiseOrderVInt ( int  neworder  )  [protected, pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::raiseOrderVRefMap ( int  neworder,
GA_AttributeRefMap map 
) [protected, pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual void GEO_TPSurf::realToUnitDomain ( float  u_real,
float  v_real,
float &  u_unit,
float &  v_unit 
) const [virtual]

Reimplemented from GEO_Hull.

virtual int GEO_TPSurf::recordChange ( unsigned  r,
unsigned  c 
) [virtual]

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::recordChanges ( unsigned short  basisChange = 0,
unsigned short  sizeChange = 0 
) [virtual]

void GEO_TPSurf::refineBelt ( float  ubwidth = 0.4F,
float  vbwidth = 0.4F,
int  ubdivs = 2,
int  vbdivs = 2 
)

void GEO_TPSurf::refineRange ( const UT_BoundingRect rect,
float  tol,
float *&  uunits,
float *&  vunits,
int &  udivs,
int &  vdivs,
UT_FloatArray uunrefineranges,
UT_FloatArray vunrefineranges 
)

static GA_IntrinsicManager::Registrar GEO_TPSurf::registerIntrinsics ( GA_PrimitiveDefinition defn  )  [static, protected]

All subclasses should call this method to register the surface intrinsics.

See also:
GA_IntrinsicManager

Reimplemented from GEO_Hull.

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual void GEO_TPSurf::reparameterizeU ( GA_ParameterizationType  ptype  )  [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual void GEO_TPSurf::reparameterizeV ( GA_ParameterizationType  ptype  )  [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual void GEO_TPSurf::reverseU ( void   )  [virtual]

Reimplemented from GEO_Hull.

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual void GEO_TPSurf::reverseV ( void   )  [virtual]

Reimplemented from GEO_Hull.

Reimplemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual bool GEO_TPSurf::saveExtraH9 ( ostream &  ,
bool  binary 
) const [protected, virtual]

Implements GEO_Hull.

virtual bool GEO_TPSurf::savePrivateH9 ( ostream &  os,
bool  binary 
) const [protected, virtual]

Implements GEO_Hull.

int GEO_TPSurf::setCV ( unsigned  r,
unsigned  c,
const UT_Vector4 v 
)

int GEO_TPSurf::setGreville ( unsigned int  r,
unsigned int  c 
)

int GEO_TPSurf::setGrevilles ( void   ) 

int GEO_TPSurf::setUBasis ( GA_Basis ub  )  [inline]

Definition at line 394 of file GEO_TPSurf.h.

int GEO_TPSurf::setVBasis ( GA_Basis vb  )  [inline]

Definition at line 403 of file GEO_TPSurf.h.

int GEO_TPSurf::setWeight ( unsigned int  r,
unsigned int  c,
float  w 
)

int GEO_TPSurf::solveAndApplyConstraints ( const UT_Vector uparam,
const UT_Vector vparam,
const UT_IntArray udervs,
const UT_IntArray vdervs,
UT_MatrixF changes 
)

int GEO_TPSurf::solveConstraints ( const UT_Vector uparam,
const UT_Vector vparam,
const UT_IntArray udervs,
const UT_IntArray vdervs,
UT_MatrixF soln,
UT_IntArray cv_idx 
)

virtual void GEO_TPSurf::spanRefineUInt ( int  numdivs = 1  )  [protected, virtual]

Implements GEO_Hull.

virtual void GEO_TPSurf::spanRefineURefMap ( GA_AttributeRefMap map,
int  ndivs = 1 
) [protected, virtual]

Implements GEO_Hull.

virtual void GEO_TPSurf::spanRefineVInt ( int  numdivs = 1  )  [protected, virtual]

Implements GEO_Hull.

virtual void GEO_TPSurf::spanRefineVRefMap ( GA_AttributeRefMap map,
int  ndivs = 1 
) [protected, virtual]

Implements GEO_Hull.

float GEO_TPSurf::stepSize ( float  start,
float  stop,
int  count 
) const [inline, protected]

Definition at line 644 of file GEO_TPSurf.h.

virtual void GEO_TPSurf::subdivide ( int  numdivs,
GA_PointGroup ptgroup = 0 
) [virtual]

Reimplemented from GEO_Hull.

virtual int GEO_TPSurf::transformBreakpoints ( const UT_IntArray uindices,
const UT_IntArray vindices,
const UT_Matrix4 matx,
int  fixbkpts = 1,
GA_PointGroup ptgroup = NULL,
GEO_Delta geodelta = 0 
) [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

virtual int GEO_TPSurf::translateBreakpoints ( const UT_IntArray uindices,
const UT_IntArray vindices,
const UT_Vector3 delta,
int  fixbkpts = 1,
GA_PointGroup ptgroup = NULL,
GEO_Delta geodelta = 0 
) [pure virtual]

Implemented in GEO_PrimNURBSurf, and GEO_PrimRBezSurf.

GA_RWAttributeRef GEO_TPSurf::uniformTexture ( GA_RWAttributeRef  txtoff,
int  ptattrib 
)

virtual void GEO_TPSurf::unitToRealDomain ( float  u_unit,
float  v_unit,
float &  u_real,
float &  v_real 
) const [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::unitToRealSequenceU ( float *  uunit,
float *  ureal,
int  ulen 
) const [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::unitToRealSequenceV ( float *  vunit,
float *  vreal,
int  vlen 
) const [virtual]

Reimplemented from GEO_Hull.

int GEO_TPSurf::updateDisplacement ( const GEO_Point ppt,
int  updatekids = 1 
)

int GEO_TPSurf::updateDisplacement ( GA_Offset  ptoff,
int  updatekids = 1 
)

virtual bool GEO_TPSurf::validate ( void   )  const [protected, virtual]

Implements GEO_Hull.

virtual void GEO_TPSurf::validUInterval ( int &  a,
int &  b 
) const [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::validURange ( float &  ua,
float &  ub 
) const [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::validVInterval ( int &  a,
int &  b 
) const [virtual]

Reimplemented from GEO_Hull.

virtual void GEO_TPSurf::validVRange ( float &  va,
float &  vb 
) const [virtual]

Reimplemented from GEO_Hull.

void GEO_TPSurf::weights ( unsigned short  onOff  )  [virtual]

Reimplemented from GEO_Hull.


Friends And Related Function Documentation

ostream& operator<< ( ostream &  os,
const GEO_TPSurf d 
) [friend]

Definition at line 704 of file GEO_TPSurf.h.


Member Data Documentation

Definition at line 595 of file GEO_TPSurf.h.

Definition at line 596 of file GEO_TPSurf.h.


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

Generated on Thu Jan 31 00:31:11 2013 for HDK by  doxygen 1.5.9