VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkSplineFilter Class Reference

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

#include <vtkSplineFilter.h>

Inherits vtkPolyDataAlgorithm.

Public Types

typedef vtkPolyDataAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkSplineFilterNewInstance () const
 
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 vtkSpline * GetSpline ()
 
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 (vtkObjectBase *o)
 
static vtkSplineFilterNew ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 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
 
vtkSpline * Spline
 
vtkSpline * XSpline
 
vtkSpline * YSpline
 
vtkSpline * ZSpline
 
int GenerateTCoords
 
double TextureLength
 
vtkFloatArray * TCoordMap
 

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 60 of file vtkSplineFilter.h.

Member Typedef Documentation

typedef vtkPolyDataAlgorithm vtkSplineFilter::Superclass

Definition at line 63 of file vtkSplineFilter.h.

Constructor & Destructor Documentation

vtkSplineFilter::vtkSplineFilter ( )
protected
vtkSplineFilter::~vtkSplineFilter ( )
protected

Member Function Documentation

static int vtkSplineFilter::IsTypeOf ( const char *  type)
static
virtual int vtkSplineFilter::IsA ( const char *  type)
virtual
static vtkSplineFilter* vtkSplineFilter::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkSplineFilter::NewInstanceInternal ( ) const
protectedvirtual
vtkSplineFilter* vtkSplineFilter::NewInstance ( ) const
void vtkSplineFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
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.

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 81 of file vtkSplineFilter.h.

void vtkSplineFilter::SetSubdivideToLength ( )
inline

Specify how the number of subdivisions is determined.

Definition at line 83 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 119 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 121 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 123 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 125 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 *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protected
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

int vtkSplineFilter::MaximumNumberOfSubdivisions
protected

Definition at line 146 of file vtkSplineFilter.h.

int vtkSplineFilter::Subdivide
protected

Definition at line 147 of file vtkSplineFilter.h.

int vtkSplineFilter::NumberOfSubdivisions
protected

Definition at line 148 of file vtkSplineFilter.h.

double vtkSplineFilter::Length
protected

Definition at line 149 of file vtkSplineFilter.h.

vtkSpline* vtkSplineFilter::Spline
protected

Definition at line 150 of file vtkSplineFilter.h.

vtkSpline* vtkSplineFilter::XSpline
protected

Definition at line 151 of file vtkSplineFilter.h.

vtkSpline* vtkSplineFilter::YSpline
protected

Definition at line 152 of file vtkSplineFilter.h.

vtkSpline* vtkSplineFilter::ZSpline
protected

Definition at line 153 of file vtkSplineFilter.h.

int vtkSplineFilter::GenerateTCoords
protected

Definition at line 154 of file vtkSplineFilter.h.

double vtkSplineFilter::TextureLength
protected

Definition at line 155 of file vtkSplineFilter.h.

vtkFloatArray* vtkSplineFilter::TCoordMap
protected

Definition at line 167 of file vtkSplineFilter.h.


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