GU_PrimPoly Class Reference

#include <GU_PrimPoly.h>

Inheritance diagram for GU_PrimPoly:

GEO_PrimPoly GU_Primitive GEO_Face GEO_TriMesh GEO_Primitive GB_Primitive GB_AttributeElem GB_Element

List of all members.

Public Member Functions

 GU_PrimPoly (GU_Detail *gdp)
virtual ~GU_PrimPoly ()
virtual void * castTo (void) const
virtual const GEO_PrimitivecastToGeo (void) const
GEO_Primitiveconvert (GU_ConvertParms &parms, GB_PointGroup *usedpts=0)
GEO_PrimitiveconvertNew (GU_ConvertParms &parms)
GEO_HullconvertToSurfNew (GU_ConvertParms &parms)
GEO_HullconvertToPotatoChip (void)
GEO_HullconvertToTrim (GU_ConvertParms &parms)
GEO_PrimRBezCurveconvertToBezierNew (int order, int interphull=1)
GEO_PrimNURBCurveconvertToNURBNew (int order, int interphull=1)
GEO_PrimCircleconvertToCircleNew ()
GEO_PrimTriBezierconvertToTriBezier ()
GU_PrimPolycut (float u1, float u2, int &ind1, int &ind2, int keep)
void openAt (float u)
GEO_Facereconfigure (unsigned type, int order, int open, int nonrational) const
virtual void normal (const GB_AttributeRef &noff) const
virtual void normal (UT_Vector3Array &output) const
int isPlanar (float tolerance=0.0001F) const
bool isConvex (float tolerance=0.0001F) const
virtual int intersectRay (const UT_Vector3 &o, const UT_Vector3 &d, float tmax=1E17F, float tol=1E-12F, float *distance=0, UT_Vector3 *pos=0, UT_Vector3 *nml=0, int accurate=0, float *u=0, float *v=0, int ignoretrim=1) const
virtual int intersect (GU_Primitive &prim, UT_RefArray< GU_RayInfoHit > &hitList, float tol=0.01F, int ignoretrim=1)
virtual void clip (UT_Vector3 &normal, float d=0, int normalize=1, GEO_Primitive *prim=0, GB_PrimitiveGroup *clipgrp=0)
void crease (UT_Vector3 &normal, float d=0, int normalize=1, int outputGroups=0, GB_PrimitiveGroup *above=0, GB_PrimitiveGroup *below=0)
int removeEdges (const UT_BitArray &edgemap, UT_IntArray &, bool del_bridges=true)
int removeEdges (const UT_BitArray &edgemap, GEO_Face *&newpoly, bool del_bridges=true)
int removeEdges (const UT_BitArray &edgemap, UT_PtrArray< GEO_Face * > &newpoly, bool del_bridges=true)
virtual GU_DisplayCachegetDisplayCache () const
virtual int buildDisplayCache (GU_CacheParms &parms)
virtual void destroyCache ()
virtual void notifyCache (int type)
virtual void notifyCache (int type, const GEO_Point &ppt)
virtual void notifyCache (int type, const GB_PointGroup &g)
virtual void notifyCache (int type, const UT_Matrix4 &xform, int push)
virtual void notifyCache (int type, const UT_Vector3 &delta)
virtual GU_DisplayMeshgetDisplayMesh (const GB_AttributeRef &noff, float lod)
virtual GU_RayIntersectcreateRayCache (int &persistent)
virtual GU_RayIntersectgetRayCache () const
virtual int buildRayCache (void)
virtual GU_RayIntersectcreatePolyRayCache (int &persistent)
virtual GU_RayIntersectgetPolyRayCache () const
virtual int buildPolyRayCache (void)
int isWindingReversed (const GEO_PrimPoly &poly)

Static Public Member Functions

static GU_PrimPolybuild (GU_Detail *gudp, int npts, int open=GU_POLY_CLOSED, int appendPts=1)


Detailed Description

Examples:

SIM/SIM_ForceOrbit.C, SIM/SNOW_Solver.C, SOP/SOP_BrushHairLen.C, SOP/SOP_Star.C, VRAY/VRAY_DemoMountain.C, and VRAY/VRAY_DemoSprite.C.

Definition at line 50 of file GU_PrimPoly.h.


Constructor & Destructor Documentation

GU_PrimPoly::GU_PrimPoly ( GU_Detail gdp  )  [inline]

Definition at line 54 of file GU_PrimPoly.h.

virtual GU_PrimPoly::~GU_PrimPoly (  )  [virtual]


Member Function Documentation

static GU_PrimPoly* GU_PrimPoly::build ( GU_Detail gudp,
int  npts,
int  open = GU_POLY_CLOSED,
int  appendPts = 1 
) [static]

virtual int GU_PrimPoly::buildDisplayCache ( GU_CacheParms parms  )  [virtual]

Reimplemented from GU_Primitive.

virtual int GU_PrimPoly::buildPolyRayCache ( void   )  [virtual]

virtual int GU_PrimPoly::buildRayCache ( void   )  [virtual]

Reimplemented from GU_Primitive.

virtual void* GU_PrimPoly::castTo ( void   )  const [virtual]

Reimplemented from GEO_Primitive.

virtual const GEO_Primitive* GU_PrimPoly::castToGeo ( void   )  const [virtual]

Implements GU_Primitive.

Examples:
VRAY/VRAY_DemoSprite.C.

