vtkSplineFilter Class Reference

#include <vtkSplineFilter.h>

Inheritance diagram for vtkSplineFilter:

Inheritance graph
[legend]
Collaboration diagram for vtkSplineFilter:

Collaboration graph
[legend]

List of all members.


Detailed Description

generate uniformly subdivided polylines from a set of input polyline using a vtkSpline

vtkSplineFilter is a filter that generates an output polylines from an input set of polylines. The polylines are uniformly subdivided and produced with the help of a vtkSpline class that the user can specify (by default a vtkCardinalSpline is used). The number of subdivisions of the line can be controlled in several ways. The user can either specify the number of subdivisions or a length of each subdivision can be provided (and the class will figure out how many subdivisions is required over the whole polyline). The maximum number of subdivisions can also be set.

The output of this filter is a polyline per input polyline (or line). New points and texture coordinates are created. Point data is interpolated and cell data passed on. Any polylines with less than two points, or who have coincident points, are ignored.

See also:
vtkRibbonFilter vtkTubeFilter
Tests:
vtkSplineFilter (Tests)

Definition at line 59 of file vtkSplineFilter.h.


Public Types

typedef vtkPolyDataAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetMaximumNumberOfSubdivisions (int)
virtual int GetMaximumNumberOfSubdivisions ()
virtual void SetSubdivide (int)
virtual int GetSubdivide ()
void SetSubdivideToSpecified ()
void SetSubdivideToLength ()
const char * GetSubdivideAsString ()
virtual void SetNumberOfSubdivisions (int)
virtual int GetNumberOfSubdivisions ()
virtual void SetLength (double)
virtual double GetLength ()
virtual void SetSpline (vtkSpline *)
virtual vtkSplineGetSpline ()
virtual void SetGenerateTCoords (int)
virtual int GetGenerateTCoords ()
void SetGenerateTCoordsToOff ()
void SetGenerateTCoordsToNormalizedLength ()
void SetGenerateTCoordsToUseLength ()
void SetGenerateTCoordsToUseScalars ()
const char * GetGenerateTCoordsAsString ()
virtual void SetTextureLength (double)
virtual double GetTextureLength ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkSplineFilterSafeDownCast (vtkObject *o)
static vtkSplineFilterNew ()

Protected Member Functions

 vtkSplineFilter ()
 ~vtkSplineFilter ()
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
int GeneratePoints (vtkIdType offset, vtkIdType npts, vtkIdType *pts, vtkPoints *inPts, vtkPoints *newPts, vtkPointData *pd, vtkPointData *outPD, int genTCoords, vtkFloatArray *newTCoords)
void GenerateLine (vtkIdType offset, vtkIdType numGenPts, vtkIdType inCellId, vtkCellData *cd, vtkCellData *outCD, vtkCellArray *newLines)

Protected Attributes

int MaximumNumberOfSubdivisions
int Subdivide
int NumberOfSubdivisions
double Length
vtkSplineSpline
vtkSplineXSpline
vtkSplineYSpline
vtkSplineZSpline
int GenerateTCoords
double TextureLength
vtkFloatArrayTCoordMap

Member Typedef Documentation

Reimplemented from vtkPolyDataAlgorithm.

Definition at line 62 of file vtkSplineFilter.h.


Constructor & Destructor Documentation

vtkSplineFilter::vtkSplineFilter (  )  [protected]

vtkSplineFilter::~vtkSplineFilter (  )  [protected]


Member Function Documentation

virtual const char* vtkSplineFilter::GetClassName (  )  [virtual]

Reimplemented from vtkPolyDataAlgorithm.

static int vtkSplineFilter::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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

virtual int vtkSplineFilter::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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

static vtkSplineFilter* vtkSplineFilter::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkPolyDataAlgorithm.

void vtkSplineFilter::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 vtkPolyDataAlgorithm.

static vtkSplineFilter* vtkSplineFilter::New (  )  [static]

Construct the class with no limit on the number of subdivisions and using an instance of vtkCardinalSpline to perform interpolation.

Reimplemented from vtkPolyDataAlgorithm.

virtual void vtkSplineFilter::SetMaximumNumberOfSubdivisions ( int   )  [virtual]

Set the maximum number of subdivisions that are created for each polyline.

virtual int vtkSplineFilter::GetMaximumNumberOfSubdivisions (  )  [virtual]

Set the maximum number of subdivisions that are created for each polyline.

virtual void vtkSplineFilter::SetSubdivide ( int   )  [virtual]

Specify how the number of subdivisions is determined.

virtual int vtkSplineFilter::GetSubdivide (  )  [virtual]

Specify how the number of subdivisions is determined.

void vtkSplineFilter::SetSubdivideToSpecified (  )  [inline]

