GEO_Face Class Reference

#include <GEO_Face.h>

Inheritance diagram for GEO_Face:

GEO_TriMesh GEO_Primitive GB_Primitive GB_AttributeElem GB_Element GEO_Curve GEO_PrimPoly GEO_PrimNURBCurve GEO_PrimRBezCurve GU_PrimPoly GU_PrimNURBCurve GU_PrimRBezCurve

List of all members.

Public Member Functions

 GEO_Face (GEO_Detail *d)
virtual ~GEO_Face ()
virtual unsigned getPrimitiveId () const =0
virtual UT_Vector3 computeNormal () const
virtual int save (ostream &os, int binary) const
virtual bool load (UT_IStream &is)
virtual void copyPrimitive (const GEO_Primitive *src, GEO_Point **ptredirect)
virtual GEO_Primitivecopy (int preserve_shared_pts=0) const
virtual int isDegenerate () const
virtual unsigned getOrder (void) const =0
virtual void realToUnitPair (float ureal, float vreal, float &uunit, float &vunit) const
virtual void unitToRealPair (float uunit, float vunit, float &ureal, float &vreal) const
virtual void unitLengthToUnitPair (float ulength, float vlength, float &uparm, float &vparm) const
virtual void unitToUnitLengthPair (float uparm, float vparm, float &ulength, float &vlength) const
virtual bool evaluate (fpreal u, GEO_Vertex &result, GEO_AttributeHandleList &gah, int du=0, int uOffset=-1) const
virtual int evaluate (float u, UT_Vector4 &pos, unsigned du=0, int uOffset=-1) const
virtual int SYS_DEPRECATED evaluateWAttrib (float u, UT_Vector4 &pos, GB_AttributeData &adata, const GB_FloatOffsets &foffsets, unsigned du=0, int uOffset=-1) const
virtual bool evaluatePoint (GEO_Vertex &result, GEO_AttributeHandleList &vtxdata, fpreal u, fpreal v=0, uint du=0, uint dv=0) const
virtual int evaluatePoint (UT_Vector4 &pos, float u_unit, float=0, unsigned du=0, unsigned dv=0) const
virtual int SYS_DEPRECATED evaluatePointWAttrib (UT_Vector4 &pos, GB_AttributeData &adata, const GB_FloatOffsets &foffsets, float u_unit, float=0, unsigned du=0, unsigned=0) const
virtual int evaluateNormalVector (UT_Vector3 &nml, float u, float=0) const
virtual int evaluateFrenetFrame (UT_Vector3 &x, UT_Vector3 &t, UT_Vector3 &m, UT_Vector3 &b, float u, int accurate=1, int uoffset=-1) const
virtual int evaluateBreakSegm (int ustartidx, int ustopidx, int lod, GEO_Vertex **results, GEO_AttributeHandleList &hlist, unsigned du=0) const
virtual int evaluateBreakSegm (int ustartidx, int ustopidx, int lod, UT_Vector4 *pos, unsigned du=0) const
virtual int SYS_DEPRECATED evaluateBreakSegmWAttrib (int ustartidx, int ustopidx, int lod, UT_Vector4 *pos, GB_AttributeData *adata, const GB_FloatOffsets &foffsets, unsigned du=0) const
virtual int evaluateBreakpoint (int uidx, UT_Vector4 &pos, int du=0) const =0
virtual float breakSegmIndexToDomain (int ustartidx, int ustopidx, int lod, int index) const
virtual int removeRepeatedVertices (int check_order=0, int count_only=0)
virtual int removeRepeatedPoints (float tol=0.001F, int check_order=0, int count_only=0)
virtual int unroll (int append_pts=1)
virtual int loft (int newcount, int start=-1, int stop=-1)=0
virtual int subdivide (float u, GEO_AttributeHandleList &hl)
virtual int subdivide (float u)
virtual int SYS_DEPRECATED subdivideWAttrib (float u, const GB_FloatOffsets &foffsets)
virtual int warp (float u, const UT_Vector3 &delta, GEO_AttributeHandleList &hlist, float sharpness=0.0f, float bias=-1.0f)=0
virtual int SYS_DEPRECATED warp (float u, const UT_Vector3 &delta, GB_FloatOffsets *foffsets=0, float sharpness=0.0f, float bias=-1.0f)=0
int warpAlongNormal (float u, float distance, GEO_AttributeHandleList &hlist, float sharpness, float bias)
int SYS_DEPRECATED warpAlongNormal (float u, float distance, GB_FloatOffsets *foffsets, float sharpness, float bias)
virtual int attach (const GEO_Face &face, int blend=1, float bias=0.5f, float tolerance=1.0f, int unrefine=1, GB_PointGroup *ptgroup=0)=0
virtual GD_Faceplanar (GD_Detail &dgdp, int copyxy=0) const =0
virtual float unitToRealDomain (float u_unit) const
virtual float realToUnitDomain (float u_real) const
virtual float unitLengthToUnitDomain (float ulength, float tolerance=1e-04F) const
virtual float unitToUnitLengthDomain (float uparm) const
virtual void unitToRealSequence (float *uunit, float *ureal, int ulen) const
virtual void validInterval (int &a, int &b) const
virtual void validRange (float &ua, float &ub) const
unsigned isClosed () const
virtual void close (int rounded=1, int preserveShape=0)
virtual void open (int preserveShape=0, int safe=0)
virtual int hasEdge (const GEO_Point &a, const GEO_Point &b) const
virtual int hasEdge (const GB_Edge &edge) const
virtual void edgeApply (GEO_EdgeApplyFunc apply, void *data=0)
virtual void edgeApplyIndex (GEO_EdgeApplyIndexFunc apply, void *data=0)
int getEdgeCount () const
virtual void reverse ()
void sampleEnds (int n)
virtual int cycle (int amount, int=1)
float radius () const
virtual int findEdgePoints (const GEO_Point &a, const GEO_Point &b, int *pidx0, int *pidx1) const
virtual int findEdgePoints (const GB_Edge &edge, int *pidx0, int *pidx1) const
bool hasDEdge (const GEO_Point &a, const GEO_Point &b) const
bool isBridge (const GEO_Point &a, const GEO_Point &b) const
virtual int refine (fpreal k, GEO_AttributeHandleList &gah, int i=0)
virtual int refine (float k, int=0)
virtual int SYS_DEPRECATED refineWAttrib (float k, const GB_FloatOffsets &foffsets, int=0)
virtual int pointInFace (const UT_Vector3 &pos, const UT_Vector3 *normal) const
virtual float uvDist (float u1, float v1, float u2, float v2) const
virtual void weights (unsigned short onOff)
virtual int breakCount () const =0
virtual float calcVolume (UT_Vector3 &refpt) const
virtual float calcArea () const
virtual float calcPerimeter () const

