|
GClasses
|
NURBS = Non Uniform Rational B-Spline Periodic = closed loop.
#include <GBezier.h>
Public Member Functions | |
| GNurbs (int nControlPoints, int nDegree, bool periodic) | |
| GNurbs (GNurbs *pThat) | |
| ~GNurbs () | |
| GBezier * | bezier (int nInterval) |
| Create a Bezier curve that exactly fits a portion of this curve. todo: what are acceptable values for nInterval? More... | |
| void | controlPoint (G3DVector *pOutPoint, double *pOutWeight, int n) |
| Returns a control point and the associated weight. More... | |
| int | controlPointCount () |
| Returns the number of control points. More... | |
| void | insertKnotPeriodic (int nInterval, double dRatio) |
| 0 <= dRatio <= 1, (for example, .5 means to insert the knot in the center of the interval) More... | |
| double | knotInterval (int n) |
| void | setControlPoint (int n, G3DVector *pPoint, double weight) |
| Set a control point location and its weight. More... | |
| void | setKnotInterval (int n, double dInterval) |
Protected Member Functions | |
| void | calculateBezierControlPoint (struct GBezierPoint *pOutPoint, int nInterval, int nControlPoint) |
| double | knotValue (int n) |
| void | newKnotPeriodic (struct GBezierPoint *pA, struct GBezierPoint *pB, int n, int nControlPoint, double dRatio) |
| void | pointCircular (struct GBezierPoint *pOutPoint, int n) |
Protected Attributes | |
| bool | m_bPeriodic |
| int | m_nControlPoints |
| int | m_nDegree |
| struct GNurbsPoint * | m_pPoints |
| GClasses::GNurbs::GNurbs | ( | int | nControlPoints, |
| int | nDegree, | ||
| bool | periodic | ||
| ) |
| GClasses::GNurbs::GNurbs | ( | GNurbs * | pThat | ) |
| GClasses::GNurbs::~GNurbs | ( | ) |
| GBezier* GClasses::GNurbs::bezier | ( | int | nInterval | ) |
Create a Bezier curve that exactly fits a portion of this curve. todo: what are acceptable values for nInterval?
|
protected |
| void GClasses::GNurbs::controlPoint | ( | G3DVector * | pOutPoint, |
| double * | pOutWeight, | ||
| int | n | ||
| ) |
Returns a control point and the associated weight.
|
inline |
Returns the number of control points.
| void GClasses::GNurbs::insertKnotPeriodic | ( | int | nInterval, |
| double | dRatio | ||
| ) |
0 <= dRatio <= 1, (for example, .5 means to insert the knot in the center of the interval)
| double GClasses::GNurbs::knotInterval | ( | int | n | ) |
|
protected |
|
protected |
|
protected |
| void GClasses::GNurbs::setControlPoint | ( | int | n, |
| G3DVector * | pPoint, | ||
| double | weight | ||
| ) |
Set a control point location and its weight.
| void GClasses::GNurbs::setKnotInterval | ( | int | n, |
| double | dInterval | ||
| ) |
|
protected |
|
protected |
|
protected |
|
protected |