#include <Intp.h>
Inherits Intp< xType, yType >.
Inheritance diagram for Nurb:

Public Member Functions | |
| virtual xType * | copyArrayX (enum Intp< xType, yType >::VTYPE vType, xType *array) const |
| virtual yType * | copyArrayY (enum Intp< xType, yType >::VTYPE vType, yType *array) const |
| virtual yType | eval (xType x) throw (IntpErr) |
| virtual const xType * | getArrayX (enum Intp< xType, yType >::VTYPE vType) const |
| virtual const yType * | getArrayY (enum Intp< xType, yType >::VTYPE vType) const |
| virtual int | getCount (enum Intp< xType, yType >::VTYPE vType) const |
| Nurb (const Intp< xType, yType > &in) | |
| Nurb (const Nurb< xType, yType > &po) | |
| Nurb (const xType *arX, const yType *arY, const xType *arK, int nCount, int nPoints=DEF_POINTS) | |
| Nurb (const xType *arX, const yType *arY, int nCount, int nPoints=DEF_POINTS) | |
| bool | setCount (int nPoints) |
| virtual bool | update (void) |
| ~Nurb (void) | |
Static Public Member Functions | |
| static bool | evalKnots (xType *arK, const xType *arX, int nCount, int nPoints=DEF_POINTS) |
Static Public Attributes | |
| static const int | DEF_POINTS = 4 |
| static const xType | VAR_SMALL = 1.0E-20 |
In instantiation, an object is supplied with a one-dimensional set of independent variable and corresponding dependent variable data tables with a specific domain and range. The dependent data must be defined at every independent data point, continuous, and single-valued. When the interpolation object is evaluated within the data table domain, an interpolation value is calculated and returned. Fixed degree Bezier polynomials of a user-specified number are used for interpolation. A polynomial curve is calculated to fit sequential data points. The data point count of the curve is based on the order of the polynomial.
The declaration typename <xType> specifies the form of independent variables used in interpolation calculations. The declaration typename <yType> specifies the form of solution variables used in interpolation calculations. In general, the <yType> variables should be the equal or superset of the <xType> variables.
| Nurb | ( | const xType * | arX, | |
| const yType * | arY, | |||
| int | nCount, | |||
| int | nPoints = DEF_POINTS | |||
| ) |
Constructor initializes a non-uniform rational Bezier spline interpolation object.
| arX | a pointer to an independent value interpolation array (x units) | |
| arY | a pointer to a dependent value interpolation array (y units) | |
| nCount | data count for the specified arrays arX and arY | |
| nPoints | data point count of polynomials used in interpolation evaluations (optional) |
| Nurb | ( | const xType * | arX, | |
| const yType * | arY, | |||
| const xType * | arK, | |||
| int | nCount, | |||
| int | nPoints = DEF_POINTS | |||
| ) |
Constructor initializes a non-uniform rational Bezier spline interpolation object.
| arX | a pointer to an independent value interpolation array (x units) | |
| arY | a pointer to a dependent value interpolation array (y units) | |
| arK | a pointer to an independent value interpolation knot vector array (scaled x units) | |
| nCount | data count for the specified arrays arX and arY | |
| nPoints | data point count of polynomials used in interpolation evaluations (optional) |
Copy constructor initializes a polynomial interpolation object from the specified existing polynomial interpolation object.
| nu | a reference to a NURBS interpolation object |
Copy constructor initializes a polynomial interpolation object from the specified existing interpolation object.
| in | a reference to an interpolation object |
| ~Nurb | ( | void | ) |
Destructor frees allocated memory.
Virtual function copies values contained in an identified object independent array to the specified pointer.
| vType | variable index indentifying the type of data | |
| array | a pointer to a copy of the object's independent data array (varying units) |
Virtual function copies values contained in an identified object dependent array to the specified pointer.
| vType | variable index indentifying the type of data | |
| array | a pointer to a copy of the object's dependent data array (varying units) |
| yType eval | ( | xType | x | ) | throw (IntpErr) [virtual] |
Virtual function interpolates the dependent data at the specified independent data value.
| x | an independent value interpolation point (x units) |
| IntpErr | type of object thrown
|
Implements Intp.
| bool evalKnots | ( | xType * | arK, | |
| const xType * | arX, | |||
| int | nCount, | |||
| int | nPoints = DEF_POINTS | |||
| ) | [static] |
Static function calculates the NURBS knot vector for non-uniform rational Bezier spline interpolation.
| arK | a pointer to a calculated independent value interpolation knot vector array (scaled x units) | |
| arX | a pointer to an independent value interpolation array (x units) | |
| nCount | data count for the specified arrays arX and arY | |
| nPoints | data point count of polynomials used in interpolation evaluations (optional) |
Virtual function returns the pointer of the identified object independent array.
| vType | variable index indentifying the independent array type |
Virtual function returns the pointer of the identified object dependent array.
| vType | variable index indentifying the dependent array type |
Virtual function determines the number of values contained in the object's identified array.
| vType | variable index indentifying the type of data |
| bool setCount | ( | int | nPoints | ) |
Function sets the number of data points used in polynomial interpolation evaluations.
| nPoints | the point count of interpolation polynomials |
| bool update | ( | void | ) | [virtual] |
Virtual function prepares the interpolation object for interpolation evaluations.
Reimplemented from Intp.
const int DEF_POINTS = 4 [static] |
default interpolation polynomial data point count
Reimplemented from Intp.
const xType VAR_SMALL = 1.0E-20 [static] |
small value replaces zero diagonal value in singular matrix for approximation
1.4.7