Static Public Member Functions

static void unitToRealAdjust (float *uunit, float *ureal, int ulen, int num)
static fpreal getIndices (fpreal c, int &c1, int &c2, int maxIndex, int wrap)

Protected Member Functions

virtual void copyOffsetPrimitive (const GEO_Primitive *src, int base)
virtual int savePrivate (ostream &os, int binary) const =0
virtual bool loadPrivate (UT_IStream &is)=0
virtual int pointCanDelete (GB_Element *) const
virtual void pointDeleted (GB_Element *pt)
virtual bool validate (void) const

Protected Attributes

GEO_FaceFlags flags

Friends

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


Detailed Description

Examples:

SIM/SIM_SolverHair.C.

Definition at line 45 of file GEO_Face.h.


Constructor & Destructor Documentation

GEO_Face::GEO_Face ( GEO_Detail d  ) 

virtual GEO_Face::~GEO_Face (  )  [virtual]


Member Function Documentation

virtual int GEO_Face::attach ( const GEO_Face face,
int  blend = 1,
float  bias = 0.5f,
float  tolerance = 1.0f,
int  unrefine = 1,
GB_PointGroup ptgroup = 0 
) [pure virtual]

virtual int GEO_Face::breakCount (  )  const [pure virtual]

Implemented in GEO_Curve, and GEO_PrimPoly.

virtual float GEO_Face::breakSegmIndexToDomain ( int  ustartidx,
int  ustopidx,
int  lod,
int  index 
) const [virtual]

Reimplemented in GEO_Curve.

virtual float GEO_Face::calcArea (  )  const [virtual]

Reimplemented from GEO_Primitive.

virtual float GEO_Face::calcPerimeter (  )  const [virtual]

Reimplemented from GEO_Primitive.

virtual float GEO_Face::calcVolume ( UT_Vector3 refpt  )  const [virtual]

