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

#include <GU_TPSurf.h>

Static Public Member Functions

static int intersectRay (const GEO_TPSurf &surf, 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)
 
static int intersectSurf (GEO_TPSurf &surf1, GEO_TPSurf &surf2, GU_IsectCurveSet &curveset, float worldtol=1e-4F, float domaintol=1e-2F, int steps=100, bool docompact=true)
 
static int doesIntersect (const GEO_TPSurf &surf, const GEO_Primitive &prim, float worldtol=1e-4F, int nontrivial=0)
 
static int rayHit (const GEO_TPSurf &surf, const UT_Vector3 &o, const UT_Vector3 &dir, GU_RayInfo &hitinfo, GU_RayIntersect *intersect)
 
static GEO_Curve * extract (const GEO_TPSurf &surf, GU_Detail *gdp, const GD_Primitive &profile, int smooth=1, int sdivs=20, float tol=0.001F, int sharp=1, int order=4, int only_first_visible_part=0)
 
static GEO_Face * extract (const GEO_TPSurf &surf, GU_Detail *gdp, const GD_Primitive &profile, float z=0)
 
static int project (GEO_TPSurf &surf, const GEO_Face &f, const GU_ProjectParms &p, GU_RayIntersect *intersect=NULL)
 
static int project (GEO_TPSurf &surf, const GA_PrimitiveGroup &faces, const GU_ProjectParms &p, const GU_Detail *gdp=0)
 
static int findMins (const GEO_TPSurf &surf, const GEO_Face &face, int numdivs, UT_Vector3Array &domain, const GEO_Face *dface=0, UT_Vector4Array *displaces=0)
 
static int findProjects (const GEO_TPSurf &surf, GEO_Face &face, int numdivs, const UT_Vector3 &projdir, UT_Vector3Array &domain, const GEO_Face *dface=0, UT_Vector4Array *displaces=0)
 
static int create (GEO_TPSurf *surf, int rows, int cols, GEO_SurfaceType type, bool wrapu, bool wrapv, bool appendPoints=true)
 
static void evaluationInterval (const GEO_TPSurf &surf, float lodu, float lodv, float &ustart, float &ustop, int &nu, float &vstart, float &vstop, int &nv)
 
static int evaluateSurface (const GEO_TPSurf &surf, GEO_ConvertMethod &method, UT_Vector4Array &pos, int &nu, int &nv, UT_FloatArray *uval=0, UT_FloatArray *vval=0)
 
static GEO_Primitive * convert (GEO_TPSurf *surf, GEO_ConvertParms &parms, GA_PointGroup *usedpts)
 
static GEO_Primitive * convertNew (GEO_TPSurf *surf, GEO_ConvertParms &parms)
 
static GEO_Primitive * convertToPoly (GEO_TPSurf *surf, GEO_ConvertParms &parms)
 

Detailed Description

Definition at line 75 of file GU_TPSurf.h.

Member Function Documentation

static GEO_Primitive* GU_TPSurf::convert ( GEO_TPSurf *  surf,
GEO_ConvertParms &  parms,
GA_PointGroup *  usedpts 
)
static
static GEO_Primitive* GU_TPSurf::convertNew ( GEO_TPSurf *  surf,
GEO_ConvertParms &  parms 
)
static
static GEO_Primitive* GU_TPSurf::convertToPoly ( GEO_TPSurf *  surf,
GEO_ConvertParms &  parms 
)
static
static int GU_TPSurf::create ( GEO_TPSurf *  surf,
int  rows,
int  cols,
GEO_SurfaceType  type,
bool  wrapu,
bool  wrapv,
bool  appendPoints = true 
)
static
static int GU_TPSurf::doesIntersect ( const GEO_TPSurf &  surf,
const GEO_Primitive &  prim,
float  worldtol = 1e-4F,
int  nontrivial = 0 
)
static
static int GU_TPSurf::evaluateSurface ( const GEO_TPSurf &  surf,
GEO_ConvertMethod &  method,
UT_Vector4Array &  pos,
int &  nu,
int &  nv,
UT_FloatArray *  uval = 0,
UT_FloatArray *  vval = 0 
)
static
static void GU_TPSurf::evaluationInterval ( const GEO_TPSurf &  surf,
float  lodu,
float  lodv,
float &  ustart,
float &  ustop,
int &  nu,
float &  vstart,
float &  vstop,
int &  nv 
)
static
static GEO_Curve* GU_TPSurf::extract ( const GEO_TPSurf &  surf,
GU_Detail *  gdp,
const GD_Primitive &  profile,
int  smooth = 1,
int  sdivs = 20,
float  tol = 0.001F,
int  sharp = 1,
int  order = 4,
int  only_first_visible_part = 0 
)
static

Extract one or more (if not fully inside the domain) 3D curve(s) out of a profile's image onto the surface. Return the first 3D curve if successful and 0 otherwise. Only one (the first visible piece of the curve) will be extracted if only_first_visible_part is set. The second extract doeas a parametric extract, so the whole profile will be extracted regardless of its visibility. The resulting 3D curve will be a planar XY curve at the given z elevation.

static GEO_Face* GU_TPSurf::extract ( const GEO_TPSurf &  surf,
GU_Detail *  gdp,
const GD_Primitive &  profile,
float  z = 0 
)
static
static int GU_TPSurf::findMins ( const GEO_TPSurf &  surf,
const GEO_Face &  face,
int  numdivs,
UT_Vector3Array &  domain,
const GEO_Face *  dface = 0,
UT_Vector4Array *  displaces = 0 
)
static
static int GU_TPSurf::findProjects ( const GEO_TPSurf &  surf,
GEO_Face &  face,
int  numdivs,
const UT_Vector3 &  projdir,
UT_Vector3Array &  domain,
const GEO_Face *  dface = 0,
UT_Vector4Array *  displaces = 0 
)
static
static int GU_TPSurf::intersectRay ( const GEO_TPSurf &  surf,
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 
)
static
static int GU_TPSurf::intersectSurf ( GEO_TPSurf &  surf1,
GEO_TPSurf &  surf2,
GU_IsectCurveSet &  curveset,
float  worldtol = 1e-4F,
float  domaintol = 1e-2F,
int  steps = 100,
bool  docompact = true 
)
static
static int GU_TPSurf::project ( GEO_TPSurf &  surf,
const GEO_Face &  f,
const GU_ProjectParms &  p,
GU_RayIntersect *  intersect = NULL 
)
static
static int GU_TPSurf::project ( GEO_TPSurf &  surf,
const GA_PrimitiveGroup &  faces,
const GU_ProjectParms &  p,
const GU_Detail *  gdp = 0 
)
static
static int GU_TPSurf::rayHit ( const GEO_TPSurf &  surf,
const UT_Vector3 &  o,
const UT_Vector3 &  dir,
GU_RayInfo &  hitinfo,
GU_RayIntersect *  intersect 
)
static

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