#include <curve.h>
Inheritance diagram for PLib::ParaCurve< T, N >:
Public Member Functions | |
virtual HPoint_nD< T, N > | operator() (T u) const =0 |
HPoint_nD< T, N > | hpointAt (T u) const |
Point_nD< T, N > | pointAt (T u) const |
virtual HPoint_nD< T, N > | hpointAt (T u, int span) const =0 |
Point_nD< T, N > | pointAt (T u, int span) |
virtual void | deriveAtH (T u, int, Vector< HPoint_nD< T, N > > &) const=0 |
virtual void | deriveAt (T u, int, Vector< Point_nD< T, N > > &) const=0 |
virtual T | minKnot () const=0 |
virtual T | maxKnot () const=0 |
virtual T | minDist2 (const Point_nD< T, N > &p, T &guess, T error=0.0001, T s=0.2, int sep=9, int maxIter=10, T um=-1, T uM=-1) const |
virtual Point_nD< T, N > | minDistY (T y, T &guessU, T error=0.0001, T s=-1, int sep=9, int maxIter=10, T um=-1, T uM=-1) const |
virtual Point_nD< T, N > | minDistX (T y, T &guessU, T error=0.0001, T s=-1, int sep=9, int maxIter=10, T um=-1, T uM=-1) const |
virtual Point_nD< T, N > | minDistZ (T y, T &guessU, T error=0.0001, T s=-1, int sep=9, int maxIter=10, T um=-1, T uM=-1) const |
virtual T | extremum (int findMin, CoordinateType coord, T minDu=0.0001, int sep=9, int maxIter=10, T um=-1, T uM=-1) const |
This is an abstract class used as a basis for NURBS and HNURBS curves.
virtual HPoint_nD<T,N> PLib::ParaCurve< T, N >::operator() | ( | T | u | ) | const [pure virtual] |
abstract function
Implemented in PLib::NurbsCurve< T, N >.
HPoint_nD<T,N> PLib::ParaCurve< T, N >::hpointAt | ( | T | u | ) | const [inline] |
Point_nD<T,N> PLib::ParaCurve< T, N >::pointAt | ( | T | u | ) | const [inline] |
Projects the homogenouse point at u into normal space.
virtual HPoint_nD<T,N> PLib::ParaCurve< T, N >::hpointAt | ( | T | u, | |
int | span | |||
) | const [pure virtual] |
Point_nD<T,N> PLib::ParaCurve< T, N >::pointAt | ( | T | u, | |
int | span | |||
) | [inline] |
Projects the homogenouse point at u into normal space.
virtual void PLib::ParaCurve< T, N >::deriveAtH | ( | T | u, | |
int | , | |||
Vector< HPoint_nD< T, N > > & | ||||
) | const [pure virtual] |
virtual void PLib::ParaCurve< T, N >::deriveAt | ( | T | u, | |
int | , | |||
Vector< Point_nD< T, N > > & | ||||
) | const [pure virtual] |
virtual T PLib::ParaCurve< T, N >::minKnot | ( | ) | const [pure virtual] |
abstract function
Implemented in PLib::NurbsCurve< T, N >, PLib::NurbsCurve< float, 3 >, and PLib::NurbsCurve< float, N >.
virtual T PLib::ParaCurve< T, N >::maxKnot | ( | ) | const [pure virtual] |
abstract function
Implemented in PLib::NurbsCurve< T, N >, PLib::NurbsCurve< float, 3 >, and PLib::NurbsCurve< float, N >.
T PLib::ParaCurve< T, N >::minDist2 | ( | const Point_nD< T, N > & | p, | |
T & | guess, | |||
T | error = 0.0001 , |
|||
T | s = 0.2 , |
|||
int | sep = 9 , |
|||
int | maxIter = 10 , |
|||
T | um = -1 , |
|||
T | uM = -1 | |||
) | const [virtual] |
Find the minimal distance between a point and the curve.
This is an iterative method to find the closest point to a curve.
p | the minimal distance from that point | |
guess | a starting value for the parameter u, on exit this will be set to the value of the point on the curve closest to p. | |
error | when iterations have an error smaller than this value, the function exits | |
s | the size of the search in the parametric space. | |
sep | the number of points initially looked at to find a minimal distance | |
maxiter | the maximal number of iterations | |
um | the minimal parametric value | |
uM | the maximal parametric value |
Point_nD< T, N > PLib::ParaCurve< T, N >::minDistY | ( | T | y, | |
T & | guessU, | |||
T | error = 0.0001 , |
|||
T | s = -1 , |
|||
int | sep = 9 , |
|||
int | maxIter = 10 , |
|||
T | um = -1 , |
|||
T | uM = -1 | |||
) | const [virtual] |
Find the closest point on the curve to the y coordinate.
This is an iterative method to find the closest point on the curve to the y coordinate.
y | the y coordinate to be close too. | |
guess | a starting value for the parameter u, on exit this will be set to the value of the point on the curve closest to y. | |
error | when iterations have an error smaller than this value, the function exits | |
s | the size of the search in the parametric space. | |
sep | the number of points initially looked at to find a minimal distance | |
maxiter | the maximal number of iterations | |
um | the minimal parametric value | |
uM | the maximal parametric value |
Point_nD< T, N > PLib::ParaCurve< T, N >::minDistX | ( | T | x, | |
T & | guessU, | |||
T | error = 0.0001 , |
|||
T | s = -1 , |
|||
int | sep = 9 , |
|||
int | maxIter = 10 , |
|||
T | um = -1 , |
|||
T | uM = -1 | |||
) | const [virtual] |
Find the closest point on the curve to the x coordinate.
This is an iterative method to find the closest point on the curve to the x coordinate.
x | the x coordinate to be close too. | |
guess | a starting value for the parameter u, on exit this will be set to the value of the point on the curve closest to x. | |
error | when iterations have an error smaller than this value, the function exits | |
s | the size of the search in the parametric space. | |
sep | the number of points initially looked at to find a minimal distance | |
maxiter | the maximal number of iterations | |
um | the minimal parametric value | |
uM | the maximal parametric value |
Point_nD< T, N > PLib::ParaCurve< T, N >::minDistZ | ( | T | z, | |
T & | guessU, | |||
T | error = 0.0001 , |
|||
T | s = -1 , |
|||
int | sep = 9 , |
|||
int | maxIter = 10 , |
|||
T | um = -1 , |
|||
T | uM = -1 | |||
) | const [virtual] |
Find the closest point on the curve to the x coordinate.
This is an iterative method to find the closest point on the curve to the x coordinate.
z | the x coordinate to be close too. | |
guess | a starting value for the parameter u, on exit this will be set to the value of the point on the curve closest to x. | |
error | when iterations have an error smaller than this value, the function exits | |
s | the size of the search in the parametric space. | |
sep | the number of points initially looked at to find a minimal distance | |
maxiter | the maximal number of iterations | |
um | the minimal parametric value | |
uM | the maximal parametric value |
T PLib::ParaCurve< T, N >::extremum | ( | int | findMin, | |
CoordinateType | coord, | |||
T | minDu = 0.0001 , |
|||
int | sep = 9 , |
|||
int | maxIter = 10 , |
|||
T | um = -1 , |
|||
T | uM = -1 | |||
) | const [virtual] |
Finds the minimal or maximal value on the curve of the x,y or z coordinate.
Finds the minimal or maximal value on the curve of the x,y or z coordinate.
findMin | a flag indicatinf if we're looking for the minimal value or the maximal value. | |
coord | Which coordinate to find: x,y or z. | |
minDu | The minimal distance between iterations in the parametric space. | |
sep | the number of points initially looked at to find a minimal distance | |
maxiter | the maximal number of iterations | |
um | the minimal parametric value | |
uM | the maximal parametric value |