Reimplemented from GEO_Primitive.

virtual void GEO_Face::close ( int  rounded = 1,
int  preserveShape = 0 
) [virtual]

Reimplemented in GEO_PrimNURBCurve, and GEO_PrimRBezCurve.

virtual UT_Vector3 GEO_Face::computeNormal (  )  const [virtual]

Implements GB_Primitive.

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

Reimplemented from GEO_TriMesh.

Reimplemented in GEO_Curve.

virtual void GEO_Face::copyOffsetPrimitive ( const GEO_Primitive src,
int  base 
) [protected, virtual]

Reimplemented from GEO_TriMesh.

Reimplemented in GEO_Curve.

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

Reimplemented from GEO_TriMesh.

Reimplemented in GEO_Curve.

virtual int GEO_Face::cycle ( int  amount,
int  = 1 
) [virtual]

Reimplemented in GEO_PrimNURBCurve.

virtual void GEO_Face::edgeApply ( GEO_EdgeApplyFunc  apply,
void *  data = 0 
) [virtual]

Reimplemented from GEO_Primitive.

virtual void GEO_Face::edgeApplyIndex ( GEO_EdgeApplyIndexFunc  apply,
void *  data = 0 
) [virtual]

Reimplemented from GEO_Primitive.

virtual int GEO_Face::evaluate ( float  u,
UT_Vector4 pos,
unsigned  du = 0,
int  uOffset = -1 
) const [virtual]

Reimplemented in GEO_Curve.

virtual bool GEO_Face::evaluate ( fpreal  u,
GEO_Vertex result,
GEO_AttributeHandleList gah,
int  du = 0,
int  uOffset = -1 
) const [virtual]

virtual int GEO_Face::evaluateBreakpoint ( int  uidx,
UT_Vector4 pos,
int  du = 0 
) const [pure virtual]

virtual int GEO_Face::evaluateBreakSegm ( int  ustartidx,
int  ustopidx,
int  lod,
UT_Vector4 pos,
unsigned  du = 0 
) const [virtual]

virtual int GEO_Face::evaluateBreakSegm ( int  ustartidx,
int  ustopidx,
int  lod,
GEO_Vertex **  results,
GEO_AttributeHandleList hlist,
unsigned  du = 0 
) const [virtual]

virtual int SYS_DEPRECATED GEO_Face::evaluateBreakSegmWAttrib ( int  ustartidx,
int  ustopidx,
int  lod,
UT_Vector4 pos,
GB_AttributeData adata,
const GB_FloatOffsets foffsets,
unsigned  du = 0 
) const [virtual]

virtual int GEO_Face::evaluateFrenetFrame ( UT_Vector3 x,
UT_Vector3 t,
UT_Vector3 m,
UT_Vector3 b,
float  u,
int  accurate = 1,
int  uoffset = -1 
) const [virtual]

virtual int GEO_Face::evaluateNormalVector ( UT_Vector3 nml,
float  u,
float  = 0 
) const [virtual]

Reimplemented from GEO_Primitive.

virtual int GEO_Face::evaluatePoint ( UT_Vector4 pos,
float  u_unit,
float  = 0,
unsigned  du = 0,
unsigned  dv = 0 
) const [virtual]

Reimplemented from GEO_Primitive.

Reimplemented in GEO_Curve.

virtual bool GEO_Face::evaluatePoint ( GEO_Vertex result,
GEO_AttributeHandleList vtxdata,
fpreal  u,
fpreal  v = 0,
uint  du = 0,
uint  dv = 0 
) const [virtual]

Reimplemented from GEO_TriMesh.

virtual int SYS_DEPRECATED GEO_Face::evaluatePointWAttrib ( UT_Vector4 pos,
GB_AttributeData adata,
const GB_FloatOffsets foffsets,
float  u_unit,
float  = 0,
unsigned  du = 0,
unsigned  = 0 
) const [virtual]

Reimplemented from GEO_Primitive.

Reimplemented in GEO_Curve.

virtual int SYS_DEPRECATED GEO_Face::evaluateWAttrib ( float  u,
UT_Vector4 pos,
GB_AttributeData adata,
const GB_FloatOffsets foffsets,
unsigned  du = 0,
int  uOffset = -1 
) const [virtual]

Reimplemented in GEO_Curve.

