Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages
vtkLinearExtrusionFilter Class Reference
#include <vtkLinearExtrusionFilter.h>
Inheritance diagram for vtkLinearExtrusionFilter:
[legend]Collaboration diagram for vtkLinearExtrusionFilter:
[legend]List of all members.
Detailed Description
sweep polygonal data creating a "skirt" from free edges and lines, and lines from vertices
- Date:
-
2002/09/03 12:52:23
- Revision:
-
1.41
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
- Created by:
-
- CVS contributions (if > 5%):
-
- Schroeder, Will (60%)
- Martin, Ken (11%)
- Law, Charles (11%)
- CVS logs (CVSweb):
-
- .
h
(/Graphics/vtkLinearExtrusionFilter.h)
- .
cxx
(/Graphics/vtkLinearExtrusionFilter.cxx)
- Tests:
-
vtkLinearExtrusionFilter (Tests)
Definition at line 80 of file vtkLinearExtrusionFilter.h.
|
Public Types |
typedef vtkPolyDataToPolyDataFilter | Superclass |
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 | 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 () |
void | Execute () |
float * | ViaNormal (float x[3], vtkIdType id, vtkDataArray *normals) |
float * | ViaVector (float x[3], vtkIdType id, vtkDataArray *normals=0) |
float * | ViaPoint (float x[3], vtkIdType id, vtkDataArray *normals=0) |
Protected Attributes |
int | ExtrusionType |
int | Capping |
float | ScaleFactor |
float | Vector [3] |
float | ExtrusionPoint [3] |
float *(vtkLinearExtrusionFilter::* | ExtrudePoint )(float x[3], vtkIdType id, vtkDataArray *normals) |
Member Typedef Documentation
Constructor & Destructor Documentation
vtkLinearExtrusionFilter::vtkLinearExtrusionFilter |
( |
|
) |
[protected] |
|
vtkLinearExtrusionFilter::~vtkLinearExtrusionFilter |
( |
|
) |
[inline, protected] |
|
Member Function Documentation
virtual const char* vtkLinearExtrusionFilter::GetClassName |
( |
|
) |
[virtual] |
|
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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkPolyDataToPolyDataFilter.
Reimplemented in vtkPLinearExtrusionFilter. |
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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkPolyDataToPolyDataFilter.
Reimplemented in vtkPLinearExtrusionFilter. |
vtkLinearExtrusionFilter* vtkLinearExtrusionFilter::SafeDownCast |
( |
vtkObject * |
o |
) |
[static] |
|
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 vtkPolyDataToPolyDataFilter.
Reimplemented in vtkPLinearExtrusionFilter. |
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 vtkObject.
Reimplemented in vtkPLinearExtrusionFilter. |
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] |
|
void vtkLinearExtrusionFilter::SetExtrusionTypeToNormalExtrusion |
( |
|
) |
[inline] |
|
void vtkLinearExtrusionFilter::SetExtrusionTypeToPointExtrusion |
( |
|
) |
[inline] |
|
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 |
( |
float |
|
) |
[virtual] |
|
|
Set/Get extrusion scale factor, |
virtual float vtkLinearExtrusionFilter::GetScaleFactor |
( |
|
) |
[virtual] |
|
|
Set/Get extrusion scale factor, |
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] |
|
|
Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on. |
virtual float* vtkLinearExtrusionFilter::GetVector |
( |
|
) |
[virtual] |
|
|
Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on. |
virtual void vtkLinearExtrusionFilter::GetVector |
( |
float |
data[3] |
) |
[virtual] |
|
|
Set/Get extrusion vector. Only needs to be set if VectorExtrusion is turned on. |
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] |
|
|
Set/Get extrusion point. Only needs to be set if PointExtrusion is turned on. This is the point towards which extrusion occurs. |
virtual float* 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 |
( |
float |
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. |
void vtkLinearExtrusionFilter::Execute |
( |
|
) |
[protected, virtual] |
|
float* vtkLinearExtrusionFilter::ViaNormal |
( |
float |
x[3], |
|
|
vtkIdType |
id, |
|
|
vtkDataArray * |
normals |
|
) |
[protected] |
|
float* vtkLinearExtrusionFilter::ViaVector |
( |
float |
x[3], |
|
|
vtkIdType |
id, |
|
|
vtkDataArray * |
normals = 0 |
|
) |
[protected] |
|
float* vtkLinearExtrusionFilter::ViaPoint |
( |
float |
x[3], |
|
|
vtkIdType |
id, |
|
|
vtkDataArray * |
normals = 0 |
|
) |
[protected] |
|
Member Data Documentation
int vtkLinearExtrusionFilter::ExtrusionType [protected]
|
|
int vtkLinearExtrusionFilter::Capping [protected]
|
|
float vtkLinearExtrusionFilter::ScaleFactor [protected]
|
|
float vtkLinearExtrusionFilter::Vector[3] [protected]
|
|
float vtkLinearExtrusionFilter::ExtrusionPoint[3] [protected]
|
|
float*(vtkLinearExtrusionFilter::* vtkLinearExtrusionFilter::ExtrudePoint)(float x[3], vtkIdType id, vtkDataArray *normals) [protected]
|
|
The documentation for this class was generated from the following file: