nurbs.cpp File Reference

#include "nurbs.h"
#include "paramset.h"

Go to the source code of this file.

Classes

struct  Homogeneous3

Defines

#define VN(u, v)   ((v)*diceu+(u))

Functions

static int KnotOffset (const float *knot, int order, int np, float t)
static Homogeneous3 NURBSEvaluate (int order, const float *knot, const Homogeneous3 *cp, int np, int cpStride, float t, Vector *deriv=NULL)
static Point NURBSEvaluateSurface (int uOrder, const float *uKnot, int ucp, float u, int vOrder, const float *vKnot, int vcp, float v, const Homogeneous3 *cp, Vector *dPdu, Vector *dPdv)


Define Documentation

#define VN ( u,
 )     ((v)*diceu+(u))

Referenced by lux::NURBS::Refine().


Function Documentation

static int KnotOffset ( const float *  knot,
int  order,
int  np,
float  t 
) [static]

Definition at line 30 of file nurbs.cpp.

Referenced by NURBSEvaluate(), and NURBSEvaluateSurface().

static Homogeneous3 NURBSEvaluate ( int  order,
const float *  knot,
const Homogeneous3 cp,
int  np,
int  cpStride,
float  t,
Vector deriv = NULL 
) [static]

Definition at line 52 of file nurbs.cpp.

References KnotOffset(), Homogeneous3::w, Homogeneous3::x, Homogeneous3::y, and Homogeneous3::z.

Referenced by NURBSEvaluateSurface().

static Point NURBSEvaluateSurface ( int  uOrder,
const float *  uKnot,
int  ucp,
float  u,
int  vOrder,
const float *  vKnot,
int  vcp,
float  v,
const Homogeneous3 cp,
Vector dPdu,
Vector dPdv 
) [static]


Generated on Mon May 18 07:19:15 2009 for lux by  doxygen 1.5.7.1