virtual int GEO_Face::findEdgePoints ( const GB_Edge edge,
int *  pidx0,
int *  pidx1 
) const [virtual]

virtual int GEO_Face::findEdgePoints ( const GEO_Point a,
const GEO_Point b,
int *  pidx0,
int *  pidx1 
) const [virtual]

int GEO_Face::getEdgeCount (  )  const

static fpreal GEO_Face::getIndices ( fpreal  c,
int &  c1,
int &  c2,
int  maxIndex,
int  wrap 
) [static]

virtual unsigned GEO_Face::getOrder ( void   )  const [pure virtual]

Implemented in GEO_Curve, and GEO_PrimPoly.

virtual unsigned GEO_Face::getPrimitiveId (  )  const [pure virtual]

Implements GEO_TriMesh.

Implemented in GEO_PrimNURBCurve, GEO_PrimPoly, and GEO_PrimRBezCurve.

bool GEO_Face::hasDEdge ( const GEO_Point a,
const GEO_Point b 
) const

virtual int GEO_Face::hasEdge ( const GB_Edge edge  )  const [virtual]

Reimplemented from GEO_Primitive.

virtual int GEO_Face::hasEdge ( const GEO_Point a,
const GEO_Point b 
) const [virtual]

Reimplemented from GEO_Primitive.

bool GEO_Face::isBridge ( const GEO_Point a,
const GEO_Point b 
) const

True if both the directed edges a->b and b->a are inside this face

unsigned GEO_Face::isClosed (  )  const [inline]

Definition at line 253 of file GEO_Face.h.

virtual int GEO_Face::isDegenerate (  )  const [virtual]

Reimplemented from GEO_TriMesh.

Reimplemented in GEO_Curve, and GEO_PrimPoly.

virtual bool GEO_Face::load ( UT_IStream is  )  [virtual]

Reimplemented from GEO_TriMesh.

virtual bool GEO_Face::loadPrivate ( UT_IStream is  )  [protected, pure virtual]

Implements GEO_TriMesh.

Implemented in GEO_Curve, and GEO_PrimPoly.

virtual int GEO_Face::loft ( int  newcount,
int  start = -1,
int  stop = -1 
) [pure virtual]

virtual void GEO_Face::open ( int  preserveShape = 0,
int  safe = 0 
) [virtual]

Reimplemented in GEO_PrimNURBCurve, and GEO_PrimRBezCurve.

virtual GD_Face* GEO_Face::planar ( GD_Detail dgdp,
int  copyxy = 0 
) const [pure virtual]

virtual int GEO_Face::pointCanDelete ( GB_Element  )  const [protected, virtual]

Reimplemented from GEO_TriMesh.

virtual void GEO_Face::pointDeleted ( GB_Element pt  )  [protected, virtual]

Reimplemented from GEO_TriMesh.

virtual int GEO_Face::pointInFace ( const UT_Vector3 pos,
const UT_Vector3 normal 
) const [virtual]

This method determines whether the point is inside or outside the polygon. The point is assumed to be on the plane of the polygon. Note that normal is a pointer to this primitive's normal which cannot be NULL. If the point is on the boundary of the face, it is reported as being inside the face with -1 return.

float GEO_Face::radius (  )  const

virtual float GEO_Face::realToUnitDomain ( float  u_real  )  const [virtual]

Reimplemented in GEO_Curve.

virtual void GEO_Face::realToUnitPair ( float  ureal,
float  vreal,
float &  uunit,
float &  vunit 
) const [virtual]

Reimplemented from GEO_Primitive.

virtual int GEO_Face::refine ( float  k,
int  = 0 
) [virtual]

Reimplemented in GEO_PrimNURBCurve, and GEO_PrimRBezCurve.

virtual int GEO_Face::refine ( fpreal  k,
GEO_AttributeHandleList gah,
int  i = 0 
) [virtual]

Reimplemented in GEO_PrimNURBCurve, and GEO_PrimRBezCurve.

virtual int SYS_DEPRECATED GEO_Face::refineWAttrib ( float  k,
const GB_FloatOffsets foffsets,
int  = 0 
) [virtual]

Reimplemented in GEO_PrimNURBCurve, and GEO_PrimRBezCurve.

virtual int GEO_Face::removeRepeatedPoints ( float  tol = 0.001F,
int  check_order = 0,
int  count_only = 0 
) [virtual]