virtual void GU_PrimPoly::clip ( UT_Vector3 normal,
float  d = 0,
int  normalize = 1,
GEO_Primitive prim = 0,
GB_PrimitiveGroup clipgrp = 0 
) [virtual]

Reimplemented from GU_Primitive.

GEO_Primitive* GU_PrimPoly::convert ( GU_ConvertParms parms,
GB_PointGroup usedpts = 0 
) [virtual]

Implements GU_Primitive.

GEO_Primitive* GU_PrimPoly::convertNew ( GU_ConvertParms parms  )  [virtual]

Implements GU_Primitive.

GEO_PrimRBezCurve* GU_PrimPoly::convertToBezierNew ( int  order,
int  interphull = 1 
)

GEO_PrimCircle* GU_PrimPoly::convertToCircleNew (  ) 

GEO_PrimNURBCurve* GU_PrimPoly::convertToNURBNew ( int  order,
int  interphull = 1 
)

GEO_Hull* GU_PrimPoly::convertToPotatoChip ( void   ) 

GEO_Hull* GU_PrimPoly::convertToSurfNew ( GU_ConvertParms parms  ) 

GEO_PrimTriBezier* GU_PrimPoly::convertToTriBezier (  ) 

GEO_Hull* GU_PrimPoly::convertToTrim ( GU_ConvertParms parms  ) 

void GU_PrimPoly::crease ( UT_Vector3 normal,
float  d = 0,
int  normalize = 1,
int  outputGroups = 0,
GB_PrimitiveGroup above = 0,
GB_PrimitiveGroup below = 0 
)

virtual GU_RayIntersect* GU_PrimPoly::createPolyRayCache ( int &  persistent  )  [virtual]

virtual GU_RayIntersect* GU_PrimPoly::createRayCache ( int &  persistent  )  [virtual]

Implements GU_Primitive.

GU_PrimPoly* GU_PrimPoly::cut ( float  u1,
float  u2,
int &  ind1,
int &  ind2,
int  keep 
)

virtual void GU_PrimPoly::destroyCache (  )  [virtual]

Reimplemented from GU_Primitive.

virtual GU_DisplayCache* GU_PrimPoly::getDisplayCache (  )  const [virtual]

Reimplemented from GU_Primitive.

virtual GU_DisplayMesh* GU_PrimPoly::getDisplayMesh ( const GB_AttributeRef noff,
float  lod 
) [virtual]

Reimplemented from GU_Primitive.

virtual GU_RayIntersect* GU_PrimPoly::getPolyRayCache (  )  const [virtual]

virtual GU_RayIntersect* GU_PrimPoly::getRayCache (  )  const [virtual]

Reimplemented from GU_Primitive.

virtual int GU_PrimPoly::intersect ( GU_Primitive prim,
UT_RefArray< GU_RayInfoHit > &  hitList,
float  tol = 0.01F,
int  ignoretrim = 1 
) [virtual]

Reimplemented from GU_Primitive.

virtual int GU_PrimPoly::intersectRay ( const UT_Vector3 o,
const UT_Vector3 d,
float  tmax = 1E17F,
float  tol = 1E-12F,
float *  distance = 0,
UT_Vector3 pos = 0,
UT_Vector3 nml = 0,
int  accurate = 0,
float *  u = 0,
float *  v = 0,
int  ignoretrim = 1 
) const [virtual]

Implements GU_Primitive.

bool GU_PrimPoly::isConvex ( float  tolerance = 0.0001F  )  const

int GU_PrimPoly::isPlanar ( float  tolerance = 0.0001F  )  const

int GU_PrimPoly::isWindingReversed ( const GEO_PrimPoly poly  ) 

virtual void GU_PrimPoly::normal ( UT_Vector3Array output  )  const [virtual]

Implements GU_Primitive.

virtual void GU_PrimPoly::normal ( const GB_AttributeRef noff  )  const [virtual]

Implements GU_Primitive.

virtual void GU_PrimPoly::notifyCache ( int  type,
const UT_Vector3 delta 
) [virtual]

Reimplemented from GU_Primitive.

virtual void GU_PrimPoly::notifyCache ( int  type,
const UT_Matrix4 xform,
int  push 
) [virtual]

Reimplemented from GU_Primitive.

virtual void GU_PrimPoly::notifyCache ( int  type,
const GB_PointGroup g 
) [virtual]

Reimplemented from GU_Primitive.

virtual void GU_PrimPoly::notifyCache ( int  type,
const GEO_Point ppt 
) [virtual]

Reimplemented from GU_Primitive.

virtual void GU_PrimPoly::notifyCache ( int  type  )  [virtual]

Reimplemented from GU_Primitive.

void GU_PrimPoly::openAt ( float  u  ) 

GEO_Face* GU_PrimPoly::reconfigure ( unsigned  type,
int  order,
int  open,
int  nonrational 
) const

int GU_PrimPoly::removeEdges ( const UT_BitArray edgemap,
UT_PtrArray< GEO_Face * > &  newpoly,
bool  del_bridges = true 
)

int GU_PrimPoly::removeEdges ( const UT_BitArray edgemap,
GEO_Face *&  newpoly,
bool  del_bridges = true 
)

int GU_PrimPoly::removeEdges ( const UT_BitArray edgemap,
UT_IntArray ,
bool  del_bridges = true 
) [inline]

Definition at line 150 of file GU_PrimPoly.h.


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

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