Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkButterflySubdivisionFilter Class Reference

#include <vtkButterflySubdivisionFilter.h>

Inheritance diagram for vtkButterflySubdivisionFilter:

Inheritance graph
[legend]
Collaboration diagram for vtkButterflySubdivisionFilter:

Collaboration graph
[legend]
List of all members.

Detailed Description

generate a subdivision surface using the Butterfly Scheme

vtkButterflySubdivisionFilter is an interpolating subdivision scheme that creates four new triangles for each triangle in the mesh. The user can specify the NumberOfSubdivisions. This filter implements the 8-point butterfly scheme described in: Zorin, D., Schroder, P., and Sweldens, W., "Interpolating Subdivisions for Meshes with Arbitrary Topology," Computer Graphics Proceedings, Annual Conference Series, 1996, ACM SIGGRAPH, pp.189-192. This scheme improves previous butterfly subdivisions with special treatment of vertices with valence other than 6.

Currently, the filter only operates on triangles. Users should use the vtkTriangleFilter to triangulate meshes that contain polygons or triangle strips.

The filter interpolates point data using the same scheme. New triangles created at a subdivision step will have the cell data of their parent cell.

Thanks:
This work was supported by PHS Research Grant No. 1 P41 RR13218-01 from the National Center for Research Resources.
See also:
vtkInterpolatingSubdivisionFilter vtkLinearSubdivisionFilter
Created by:
  • Lorensen, Bill
CVS contributions (if > 5%):
  • Lorensen, Bill (80%)
  • Henderson, Amy (7%)
CVS logs (CVSweb):
  • .h (/Graphics/vtkButterflySubdivisionFilter.h)
  • .cxx (/Graphics/vtkButterflySubdivisionFilter.cxx)
Tests:
vtkButterflySubdivisionFilter (Tests)

Definition at line 67 of file vtkButterflySubdivisionFilter.h.

[NOHEADER]

typedef vtkInterpolatingSubdivisionFilter Superclass
virtual const char * GetClassName ()
virtual int IsA (const char *type)
vtkButterflySubdivisionFilterNew ()
int IsTypeOf (const char *type)
vtkButterflySubdivisionFilterSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkButterflySubdivisionFilter ()
 ~vtkButterflySubdivisionFilter ()


Member Typedef Documentation

typedef vtkInterpolatingSubdivisionFilter vtkButterflySubdivisionFilter::Superclass
 

Reimplemented from vtkInterpolatingSubdivisionFilter.

Definition at line 73 of file vtkButterflySubdivisionFilter.h.


Constructor & Destructor Documentation

vtkButterflySubdivisionFilter::vtkButterflySubdivisionFilter  )  [inline, protected]
 

Definition at line 77 of file vtkButterflySubdivisionFilter.h.

vtkButterflySubdivisionFilter::~vtkButterflySubdivisionFilter  )  [inline, protected]
 

Definition at line 78 of file vtkButterflySubdivisionFilter.h.


Member Function Documentation

vtkButterflySubdivisionFilter* vtkButterflySubdivisionFilter::New  )  [static]
 

Construct object with NumberOfSubdivisions set to 1.

Reimplemented from vtkAlgorithm.

virtual const char* vtkButterflySubdivisionFilter::GetClassName  )  [virtual]
 

Reimplemented from vtkInterpolatingSubdivisionFilter.

int vtkButterflySubdivisionFilter::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 vtkInterpolatingSubdivisionFilter.

virtual int vtkButterflySubdivisionFilter::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 vtkInterpolatingSubdivisionFilter.

vtkButterflySubdivisionFilter* vtkButterflySubdivisionFilter::SafeDownCast vtkObject o  )  [static]
 

Reimplemented from vtkInterpolatingSubdivisionFilter.


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