Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

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:

Inheritance graph
[legend]
Collaboration diagram for vtkLinearExtrusionFilter:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
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 SetLowerCap (int)
virtual int GetLowerCap ()
virtual void LowerCapOn ()
virtual void LowerCapOff ()
virtual void SetUpperCap (int)
virtual int GetUpperCap ()
virtual void UpperCapOn ()
virtual void UpperCapOff ()
virtual void SetScaleFactor (float)
virtual float GetScaleFactor ()
virtual void SetVector (float, float, float)
virtual void SetVector (float[3])
virtual float * GetVector ()
virtual void GetVector (float data[3])
virtual void SetExtrusionPoint (float, float, float)
virtual void SetExtrusionPoint (float[3])
virtual float * GetExtrusionPoint ()
virtual void GetExtrusionPoint (float data[3])

Static Public Methods

int IsTypeOf (const char *type)
vtkLinearExtrusionFilter * SafeDownCast (vtkObject *o)
vtkLinearExtrusionFilter * New ()

Protected Methods

 vtkLinearExtrusionFilter ()
 ~vtkLinearExtrusionFilter ()
 vtkLinearExtrusionFilter (const vtkLinearExtrusionFilter &)
void operator= (const vtkLinearExtrusionFilter &)
void Execute ()
float * ViaNormal (float x[3], int id, vtkNormals *normals=NULL)
float * ViaVector (float x[3], int id, vtkNormals *normals=NULL)
float * ViaPoint (float x[3], int id, vtkNormals *normals=NULL)

Protected Attributes

int ExtrusionType
int Capping
int LowerCap
int UpperCap
float ScaleFactor
float Vector [3]
float ExtrusionPoint [3]
float *(vtkLinearExtrusionFilter::* ExtrudePoint )(float x[3], int id, vtkNormals *normals)

Detailed Description

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

Date:
2000/12/22 12:32:04
Revision:
1.32.2.1

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. (The capping can be further controlled by setting the LowerCap and UpperCap instance variables.) 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)

Definition at line 90 of file vtkLinearExtrusionFilter.h.


Constructor & Destructor Documentation

vtkLinearExtrusionFilter::vtkLinearExtrusionFilter   [protected]
 

vtkLinearExtrusionFilter::~vtkLinearExtrusionFilter   [inline, protected]
 

Definition at line 145 of file vtkLinearExtrusionFilter.h.

vtkLinearExtrusionFilter::vtkLinearExtrusionFilter const vtkLinearExtrusionFilter &    [inline, protected]
 

Definition at line 146 of file vtkLinearExtrusionFilter.h.


Member Function Documentation

virtual const char* vtkLinearExtrusionFilter::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataToPolyDataFilter.