virtual int GEO_Face::removeRepeatedVertices ( int  check_order = 0,
int  count_only = 0 
) [virtual]

virtual void GEO_Face::reverse (  )  [virtual]

Implements GB_Primitive.

Reimplemented in GEO_Curve, GEO_PrimNURBCurve, and GEO_PrimRBezCurve.

void GEO_Face::sampleEnds ( int  n  ) 

virtual int GEO_Face::save ( ostream &  os,
int  binary 
) const [virtual]

Reimplemented from GEO_TriMesh.

virtual int GEO_Face::savePrivate ( ostream &  os,
int  binary 
) const [protected, pure virtual]

Implements GEO_TriMesh.

Implemented in GEO_Curve, and GEO_PrimPoly.

virtual int GEO_Face::subdivide ( float  u  )  [virtual]

Reimplemented in GEO_PrimNURBCurve.

virtual int GEO_Face::subdivide ( float  u,
GEO_AttributeHandleList hl 
) [virtual]

Reimplemented in GEO_PrimNURBCurve.

virtual int SYS_DEPRECATED GEO_Face::subdivideWAttrib ( float  u,
const GB_FloatOffsets foffsets 
) [virtual]

Reimplemented in GEO_PrimNURBCurve.

virtual float GEO_Face::unitLengthToUnitDomain ( float  ulength,
float  tolerance = 1e-04F 
) const [virtual]

Reimplemented in GEO_Curve, and GEO_PrimPoly.

virtual void GEO_Face::unitLengthToUnitPair ( float  ulength,
float  vlength,
float &  uparm,
float &  vparm 
) const [virtual]

Reimplemented from GEO_TriMesh.

static void GEO_Face::unitToRealAdjust ( float *  uunit,
float *  ureal,
int  ulen,
int  num 
) [static]

virtual float GEO_Face::unitToRealDomain ( float  u_unit  )  const [virtual]

Reimplemented in GEO_Curve.

virtual void GEO_Face::unitToRealPair ( float  uunit,
float  vunit,
float &  ureal,
float &  vreal 
) const [virtual]

Reimplemented from GEO_Primitive.

virtual void GEO_Face::unitToRealSequence ( float *  uunit,
float *  ureal,
int  ulen 
) const [virtual]

Reimplemented in GEO_Curve.

virtual float GEO_Face::unitToUnitLengthDomain ( float  uparm  )  const [virtual]

Reimplemented in GEO_Curve, and GEO_PrimPoly.

virtual void GEO_Face::unitToUnitLengthPair ( float  uparm,
float  vparm,
float &  ulength,
float &  vlength 
) const [virtual]

Reimplemented from GEO_TriMesh.

virtual int GEO_Face::unroll ( int  append_pts = 1  )  [virtual]

virtual float GEO_Face::uvDist ( float  u1,
float  v1,
float  u2,
float  v2 
) const [virtual]

Reimplemented from GEO_Primitive.

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

Reimplemented from GEO_TriMesh.

Reimplemented in GEO_Curve.

virtual void GEO_Face::validInterval ( int &  a,
int &  b 
) const [virtual]

Reimplemented in GEO_Curve.

virtual void GEO_Face::validRange ( float &  ua,
float &  ub 
) const [virtual]

Reimplemented in GEO_Curve.

virtual int SYS_DEPRECATED GEO_Face::warp ( float  u,
const UT_Vector3 delta,
GB_FloatOffsets foffsets = 0,
float  sharpness = 0.0f,
float  bias = -1.0f 
) [pure virtual]

virtual int GEO_Face::warp ( float  u,
const UT_Vector3 delta,
GEO_AttributeHandleList hlist,
float  sharpness = 0.0f,
float  bias = -1.0f 
) [pure virtual]

int SYS_DEPRECATED GEO_Face::warpAlongNormal ( float  u,
float  distance,
GB_FloatOffsets foffsets,
float  sharpness,
float  bias 
)

int GEO_Face::warpAlongNormal ( float  u,
float  distance,
GEO_AttributeHandleList hlist,
float  sharpness,
float  bias 
)

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

Reimplemented in GEO_Curve.


Friends And Related Function Documentation

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

Definition at line 353 of file GEO_Face.h.


Member Data Documentation

Definition at line 348 of file GEO_Face.h.


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

Generated on Mon Jan 28 00:29:21 2013 for HDK by  doxygen 1.5.9