Specify how the number of subdivisions is determined.

Definition at line 80 of file vtkSplineFilter.h.

void vtkSplineFilter::SetSubdivideToLength (  )  [inline]

Specify how the number of subdivisions is determined.

Definition at line 82 of file vtkSplineFilter.h.

const char* vtkSplineFilter::GetSubdivideAsString (  ) 

Specify how the number of subdivisions is determined.

virtual void vtkSplineFilter::SetNumberOfSubdivisions ( int   )  [virtual]

Set the number of subdivisions that are created for the polyline. This method only has effect if Subdivisions is set to SetSubdivisionsToSpecify().

virtual int vtkSplineFilter::GetNumberOfSubdivisions (  )  [virtual]

Set the number of subdivisions that are created for the polyline. This method only has effect if Subdivisions is set to SetSubdivisionsToSpecify().

virtual void vtkSplineFilter::SetLength ( double   )  [virtual]

Control the number of subdivisions that are created for the polyline based on an absolute length. The length of the spline is divided by this length to determine the number of subdivisions.

virtual double vtkSplineFilter::GetLength (  )  [virtual]

Control the number of subdivisions that are created for the polyline based on an absolute length. The length of the spline is divided by this length to determine the number of subdivisions.

virtual void vtkSplineFilter::SetSpline ( vtkSpline  )  [virtual]

Specify an instance of vtkSpline to use to perform the interpolation.

virtual vtkSpline* vtkSplineFilter::GetSpline (  )  [virtual]

Specify an instance of vtkSpline to use to perform the interpolation.

virtual void vtkSplineFilter::SetGenerateTCoords ( int   )  [virtual]

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

virtual int vtkSplineFilter::GetGenerateTCoords (  )  [virtual]

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

void vtkSplineFilter::SetGenerateTCoordsToOff (  )  [inline]

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

Definition at line 118 of file vtkSplineFilter.h.

void vtkSplineFilter::SetGenerateTCoordsToNormalizedLength (  )  [inline]

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

Definition at line 120 of file vtkSplineFilter.h.

void vtkSplineFilter::SetGenerateTCoordsToUseLength (  )  [inline]

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

Definition at line 122 of file vtkSplineFilter.h.

void vtkSplineFilter::SetGenerateTCoordsToUseScalars (  )  [inline]

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

Definition at line 124 of file vtkSplineFilter.h.

const char* vtkSplineFilter::GetGenerateTCoordsAsString (  ) 

Control whether and how texture coordinates are produced. This is useful for striping the output polyline. The texture coordinates can be generated in three ways: a normalized (0,1) generation; based on the length (divided by the texture length); and by using the input scalar values.

virtual void vtkSplineFilter::SetTextureLength ( double   )  [virtual]

Control the conversion of units during the texture coordinates calculation. The TextureLength indicates what length (whether calculated from scalars or length) is mapped to the [0,1) texture space.

virtual double vtkSplineFilter::GetTextureLength (  )  [virtual]

Control the conversion of units during the texture coordinates calculation. The TextureLength indicates what length (whether calculated from scalars or length) is mapped to the [0,1) texture space.

int vtkSplineFilter::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkPolyDataAlgorithm.

int vtkSplineFilter::GeneratePoints ( vtkIdType  offset,
vtkIdType  npts,
vtkIdType pts,
vtkPoints inPts,
vtkPoints newPts,
vtkPointData pd,
vtkPointData outPD,
int  genTCoords,
vtkFloatArray newTCoords 
) [protected]

void vtkSplineFilter::GenerateLine ( vtkIdType  offset,
vtkIdType  numGenPts,
vtkIdType  inCellId,
vtkCellData cd,
vtkCellData outCD,
vtkCellArray newLines 
) [protected]


Member Data Documentation

Definition at line 145 of file vtkSplineFilter.h.

int vtkSplineFilter::Subdivide [protected]

Definition at line 146 of file vtkSplineFilter.h.

Definition at line 147 of file vtkSplineFilter.h.

double vtkSplineFilter::Length [protected]

Definition at line 148 of file vtkSplineFilter.h.

Definition at line 149 of file vtkSplineFilter.h.

Definition at line 150 of file vtkSplineFilter.h.

Definition at line 151 of file vtkSplineFilter.h.

Definition at line 152 of file vtkSplineFilter.h.

Definition at line 153 of file vtkSplineFilter.h.

double vtkSplineFilter::TextureLength [protected]

Definition at line 154 of file vtkSplineFilter.h.

Definition at line 166 of file vtkSplineFilter.h.


The documentation for this class was generated from the following file:

Generated on Wed Jun 3 19:35:52 2009 for VTK by  doxygen 1.5.6