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
vtkLinearExtrusionFilter Class Reference

sweep polygonal data creating a "skirt" from free edges and lines, and lines from vertices More...

#include <vtkLinearExtrusionFilter.h>

Inheritance diagram for vtkLinearExtrusionFilter:
[legend]

Public Types

typedef vtkPolyDataAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkLinearExtrusionFilterNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual void SetExtrusionType (int)
 
virtual int GetExtrusionType ()
 
void SetExtrusionTypeToVectorExtrusion ()
 
void SetExtrusionTypeToNormalExtrusion ()
 
void SetExtrusionTypeToPointExtrusion ()
 
virtual void SetCapping (int)
 
virtual int GetCapping ()
 
virtual void CappingOn ()
 
virtual void CappingOff ()
 
virtual void SetScaleFactor (double)
 
virtual double GetScaleFactor ()
 
virtual void SetVector (double, double, double)
 
virtual void SetVector (double[3])
 
virtual double * GetVector ()
 
virtual void GetVector (double data[3])
 
virtual void SetExtrusionPoint (double, double, double)
 
virtual void SetExtrusionPoint (double[3])
 
virtual double * GetExtrusionPoint ()
 
virtual void GetExtrusionPoint (double data[3])
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkLinearExtrusionFilterSafeDownCast (vtkObjectBase *o)
 
static vtkLinearExtrusionFilterNew ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkLinearExtrusionFilter ()
 
 ~vtkLinearExtrusionFilter ()
 
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
void ViaNormal (double x[3], vtkIdType id, vtkDataArray *normals)
 
void ViaVector (double x[3], vtkIdType id, vtkDataArray *normals=0)
 
void ViaPoint (double x[3], vtkIdType id, vtkDataArray *normals=0)
 

Protected Attributes

int ExtrusionType
 
int Capping
 
double ScaleFactor
 
double Vector [3]
 
double ExtrusionPoint [3]
 
void(vtkLinearExtrusionFilter::* ExtrudePoint )(double x[3], vtkIdType id, vtkDataArray *normals)
 

Detailed Description

sweep polygonal data creating a "skirt" from free edges and lines, and lines from vertices

vtkLinearExtrusionFilter is a modeling filter. It takes polygonal data as input and generates polygonal data on output. The input dataset is swept according to some extrusion function and creates new polygonal primitives. These primitives form a "skirt" or swept surface. For example, sweeping a line results in a quadrilateral, and sweeping a triangle creates a "wedge".

There are a number of control parameters for this filter. You can control whether the sweep of a 2D object (i.e., polygon or triangle strip) is capped with the generating geometry via the "Capping" ivar. Also, you can extrude in the direction of a user specified vector, towards a point, or in the direction of vertex normals (normals must be provided - use vtkPolyDataNormals if necessary). The amount of extrusion is controlled by the "ScaleFactor" instance variable.

The skirt is generated by locating certain topological features. Free edges (edges of polygons or triangle strips only used by one polygon or triangle strips) generate surfaces. This is true also of lines or polylines. Vertices generate lines.

This filter can be used to create 3D fonts, 3D irregular bar charts, or to model 2 1/2D objects like punched plates. It also can be used to create solid objects from 2D polygonal meshes.

Warning
Some polygonal objects have no free edges (e.g., sphere). When swept, this will result in two separate surfaces if capping is on, or no surface if capping is off.
See Also
vtkRotationalExtrusionFilter
Examples:
vtkLinearExtrusionFilter (Examples)
Tests:
vtkLinearExtrusionFilter (Tests)

Definition at line 68 of file vtkLinearExtrusionFilter.h.

Member Typedef Documentation

typedef vtkPolyDataAlgorithm vtkLinearExtrusionFilter::Superclass

Definition at line 71 of file vtkLinearExtrusionFilter.h.

Constructor & Destructor Documentation

vtkLinearExtrusionFilter::vtkLinearExtrusionFilter ( )
protected
vtkLinearExtrusionFilter::~vtkLinearExtrusionFilter ( )
inlineprotected

Definition at line 119 of file vtkLinearExtrusionFilter.h.

Member Function Documentation

static int vtkLinearExtrusionFilter::IsTypeOf ( const char *  type)
static
virtual int vtkLinearExtrusionFilter::IsA ( const char *  type)
virtual

Reimplemented in vtkPLinearExtrusionFilter.

static vtkLinearExtrusionFilter* vtkLinearExtrusionFilter::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkLinearExtrusionFilter::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented in vtkPLinearExtrusionFilter.

vtkLinearExtrusionFilter* vtkLinearExtrusionFilter::NewInstance ( ) const
void vtkLinearExtrusionFilter::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
static vtkLinearExtrusionFilter* vtkLinearExtrusionFilter::New ( )
static

