VTK
|
compute normals for polygonal mesh More...
#include <vtkPolyDataNormals.h>
Public Types | |
typedef vtkPolyDataAlgorithm | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkPolyDataNormals * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | SetFeatureAngle (double) |
virtual double | GetFeatureAngle () |
virtual void | SetSplitting (int) |
virtual int | GetSplitting () |
virtual void | SplittingOn () |
virtual void | SplittingOff () |
virtual void | SetConsistency (int) |
virtual int | GetConsistency () |
virtual void | ConsistencyOn () |
virtual void | ConsistencyOff () |
virtual void | SetAutoOrientNormals (int) |
virtual int | GetAutoOrientNormals () |
virtual void | AutoOrientNormalsOn () |
virtual void | AutoOrientNormalsOff () |
virtual void | SetComputePointNormals (int) |
virtual int | GetComputePointNormals () |
virtual void | ComputePointNormalsOn () |
virtual void | ComputePointNormalsOff () |
virtual void | SetComputeCellNormals (int) |
virtual int | GetComputeCellNormals () |
virtual void | ComputeCellNormalsOn () |
virtual void | ComputeCellNormalsOff () |
virtual void | SetFlipNormals (int) |
virtual int | GetFlipNormals () |
virtual void | FlipNormalsOn () |
virtual void | FlipNormalsOff () |
virtual void | SetNonManifoldTraversal (int) |
virtual int | GetNonManifoldTraversal () |
virtual void | NonManifoldTraversalOn () |
virtual void | NonManifoldTraversalOff () |
virtual void | SetOutputPointsPrecision (int) |
virtual int | GetOutputPointsPrecision () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkPolyDataNormals * | SafeDownCast (vtkObjectBase *o) |
static vtkPolyDataNormals * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkPolyDataNormals () | |
~vtkPolyDataNormals () | |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
Protected Attributes | |
double | FeatureAngle |
int | Splitting |
int | Consistency |
int | FlipNormals |
int | AutoOrientNormals |
int | NonManifoldTraversal |
int | ComputePointNormals |
int | ComputeCellNormals |
int | NumFlips |
int | OutputPointsPrecision |
compute normals for polygonal mesh
vtkPolyDataNormals is a filter that computes point and/or cell normals for a polygonal mesh. The user specifies if they would like the point and/or cell normals to be computed by setting the ComputeCellNormals and ComputePointNormals flags.
The computed normals (a vtkFloatArray) are set to be the active normals (using SetNormals()) of the PointData and/or the CellData (respectively) of the output PolyData. The name of these arrays is "Normals", so they can be retrieved either with vtkFloatArray::SafeDownCast(output->GetPointData()->GetNormals()) or with vtkFloatArray::SafeDownCast(output->GetPointData()->GetArray("Normals"))
The filter can reorder polygons to insure consistent orientation across polygon neighbors. Sharp edges can be split and points duplicated with separate normals to give crisp (rendered) surface definition. It is also possible to globally flip the normal orientation.
The algorithm works by determining normals for each polygon and then averaging them at shared points. When sharp edges are present, the edges are split and new points generated to prevent blurry edges (due to Gouraud shading).
Definition at line 66 of file vtkPolyDataNormals.h.
typedef vtkPolyDataAlgorithm vtkPolyDataNormals::Superclass |
Definition at line 69 of file vtkPolyDataNormals.h.
|
protected |
|
inlineprotected |
Definition at line 156 of file vtkPolyDataNormals.h.
|
static |
|
virtual |
Reimplemented in vtkPPolyDataNormals.
|
static |
|
protectedvirtual |
Reimplemented in vtkPPolyDataNormals.
vtkPolyDataNormals* vtkPolyDataNormals::NewInstance | ( | ) | const |
void vtkPolyDataNormals::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
static |
Construct with feature angle=30, splitting and consistency turned on, flipNormals turned off, and non-manifold traversal turned on. ComputePointNormals is on and ComputeCellNormals is off.
|
virtual |
Specify the angle that defines a sharp edge. If the difference in angle across neighboring polygons is greater than this value, the shared edge is considered "sharp".
|
virtual |
Specify the angle that defines a sharp edge. If the difference in angle across neighboring polygons is greater than this value, the shared edge is considered "sharp".
|
virtual |
Turn on/off the splitting of sharp edges.
|
virtual |
Turn on/off the splitting of sharp edges.
|
virtual |
Turn on/off the splitting of sharp edges.
|
virtual |
Turn on/off the splitting of sharp edges.
|
virtual |
Turn on/off the enforcement of consistent polygon ordering.
|
virtual |
Turn on/off the enforcement of consistent polygon ordering.
|
virtual |
Turn on/off the enforcement of consistent polygon ordering.
|
virtual |
Turn on/off the enforcement of consistent polygon ordering.
|
virtual |
Turn on/off the automatic determination of correct normal orientation. NOTE: This assumes a completely closed surface (i.e. no boundary edges) and no non-manifold edges. If these constraints do not hold, all bets are off. This option adds some computational complexity, and is useful if you don't want to have to inspect the rendered image to determine whether to turn on the FlipNormals flag. However, this flag can work with the FlipNormals flag, and if both are set, all the normals in the output will point "inward".
|
virtual |
Turn on/off the automatic determination of correct normal orientation. NOTE: This assumes a completely closed surface (i.e. no boundary edges) and no non-manifold edges. If these constraints do not hold, all bets are off. This option adds some computational complexity, and is useful if you don't want to have to inspect the rendered image to determine whether to turn on the FlipNormals flag. However, this flag can work with the FlipNormals flag, and if both are set, all the normals in the output will point "inward".
|
virtual |
Turn on/off the automatic determination of correct normal orientation. NOTE: This assumes a completely closed surface (i.e. no boundary edges) and no non-manifold edges. If these constraints do not hold, all bets are off. This option adds some computational complexity, and is useful if you don't want to have to inspect the rendered image to determine whether to turn on the FlipNormals flag. However, this flag can work with the FlipNormals flag, and if both are set, all the normals in the output will point "inward".
|
virtual |
Turn on/off the automatic determination of correct normal orientation. NOTE: This assumes a completely closed surface (i.e. no boundary edges) and no non-manifold edges. If these constraints do not hold, all bets are off. This option adds some computational complexity, and is useful if you don't want to have to inspect the rendered image to determine whether to turn on the FlipNormals flag. However, this flag can work with the FlipNormals flag, and if both are set, all the normals in the output will point "inward".
|
virtual |
Turn on/off the computation of point normals.
|
virtual |
Turn on/off the computation of point normals.
|
virtual |
Turn on/off the computation of point normals.
|
virtual |
Turn on/off the computation of point normals.
|
virtual |
Turn on/off the computation of cell normals.
|
virtual |
Turn on/off the computation of cell normals.
|
virtual |
Turn on/off the computation of cell normals.
|
virtual |
Turn on/off the computation of cell normals.
|
virtual |
Turn on/off the global flipping of normal orientation. Flipping reverves the meaning of front and back for Frontface and Backface culling in vtkProperty. Flipping modifies both the normal direction and the order of a cell's points.
|
virtual |
Turn on/off the global flipping of normal orientation. Flipping reverves the meaning of front and back for Frontface and Backface culling in vtkProperty. Flipping modifies both the normal direction and the order of a cell's points.
|
virtual |
Turn on/off the global flipping of normal orientation. Flipping reverves the meaning of front and back for Frontface and Backface culling in vtkProperty. Flipping modifies both the normal direction and the order of a cell's points.
|
virtual |
Turn on/off the global flipping of normal orientation. Flipping reverves the meaning of front and back for Frontface and Backface culling in vtkProperty. Flipping modifies both the normal direction and the order of a cell's points.
|
virtual |
Turn on/off traversal across non-manifold edges. This will prevent problems where the consistency of polygonal ordering is corrupted due to topological loops.
|
virtual |
Turn on/off traversal across non-manifold edges. This will prevent problems where the consistency of polygonal ordering is corrupted due to topological loops.
|
virtual |
Turn on/off traversal across non-manifold edges. This will prevent problems where the consistency of polygonal ordering is corrupted due to topological loops.
|
virtual |
Turn on/off traversal across non-manifold edges. This will prevent problems where the consistency of polygonal ordering is corrupted due to topological loops.
|
virtual |
Set/get the desired precision for the output types. See the documentation for the vtkAlgorithm::DesiredOutputPrecision enum for an explanation of the available precision settings.
|
virtual |
Set/get the desired precision for the output types. See the documentation for the vtkAlgorithm::DesiredOutputPrecision enum for an explanation of the available precision settings.
|
protected |
|
protected |
Definition at line 161 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 162 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 163 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 164 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 165 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 166 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 167 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 168 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 169 of file vtkPolyDataNormals.h.
|
protected |
Definition at line 170 of file vtkPolyDataNormals.h.