VTK
|
abstract interface for parametric functions More...
#include <vtkParametricFunction.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
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 () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkParametricFunction * | SafeDownCast (vtkObjectBase *o) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkParametricFunction () | |
virtual | ~vtkParametricFunction () |
Protected Attributes | |
double | MinimumU |
double | MaximumU |
double | MinimumV |
double | MaximumV |
double | MinimumW |
double | MaximumW |
int | JoinU |
int | JoinV |
int | JoinW |
int | TwistU |
int | TwistV |
int | TwistW |
int | ClockwiseOrdering |
int | DerivativesAvailable |
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).
Definition at line 61 of file vtkParametricFunction.h.
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
Definition at line 64 of file vtkParametricFunction.h.
vtkParametricFunction::vtkParametricFunction | ( | ) | [protected] |
virtual vtkParametricFunction::~vtkParametricFunction | ( | ) | [protected, virtual] |
static int vtkParametricFunction::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
virtual int vtkParametricFunction::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
static vtkParametricFunction* vtkParametricFunction::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
virtual vtkObjectBase* vtkParametricFunction::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
void vtkParametricFunction::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkParametricSpline, vtkParametricSuperToroid, vtkParametricFigure8Klein, vtkParametricKlein, vtkParametricSuperEllipsoid, vtkParametricRandomHills, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricConicSpiral, vtkParametricRoman, vtkParametricTorus, and vtkParametricMobius.
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 vtkParametricFigure8Klein, vtkParametricTorus, vtkParametricSuperToroid, vtkParametricSpline, vtkParametricSuperEllipsoid, vtkParametricKlein, vtkParametricMobius, vtkParametricEllipsoid, vtkParametricBoy, vtkParametricCrossCap, vtkParametricDini, vtkParametricEnneper, vtkParametricRandomHills, vtkParametricConicSpiral, and vtkParametricRoman.
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 vtkParametricRandomHills, vtkParametricSuperToroid, vtkParametricSuperEllipsoid, vtkParametricConicSpiral, vtkParametricEllipsoid, vtkParametricDini, vtkParametricFigure8Klein, vtkParametricTorus, vtkParametricBoy, vtkParametricSpline, vtkParametricKlein, vtkParametricRoman, vtkParametricMobius, vtkParametricCrossCap, and vtkParametricEnneper.
virtual double vtkParametricFunction::EvaluateScalar | ( | double | uvw[3], |
double | Pt[3], | ||
double | Duvw[9] | ||
) | [pure virtual] |
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 vtkParametricRandomHills, vtkParametricSuperToroid, vtkParametricSuperEllipsoid, vtkParametricConicSpiral, vtkParametricEllipsoid, vtkParametricDini, vtkParametricFigure8Klein, vtkParametricTorus, vtkParametricBoy, vtkParametricKlein, vtkParametricRoman, vtkParametricMobius, vtkParametricSpline, vtkParametricCrossCap, and vtkParametricEnneper.
virtual void vtkParametricFunction::SetMinimumU | ( | double | ) | [virtual] |
Set/Get the minimum u-value.
virtual double vtkParametricFunction::GetMinimumU | ( | ) | [virtual] |
Set/Get the minimum u-value.
virtual void vtkParametricFunction::SetMaximumU | ( | double | ) | [virtual] |
Set/Get the maximum u-value.
virtual double vtkParametricFunction::GetMaximumU | ( | ) | [virtual] |
Set/Get the maximum u-value.
virtual void vtkParametricFunction::SetMinimumV | ( | double | ) | [virtual] |
Set/Get the minimum v-value.
virtual double vtkParametricFunction::GetMinimumV | ( | ) | [virtual] |
Set/Get the minimum v-value.
virtual void vtkParametricFunction::SetMaximumV | ( | double | ) | [virtual] |
Set/Get the maximum v-value.
virtual double vtkParametricFunction::GetMaximumV | ( | ) | [virtual] |
Set/Get the maximum v-value.
virtual void vtkParametricFunction::SetMinimumW | ( | double | ) | [virtual] |
Set/Get the minimum w-value.
virtual double vtkParametricFunction::GetMinimumW | ( | ) | [virtual] |
Set/Get the minimum w-value.
virtual void vtkParametricFunction::SetMaximumW | ( | double | ) | [virtual] |
Set/Get the maximum w-value.
virtual double vtkParametricFunction::GetMaximumW | ( | ) | [virtual] |
Set/Get the maximum w-value.
virtual void vtkParametricFunction::SetJoinU | ( | int | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one.
virtual int vtkParametricFunction::GetJoinU | ( | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one.
virtual void vtkParametricFunction::JoinUOn | ( | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one.
virtual void vtkParametricFunction::JoinUOff | ( | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one.
virtual void vtkParametricFunction::SetJoinV | ( | int | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual int vtkParametricFunction::GetJoinV | ( | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual void vtkParametricFunction::JoinVOn | ( | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual void vtkParametricFunction::JoinVOff | ( | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual void vtkParametricFunction::SetJoinW | ( | int | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual int vtkParametricFunction::GetJoinW | ( | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual void vtkParametricFunction::JoinWOn | ( | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual void vtkParametricFunction::JoinWOff | ( | ) | [virtual] |
Set/Get the flag which joins the the ends of the triangle strips.
virtual void vtkParametricFunction::SetTwistU | ( | int | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one with a twist. JoinU must also be set if this is set. Used when building some non-orientable surfaces.
virtual int vtkParametricFunction::GetTwistU | ( | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one with a twist. JoinU must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::TwistUOn | ( | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one with a twist. JoinU must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::TwistUOff | ( | ) | [virtual] |
Set/Get the flag which joins the first triangle strip to the last one with a twist. JoinU must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::SetTwistV | ( | int | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinV must also be set if this is set. Used when building some non-orientable surfaces.
virtual int vtkParametricFunction::GetTwistV | ( | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinV must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::TwistVOn | ( | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinV must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::TwistVOff | ( | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinV must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::SetTwistW | ( | int | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinW must also be set if this is set. Used when building some non-orientable surfaces.
virtual int vtkParametricFunction::GetTwistW | ( | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinW must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::TwistWOn | ( | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinW must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::TwistWOff | ( | ) | [virtual] |
Set/Get the flag which joins the ends of the triangle strips with a twist. JoinW must also be set if this is set. Used when building some non-orientable surfaces.
virtual void vtkParametricFunction::SetClockwiseOrdering | ( | int | ) | [virtual] |
Set/Get the flag which determines the ordering of the the vertices forming the triangle strips. The ordering of the points being inserted into the triangle strip is important because it determines the direction of the normals for the lighting. If set, the ordering is clockwise, otherwise the ordering is anti-clockwise. Default is true (i.e. clockwise ordering).
virtual int vtkParametricFunction::GetClockwiseOrdering | ( | ) | [virtual] |
Set/Get the flag which determines the ordering of the the vertices forming the triangle strips. The ordering of the points being inserted into the triangle strip is important because it determines the direction of the normals for the lighting. If set, the ordering is clockwise, otherwise the ordering is anti-clockwise. Default is true (i.e. clockwise ordering).
virtual void vtkParametricFunction::ClockwiseOrderingOn | ( | ) | [virtual] |
Set/Get the flag which determines the ordering of the the vertices forming the triangle strips. The ordering of the points being inserted into the triangle strip is important because it determines the direction of the normals for the lighting. If set, the ordering is clockwise, otherwise the ordering is anti-clockwise. Default is true (i.e. clockwise ordering).
virtual void vtkParametricFunction::ClockwiseOrderingOff | ( | ) | [virtual] |
Set/Get the flag which determines the ordering of the the vertices forming the triangle strips. The ordering of the points being inserted into the triangle strip is important because it determines the direction of the normals for the lighting. If set, the ordering is clockwise, otherwise the ordering is anti-clockwise. Default is true (i.e. clockwise ordering).
virtual void vtkParametricFunction::SetDerivativesAvailable | ( | int | ) | [virtual] |
Set/Get the flag which determines whether derivatives are available from the parametric function (i.e., whether the Evaluate() method returns valid derivatives).
virtual int vtkParametricFunction::GetDerivativesAvailable | ( | ) | [virtual] |
Set/Get the flag which determines whether derivatives are available from the parametric function (i.e., whether the Evaluate() method returns valid derivatives).
virtual void vtkParametricFunction::DerivativesAvailableOn | ( | ) | [virtual] |
Set/Get the flag which determines whether derivatives are available from the parametric function (i.e., whether the Evaluate() method returns valid derivatives).
virtual void vtkParametricFunction::DerivativesAvailableOff | ( | ) | [virtual] |
Set/Get the flag which determines whether derivatives are available from the parametric function (i.e., whether the Evaluate() method returns valid derivatives).
double vtkParametricFunction::MinimumU [protected] |
Definition at line 202 of file vtkParametricFunction.h.
double vtkParametricFunction::MaximumU [protected] |
Definition at line 203 of file vtkParametricFunction.h.
double vtkParametricFunction::MinimumV [protected] |
Definition at line 204 of file vtkParametricFunction.h.
double vtkParametricFunction::MaximumV [protected] |
Definition at line 205 of file vtkParametricFunction.h.
double vtkParametricFunction::MinimumW [protected] |
Definition at line 206 of file vtkParametricFunction.h.
double vtkParametricFunction::MaximumW [protected] |
Definition at line 207 of file vtkParametricFunction.h.
int vtkParametricFunction::JoinU [protected] |
Definition at line 209 of file vtkParametricFunction.h.
int vtkParametricFunction::JoinV [protected] |
Definition at line 210 of file vtkParametricFunction.h.
int vtkParametricFunction::JoinW [protected] |
Definition at line 211 of file vtkParametricFunction.h.
int vtkParametricFunction::TwistU [protected] |
Definition at line 213 of file vtkParametricFunction.h.
int vtkParametricFunction::TwistV [protected] |
Definition at line 214 of file vtkParametricFunction.h.
int vtkParametricFunction::TwistW [protected] |
Definition at line 215 of file vtkParametricFunction.h.
int vtkParametricFunction::ClockwiseOrdering [protected] |
Definition at line 217 of file vtkParametricFunction.h.
int vtkParametricFunction::DerivativesAvailable [protected] |
Definition at line 219 of file vtkParametricFunction.h.