|
| virtual int | IsA (const char *type) |
| |
| vtkParametricFunction * | NewInstance () const |
| |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| |
| virtual int | GetDimension ()=0 |
| |
| virtual void | Evaluate (double uvw[3], double Pt[3], double Duvw[9])=0 |
| |
| virtual double | EvaluateScalar (double uvw[3], double Pt[3], double Duvw[9])=0 |
| |
| virtual void | SetMinimumU (double) |
| |
| virtual double | GetMinimumU () |
| |
| virtual void | SetMaximumU (double) |
| |
| virtual double | GetMaximumU () |
| |
| virtual void | SetMinimumV (double) |
| |
| virtual double | GetMinimumV () |
| |
| virtual void | SetMaximumV (double) |
| |
| virtual double | GetMaximumV () |
| |
| virtual void | SetMinimumW (double) |
| |
| virtual double | GetMinimumW () |
| |
| virtual void | SetMaximumW (double) |
| |
| virtual double | GetMaximumW () |
| |
| virtual void | SetJoinU (int) |
| |
| virtual int | GetJoinU () |
| |
| virtual void | JoinUOn () |
| |
| virtual void | JoinUOff () |
| |
| virtual void | SetJoinV (int) |
| |
| virtual int | GetJoinV () |
| |
| virtual void | JoinVOn () |
| |
| virtual void | JoinVOff () |
| |
| virtual void | SetJoinW (int) |
| |
| virtual int | GetJoinW () |
| |
| virtual void | JoinWOn () |
| |
| virtual void | JoinWOff () |
| |
| virtual void | SetTwistU (int) |
| |
| virtual int | GetTwistU () |
| |
| virtual void | TwistUOn () |
| |
| virtual void | TwistUOff () |
| |
| virtual void | SetTwistV (int) |
| |
| virtual int | GetTwistV () |
| |
| virtual void | TwistVOn () |
| |
| virtual void | TwistVOff () |
| |
| virtual void | SetTwistW (int) |
| |
| virtual int | GetTwistW () |
| |
| virtual void | TwistWOn () |
| |
| virtual void | TwistWOff () |
| |
| virtual void | SetClockwiseOrdering (int) |
| |
| virtual int | GetClockwiseOrdering () |
| |
| virtual void | ClockwiseOrderingOn () |
| |
| virtual void | ClockwiseOrderingOff () |
| |
| virtual void | SetDerivativesAvailable (int) |
| |
| virtual int | GetDerivativesAvailable () |
| |
| virtual void | DerivativesAvailableOn () |
| |
| virtual void | DerivativesAvailableOff () |
| |
| vtkObject * | NewInstance () const |
| |
| virtual void | DebugOn () |
| |
| virtual void | DebugOff () |
| |
| bool | GetDebug () |
| |
| void | SetDebug (bool debugFlag) |
| |
| virtual void | Modified () |
| |
| virtual unsigned long | GetMTime () |
| |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| |
| unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
| |
| vtkCommand * | GetCommand (unsigned long tag) |
| |
| void | RemoveObserver (vtkCommand *) |
| |
| void | RemoveObservers (unsigned long event, vtkCommand *) |
| |
| void | RemoveObservers (const char *event, vtkCommand *) |
| |
| int | HasObserver (unsigned long event, vtkCommand *) |
| |
| int | HasObserver (const char *event, vtkCommand *) |
| |
| void | RemoveObserver (unsigned long tag) |
| |
| void | RemoveObservers (unsigned long event) |
| |
| void | RemoveObservers (const char *event) |
| |
| void | RemoveAllObservers () |
| |
| int | HasObserver (unsigned long event) |
| |
| int | HasObserver (const char *event) |
| |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| |
| template<class U , class T > |
| unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| |
| int | InvokeEvent (unsigned long event, void *callData) |
| |
| int | InvokeEvent (const char *event, void *callData) |
| |
| int | InvokeEvent (unsigned long event) |
| |
| int | InvokeEvent (const char *event) |
| |
| const char * | GetClassName () const |
| |
| virtual void | Delete () |
| |
| virtual void | FastDelete () |
| |
| void | Print (ostream &os) |
| |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| |
| virtual void | Register (vtkObjectBase *o) |
| |
| virtual void | UnRegister (vtkObjectBase *o) |
| |
| int | GetReferenceCount () |
| |
| void | SetReferenceCount (int) |
| |
| void | PrintRevisions (ostream &) |
| |
abstract interface for parametric functions
vtkParametricFunction is an abstract interface for functions defined by parametric mapping i.e. f(u,v,w)->(x,y,z) where u_min <= u < u_max, v_min <= v < v_max, w_min <= w < w_max. (For notational convenience, we will write f(u)->x and assume that u means (u,v,w) and x means (x,y,z).)
The interface contains the pure virtual function, Evaluate(), that generates a point and the derivatives at that point which are then used to construct the surface. A second pure virtual function, EvaluateScalar(), can be used to generate a scalar for the surface. Finally, the GetDimension() virtual function is used to differentiate 1D, 2D, and 3D parametric functions. Since this abstract class defines a pure virtual API, its subclasses must implement the pure virtual functions GetDimension(), Evaluate() and EvaluateScalar().
This class has also methods for defining a range of parametric values (u,v,w).
- Thanks:
- Andrew Maclean andre.nosp@m.w.am.nosp@m.aclea.nosp@m.n@gm.nosp@m.ail.c.nosp@m.om for creating and contributing the class.
- See also
- vtkParametricFunctionSource - tessellates a parametric function
-
Implementations of derived classes implementing non-orentable surfaces: vtkParametricBoy vtkParametricCrossCap vtkParametricFigure8Klein vtkParametricKlein vtkParametricMobius vtkParametricRoman
-
Implementations of derived classes implementing orientable surfaces: vtkParametricConicSpiral vtkParametricDini vtkParametricEllipsoid vtkParametricEnneper vtkParametricRandomHills vtkParametricSuperEllipsoid vtkParametricSuperToroid vtkParametricTorus
Definition at line 61 of file vtkParametricFunction.h.
| virtual int vtkParametricFunction::GetDimension |
( |
| ) |
|
|
pure virtual |
Return the dimension of parametric space. Depending on the dimension, then the (u,v,w) parameters and associated information (e.g., derivates) have meaning. For example, if the dimension of the function is one, then u[0] and Duvw[0...2] have meaning. This is a pure virtual function that must be instantiated in a derived class.
Implemented in vtkParametricTorus, vtkParametricSuperToroid, vtkParametricSuperEllipsoid, vtkParametricSpline, vtkParametricRoman, vtkParametricRandomHills, vtkParametricMobius, vtkParametricKlein, vtkParametricFigure8Klein, vtkParametricEnneper, vtkParametricEllipsoid, vtkParametricDini, vtkParametricCrossCap, vtkParametricConicSpiral, and vtkParametricBoy.
| virtual void vtkParametricFunction::Evaluate |
( |
double |
uvw[3], |
|
|
double |
Pt[3], |
|
|
double |
Duvw[9] |
|
) |
| |
|
pure virtual |
Performs the mapping $f(uvw)->(Pt,Duvw)$f. This is a pure virtual function that must be instantiated in a derived class. uvw are the parameters, with u corresponding to uvw[0], v to uvw[1] and w to uvw[2] respectively. Pt is the returned Cartesian point, Duvw are the derivatives of this point with respect to u, v and w. Note that the first three values in Duvw are Du, the next three are Dv, and the final three are Dw. Du Dv Dw are the partial derivatives of the function at the point Pt with respect to u, v and w respectively.
Implemented in vtkParametricTorus, vtkParametricSuperToroid, vtkParametricSuperEllipsoid, vtkParametricRoman, vtkParametricRandomHills, vtkParametricMobius, vtkParametricKlein, vtkParametricFigure8Klein, vtkParametricEnneper, vtkParametricEllipsoid, vtkParametricDini, vtkParametricCrossCap, vtkParametricConicSpiral, vtkParametricBoy, and vtkParametricSpline.
Calculate a user defined scalar using one or all of uvw, Pt, Duvw. This is a pure virtual function that must be instantiated in a derived class. uvw are the parameters with Pt being the the cartesian point, Duvw are the derivatives of this point with respect to u, v, and w. Pt, Duvw are obtained from Evaluate().
Implemented in vtkParametricTorus, vtkParametricSuperToroid, vtkParametricSuperEllipsoid, vtkParametricRoman, vtkParametricRandomHills, vtkParametricMobius, vtkParametricKlein, vtkParametricFigure8Klein, vtkParametricEnneper, vtkParametricEllipsoid, vtkParametricDini, vtkParametricCrossCap, vtkParametricConicSpiral, vtkParametricBoy, and vtkParametricSpline.