NURBS Class Reference

Inheritance diagram for NURBS:

Shape ReferenceCounted

List of all members.

Public Member Functions

 NURBS (const Transform &o2w, bool reverseOrientation, int nu, int uorder, const float *uknot, float umin, float umax, int nv, int vorder, const float *vknot, float vmin, float vmax, const float *P, bool isHomogeneous)
 ~NURBS ()
virtual BBox ObjectBound () const
virtual BBox WorldBound () const
virtual bool CanIntersect () const
virtual void Refine (vector< Reference< Shape > > &refined) const

Private Attributes

int nu
int uorder
int nv
int vorder
float umin
float umax
float vmin
float vmax
float * uknot
float * vknot
bool isHomogeneous
float * P


Detailed Description

Definition at line 31 of file nurbs.cpp.


Constructor & Destructor Documentation

NURBS::NURBS ( const Transform o2w,
bool  reverseOrientation,
int  nu,
int  uorder,
const float *  uknot,
float  umin,
float  umax,
int  nv,
int  vorder,
const float *  vknot,
float  vmin,
float  vmax,
const float *  P,
bool  isHomogeneous 
)

Definition at line 155 of file nurbs.cpp.

References isHomogeneous, memcpy(), nu, nv, P, uknot, umax, umin, uorder, vknot, vmax, vmin, and vorder.

Referenced by CreateShape().

NURBS::~NURBS (  ) 

Definition at line 176 of file nurbs.cpp.

References P, uknot, and vknot.


Member Function Documentation

BBox NURBS::ObjectBound (  )  const [virtual]

Implements Shape.

Definition at line 181 of file nurbs.cpp.

References isHomogeneous, nu, nv, P, and Union().

BBox NURBS::WorldBound (  )  const [virtual]

Reimplemented from Shape.

Definition at line 198 of file nurbs.cpp.

References isHomogeneous, nu, nv, Shape::ObjectToWorld, P, and Union().

virtual bool NURBS::CanIntersect (  )  const [inline, virtual]

Reimplemented from Shape.

Definition at line 41 of file nurbs.cpp.

void NURBS::Refine ( vector< Reference< Shape > > &  refined  )  const [virtual]


Member Data Documentation

int NURBS::nu [private]

Definition at line 45 of file nurbs.cpp.

Referenced by CreateShape(), NURBS(), ObjectBound(), Refine(), and WorldBound().

int NURBS::uorder [private]

Definition at line 45 of file nurbs.cpp.

Referenced by CreateShape(), NURBS(), and Refine().

int NURBS::nv [private]

Definition at line 45 of file nurbs.cpp.

Referenced by CreateShape(), NURBS(), ObjectBound(), Refine(), and WorldBound().

int NURBS::vorder [private]

Definition at line 45 of file nurbs.cpp.

Referenced by CreateShape(), NURBS(), and Refine().

float NURBS::umin [private]

Definition at line 46 of file nurbs.cpp.

Referenced by NURBS(), and Refine().

float NURBS::umax [private]

Definition at line 46 of file nurbs.cpp.

Referenced by NURBS(), and Refine().

float NURBS::vmin [private]

Definition at line 46 of file nurbs.cpp.

Referenced by NURBS(), and Refine().

float NURBS::vmax [private]

Definition at line 46 of file nurbs.cpp.

Referenced by NURBS(), and Refine().

float* NURBS::uknot [private]

Definition at line 47 of file nurbs.cpp.

Referenced by NURBS(), Refine(), and ~NURBS().

float * NURBS::vknot [private]

Definition at line 47 of file nurbs.cpp.

Referenced by NURBS(), Refine(), and ~NURBS().

bool NURBS::isHomogeneous [private]

Definition at line 48 of file nurbs.cpp.

Referenced by CreateShape(), NURBS(), ObjectBound(), Refine(), and WorldBound().

float* NURBS::P [private]

Definition at line 49 of file nurbs.cpp.

Referenced by CreateShape(), NURBS(), ObjectBound(), Refine(), WorldBound(), and ~NURBS().


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

Generated on Mon Jul 20 17:31:55 2009 for pbrt by  doxygen 1.5.6