Create object with normal extrusion type, capping on, scale factor=1.0, vector (0,0,1), and extrusion point (0,0,0).

virtual void vtkLinearExtrusionFilter::SetExtrusionType ( int  )
virtual

Set/Get the type of extrusion.

virtual int vtkLinearExtrusionFilter::GetExtrusionType ( )
virtual

Set/Get the type of extrusion.

void vtkLinearExtrusionFilter::SetExtrusionTypeToVectorExtrusion ( )
inline

Set/Get the type of extrusion.

Definition at line 82 of file vtkLinearExtrusionFilter.h.

void vtkLinearExtrusionFilter::SetExtrusionTypeToNormalExtrusion ( )
inline

Set/Get the type of extrusion.

Definition at line 84 of file vtkLinearExtrusionFilter.h.

void vtkLinearExtrusionFilter::SetExtrusionTypeToPointExtrusion ( )
inline

Set/Get the type of extrusion.

Definition at line 86 of file vtkLinearExtrusionFilter.h.

virtual void vtkLinearExtrusionFilter::SetCapping ( int  )
virtual

Turn on/off the capping of the skirt.

virtual int vtkLinearExtrusionFilter::GetCapping ( )
virtual

Turn on/off the capping of the skirt.

virtual void vtkLinearExtrusionFilter::CappingOn ( )
virtual

Turn on/off the capping of the skirt.

virtual void vtkLinearExtrusionFilter::CappingOff ( )
virtual

Turn on/off the capping of the skirt.

virtual void vtkLinearExtrusionFilter::SetScaleFactor ( double  )
virtual

Set/Get extrusion scale factor,

virtual double vtkLinearExtrusionFilter::GetScaleFactor ( )
virtual

Set/Get extrusion scale factor,

virtual void vtkLinearExtrusionFilter::SetVector ( double  ,
double  ,
double   
)
virtual

Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on.

virtual void vtkLinearExtrusionFilter::SetVector ( double  [3])
virtual

Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on.

virtual double* vtkLinearExtrusionFilter::GetVector ( )
virtual

Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on.

virtual void vtkLinearExtrusionFilter::GetVector ( double  data[3])
virtual

Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on.

virtual void vtkLinearExtrusionFilter::SetExtrusionPoint ( double  ,
double  ,
double   
)
virtual

Set/Get extrusion point. Only needs to be set if PointExtrusion is turned on. This is the point towards which extrusion occurs.

virtual void vtkLinearExtrusionFilter::SetExtrusionPoint ( double  [3])
virtual

Set/Get extrusion point. Only needs to be set if PointExtrusion is turned on. This is the point towards which extrusion occurs.

virtual double* vtkLinearExtrusionFilter::GetExtrusionPoint ( )
virtual

Set/Get extrusion point. Only needs to be set if PointExtrusion is turned on. This is the point towards which extrusion occurs.

virtual void vtkLinearExtrusionFilter::GetExtrusionPoint ( double  data[3])
virtual

Set/Get extrusion point. Only needs to be set if PointExtrusion is turned on. This is the point towards which extrusion occurs.

virtual int vtkLinearExtrusionFilter::RequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protectedvirtual

Reimplemented in vtkPLinearExtrusionFilter.

void vtkLinearExtrusionFilter::ViaNormal ( double  x[3],
vtkIdType  id,
vtkDataArray *  normals 
)
protected
void vtkLinearExtrusionFilter::ViaVector ( double  x[3],
vtkIdType  id,
vtkDataArray *  normals = 0 
)
protected
void vtkLinearExtrusionFilter::ViaPoint ( double  x[3],
vtkIdType  id,
vtkDataArray *  normals = 0 
)
protected

Member Data Documentation

int vtkLinearExtrusionFilter::ExtrusionType
protected

Definition at line 122 of file vtkLinearExtrusionFilter.h.

int vtkLinearExtrusionFilter::Capping
protected

Definition at line 123 of file vtkLinearExtrusionFilter.h.

double vtkLinearExtrusionFilter::ScaleFactor
protected

Definition at line 124 of file vtkLinearExtrusionFilter.h.

double vtkLinearExtrusionFilter::Vector[3]
protected

Definition at line 125 of file vtkLinearExtrusionFilter.h.

double vtkLinearExtrusionFilter::ExtrusionPoint[3]
protected

Definition at line 126 of file vtkLinearExtrusionFilter.h.

void(vtkLinearExtrusionFilter::* vtkLinearExtrusionFilter::ExtrudePoint)(double x[3], vtkIdType id, vtkDataArray *normals)
protected

Definition at line 129 of file vtkLinearExtrusionFilter.h.


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