int vtkLinearExtrusionFilter::IsTypeOf const char *    type [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 vtkPolyDataToPolyDataFilter.

virtual int vtkLinearExtrusionFilter::IsA const char *    type [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 vtkPolyDataToPolyDataFilter.

vtkLinearExtrusionFilter* vtkLinearExtrusionFilter::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataToPolyDataFilter.

void vtkLinearExtrusionFilter::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 vtkSource.

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).

Reimplemented from vtkPolyDataSource.

virtual void vtkLinearExtrusionFilter::SetExtrusionType int    [virtual]
 

Set/Get the type of extrusion.

virtual int vtkLinearExtrusionFilter::GetExtrusionType   [virtual]
 

void vtkLinearExtrusionFilter::SetExtrusionTypeToVectorExtrusion   [inline]
 

Definition at line 103 of file vtkLinearExtrusionFilter.h.

void vtkLinearExtrusionFilter::SetExtrusionTypeToNormalExtrusion   [inline]
 

Definition at line 105 of file vtkLinearExtrusionFilter.h.

void vtkLinearExtrusionFilter::SetExtrusionTypeToPointExtrusion   [inline]
 

Definition at line 107 of file vtkLinearExtrusionFilter.h.

virtual void vtkLinearExtrusionFilter::SetCapping int    [virtual]
 

Turn on/off the capping of the skirt.

virtual int vtkLinearExtrusionFilter::GetCapping   [virtual]
 

virtual void vtkLinearExtrusionFilter::CappingOn   [virtual]
 

virtual void vtkLinearExtrusionFilter::CappingOff   [virtual]
 

virtual void vtkLinearExtrusionFilter::SetLowerCap int    [virtual]
 

Turn on/off the generation of the lower cap. This ivar is effective only if Capping is on. (The lower cap is the original (input) polydata.)

virtual int vtkLinearExtrusionFilter::GetLowerCap   [virtual]
 

virtual void vtkLinearExtrusionFilter::LowerCapOn   [virtual]
 

virtual void vtkLinearExtrusionFilter::LowerCapOff   [virtual]
 

virtual void vtkLinearExtrusionFilter::SetUpperCap int    [virtual]
 

Turn on/off the generation of the upper cap. This ivar is effective only if Capping is on. (The upper cap is the generated at the end of the extrusion.)

virtual int vtkLinearExtrusionFilter::GetUpperCap   [virtual]
 

virtual void vtkLinearExtrusionFilter::UpperCapOn   [virtual]
 

virtual void vtkLinearExtrusionFilter::UpperCapOff   [virtual]
 

virtual void vtkLinearExtrusionFilter::SetScaleFactor float    [virtual]
 

Set/Get extrusion scale factor,

virtual float vtkLinearExtrusionFilter::GetScaleFactor   [virtual]
 

virtual void vtkLinearExtrusionFilter::SetVector float   ,
float   ,
float   
[virtual]
 

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

virtual void vtkLinearExtrusionFilter::SetVector float   [3] [virtual]
 

virtual float* vtkLinearExtrusionFilter::GetVector   [virtual]
 

virtual void vtkLinearExtrusionFilter::GetVector float    data[3] [virtual]
 

virtual void vtkLinearExtrusionFilter::SetExtrusionPoint float   ,
float   ,
float   
[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 float   [3] [virtual]
 

virtual float* vtkLinearExtrusionFilter::GetExtrusionPoint   [virtual]
 

virtual void vtkLinearExtrusionFilter::GetExtrusionPoint float    data[3] [virtual]
 

void vtkLinearExtrusionFilter::operator= const vtkLinearExtrusionFilter &    [inline, protected]
 

Definition at line 147 of file vtkLinearExtrusionFilter.h.

void vtkLinearExtrusionFilter::Execute   [protected, virtual]
 

Reimplemented from vtkSource.

float* vtkLinearExtrusionFilter::ViaNormal float    x[3],
int    id,
vtkNormals   normals = NULL
[protected]
 

float* vtkLinearExtrusionFilter::ViaVector float    x[3],
int    id,
vtkNormals   normals = NULL
[protected]
 

float* vtkLinearExtrusionFilter::ViaPoint float    x[3],
int    id,
vtkNormals   normals = NULL
[protected]
 


Member Data Documentation

int vtkLinearExtrusionFilter::ExtrusionType [protected]
 

Definition at line 150 of file vtkLinearExtrusionFilter.h.

int vtkLinearExtrusionFilter::Capping [protected]
 

Definition at line 151 of file vtkLinearExtrusionFilter.h.

int vtkLinearExtrusionFilter::LowerCap [protected]
 

Definition at line 152 of file vtkLinearExtrusionFilter.h.

int vtkLinearExtrusionFilter::UpperCap [protected]
 

Definition at line 153 of file vtkLinearExtrusionFilter.h.

float vtkLinearExtrusionFilter::ScaleFactor [protected]
 

Definition at line 154 of file vtkLinearExtrusionFilter.h.

float vtkLinearExtrusionFilter::Vector[3] [protected]
 

Definition at line 155 of file vtkLinearExtrusionFilter.h.

float vtkLinearExtrusionFilter::ExtrusionPoint[3] [protected]
 

Definition at line 156 of file vtkLinearExtrusionFilter.h.

float*(vtkLinearExtrusionFilter::* vtkLinearExtrusionFilter::ExtrudePoint)(float x[3], int id, vtkNormals *normals) [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Nov 21 12:52:44 2001 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001