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

#include <GU_RayRBezSurf.h>

Public Member Functions

 GU_RayRBezSurf ()
 
 ~GU_RayRBezSurf ()
 
void init (int uOrder, int vOrder, float uStart, float uLength, float vStart, float vLength, int isRational)
 
void buildBBox ()
 
int intersectBBox (const UT_Vector3 &org, const UT_Vector3 &dir, float tmax, float tol, float *t)
 
int intersect (const UT_Vector3 &org, const UT_Vector3 &dir, GU_RayInfo &hitInfo, int depth, int noBBoxTest=0)
 
int intersectQR (const UT_Vector3 &org, const UT_Vector3 &dir, GU_RayInfo &hitInfo, int depth, int noBBoxTest=0)
 
int intersectAP (const UT_Vector3 &org, const UT_Vector3 &dir, GU_RayInfo &hitInfo)
 
int intersect (GU_RayRBezSurf &surf, GU_RayInfo &hitinfo)
 
int minimum (const UT_Vector3 &p, GU_MinInfo &mininfo, int depth, int noBBoxTest=0)
 
int minimum (GU_RayRBezSurf &surf, GU_MinInfo &mininfo, int depth, int noBBoxTest=0)
 
int pointInvert (const UT_Vector3 &p, float &u, float &v, float &d2, float tol)
 
void carveU (float ustart, float uend)
 
void carveV (float vstart, float vend)
 
void splitMyself (int depth)
 
void split (GU_RayRBezSurf *topLeft, GU_RayRBezSurf *bottomLeft, GU_RayRBezSurf *bottomRight, GU_RayRBezSurf *topRight) const
 
void evaluate (float u, float v, UT_Vector3 &pos) const
 
void evaluateHomogeneous (float u, float v, UT_Vector4 &pos, UT_Vector4 &derU, UT_Vector4 &derV) const
 
void evaluate (float u, float v, UT_Vector3 &pos, UT_Vector3 &derU, UT_Vector3 &derV, UT_Vector3 &derUV, UT_Vector3 &derUU, UT_Vector3 &derVV) const
 
void sortSubPatches (GU_RayRBezSurf **patches, float *sortvalue) const
 
void guessIntersection (const UT_Vector3 &org, const UT_Vector3 &dir, float &t, float &u, float &v) const
 
void guessIntersection (const UT_Vector3 &org, float &u, float &v) const
 
void buildImplicit ()
 
int64 getMemoryUsage (bool inclusive) const
 

Public Attributes

UT_BoundingBox myBBox
 
UT_RefMatrix< UT_Vector4myCV
 
float myUStart
 
float myULength
 
float myVStart
 
float myVLength
 
float sortValue
 
int myRational
 
GU_RayRBezSurfmyTopLeft
 
GU_RayRBezSurfmyBottomLeft
 
GU_RayRBezSurfmyTopRight
 
GU_RayRBezSurfmyBottomRight
 
UT_Lock mySplitLock
 
volatile bool myHasSplit
 
int myImplicitFlag
 
int myEigenVectorCorrect
 
UT_MatrixF myXCoeff
 
UT_MatrixF myYCoeff
 
UT_MatrixF myZCoeff
 
UT_MatrixF myWCoeff
 

Detailed Description

Definition at line 37 of file GU_RayRBezSurf.h.

Constructor & Destructor Documentation

GU_RayRBezSurf::GU_RayRBezSurf ( )
GU_RayRBezSurf::~GU_RayRBezSurf ( )

Member Function Documentation

void GU_RayRBezSurf::buildBBox ( )
void GU_RayRBezSurf::buildImplicit ( )
void GU_RayRBezSurf::carveU ( float  ustart,
float  uend 
)
void GU_RayRBezSurf::carveV ( float  vstart,
float  vend 
)
void GU_RayRBezSurf::evaluate ( float  u,
float  v,
UT_Vector3 pos 
) const
void GU_RayRBezSurf::evaluate ( float  u,
float  v,
UT_Vector3 pos,
UT_Vector3 derU,
UT_Vector3 derV,
UT_Vector3 derUV,
UT_Vector3 derUU,
UT_Vector3 derVV 
) const
void GU_RayRBezSurf::evaluateHomogeneous ( float  u,
float  v,
UT_Vector4 pos,
UT_Vector4 derU,
UT_Vector4 derV 
) const
int64 GU_RayRBezSurf::getMemoryUsage ( bool  inclusive) const
inline

Definition at line 108 of file GU_RayRBezSurf.h.

void GU_RayRBezSurf::guessIntersection ( const UT_Vector3 org,
const UT_Vector3 dir,
float &  t,
float &  u,
float &  v 
) const
void GU_RayRBezSurf::guessIntersection ( const UT_Vector3 org,
float &  u,
float &  v 
) const
void GU_RayRBezSurf::init ( int  uOrder,
int  vOrder,
float  uStart,
float  uLength,
float  vStart,
float  vLength,
int  isRational 
)
int GU_RayRBezSurf::intersect ( const UT_Vector3 org,
const UT_Vector3 dir,
GU_RayInfo hitInfo,
int  depth,
int  noBBoxTest = 0 
)
int GU_RayRBezSurf::intersect ( GU_RayRBezSurf surf,
GU_RayInfo hitinfo 
)
int GU_RayRBezSurf::intersectAP ( const UT_Vector3 org,
const UT_Vector3 dir,
GU_RayInfo hitInfo 
)
int GU_RayRBezSurf::intersectBBox ( const UT_Vector3 org,
const UT_Vector3 dir,
float  tmax,
float  tol,
float *  t 
)
int GU_RayRBezSurf::intersectQR ( const UT_Vector3 org,
const UT_Vector3 dir,
GU_RayInfo hitInfo,
int  depth,
int  noBBoxTest = 0 
)
int GU_RayRBezSurf::minimum ( const UT_Vector3 p,
GU_MinInfo mininfo,
int  depth,
int  noBBoxTest = 0 
)
int GU_RayRBezSurf::minimum ( GU_RayRBezSurf surf,
GU_MinInfo mininfo,
int  depth,
int  noBBoxTest = 0 
)
int GU_RayRBezSurf::pointInvert ( const UT_Vector3 p,
float &  u,
float &  v,
float &  d2,
float  tol 
)
void GU_RayRBezSurf::sortSubPatches ( GU_RayRBezSurf **  patches,
float *  sortvalue 
) const
void GU_RayRBezSurf::split ( GU_RayRBezSurf topLeft,
GU_RayRBezSurf bottomLeft,
GU_RayRBezSurf bottomRight,
GU_RayRBezSurf topRight 
) const
void GU_RayRBezSurf::splitMyself ( int  depth)

Member Data Documentation

UT_BoundingBox GU_RayRBezSurf::myBBox

Definition at line 186 of file GU_RayRBezSurf.h.

GU_RayRBezSurf * GU_RayRBezSurf::myBottomLeft

Definition at line 192 of file GU_RayRBezSurf.h.

GU_RayRBezSurf * GU_RayRBezSurf::myBottomRight

Definition at line 193 of file GU_RayRBezSurf.h.

UT_RefMatrix<UT_Vector4> GU_RayRBezSurf::myCV

Definition at line 187 of file GU_RayRBezSurf.h.

int GU_RayRBezSurf::myEigenVectorCorrect

Definition at line 200 of file GU_RayRBezSurf.h.

volatile bool GU_RayRBezSurf::myHasSplit

Definition at line 196 of file GU_RayRBezSurf.h.

int GU_RayRBezSurf::myImplicitFlag

Definition at line 198 of file GU_RayRBezSurf.h.

int GU_RayRBezSurf::myRational

Definition at line 191 of file GU_RayRBezSurf.h.

UT_Lock GU_RayRBezSurf::mySplitLock

Definition at line 195 of file GU_RayRBezSurf.h.

GU_RayRBezSurf* GU_RayRBezSurf::myTopLeft

Definition at line 192 of file GU_RayRBezSurf.h.

GU_RayRBezSurf* GU_RayRBezSurf::myTopRight

Definition at line 193 of file GU_RayRBezSurf.h.

float GU_RayRBezSurf::myULength

Definition at line 188 of file GU_RayRBezSurf.h.

float GU_RayRBezSurf::myUStart

Definition at line 188 of file GU_RayRBezSurf.h.

float GU_RayRBezSurf::myVLength

Definition at line 189 of file GU_RayRBezSurf.h.

float GU_RayRBezSurf::myVStart

Definition at line 189 of file GU_RayRBezSurf.h.

UT_MatrixF GU_RayRBezSurf::myWCoeff

Definition at line 212 of file GU_RayRBezSurf.h.

UT_MatrixF GU_RayRBezSurf::myXCoeff

Definition at line 212 of file GU_RayRBezSurf.h.

UT_MatrixF GU_RayRBezSurf::myYCoeff

Definition at line 212 of file GU_RayRBezSurf.h.

UT_MatrixF GU_RayRBezSurf::myZCoeff

Definition at line 212 of file GU_RayRBezSurf.h.

float GU_RayRBezSurf::sortValue

Definition at line 190 of file GU_RayRBezSurf.h.


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