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

# Graphics/vtkFeatureEdges.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkFeatureEdges.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00059 #ifndef __vtkFeatureEdges_h
    00060 #define __vtkFeatureEdges_h
    00061
    00062 #include "vtkPolyDataToPolyDataFilter.h"
    00063
    00064 class vtkPointLocator;
    00065
    00066 class VTK_GRAPHICS_EXPORT vtkFeatureEdges : public vtkPolyDataToPolyDataFilter
    00067 {
    00068 public:
    00069   vtkTypeRevisionMacro(vtkFeatureEdges,vtkPolyDataToPolyDataFilter);
    00070   void PrintSelf(ostream& os, vtkIndent indent);
    00071
    00074   static vtkFeatureEdges *New();
    00075
    00077
    00078   vtkSetMacro(BoundaryEdges,int);
    00079   vtkGetMacro(BoundaryEdges,int);
    00080   vtkBooleanMacro(BoundaryEdges,int);
    00082
    00084
    00085   vtkSetMacro(FeatureEdges,int);
    00086   vtkGetMacro(FeatureEdges,int);
    00087   vtkBooleanMacro(FeatureEdges,int);
    00089
    00091
    00092   vtkSetClampMacro(FeatureAngle,float,0.0,180.0);
    00093   vtkGetMacro(FeatureAngle,float);
    00095
    00097
    00098   vtkSetMacro(NonManifoldEdges,int);
    00099   vtkGetMacro(NonManifoldEdges,int);
    00100   vtkBooleanMacro(NonManifoldEdges,int);
    00102
    00104
    00105   vtkSetMacro(ManifoldEdges,int);
    00106   vtkGetMacro(ManifoldEdges,int);
    00107   vtkBooleanMacro(ManifoldEdges,int);
    00109
    00111
    00112   vtkSetMacro(Coloring,int);
    00113   vtkGetMacro(Coloring,int);
    00114   vtkBooleanMacro(Coloring,int);
    00116
    00118
    00120   void SetLocator(vtkPointLocator *locator);
    00121   vtkGetObjectMacro(Locator,vtkPointLocator);
    00123
    00125   void CreateDefaultLocator();
    00126
    00128   unsigned long GetMTime();
    00129
    00130 protected:
    00131   vtkFeatureEdges();
    00132   ~vtkFeatureEdges();
    00133
    00134   // Usual data generation method
    00135   void Execute();
    00136   void ComputeInputUpdateExtents(vtkDataObject *output);
    00137
    00138   float FeatureAngle;
    00139   int BoundaryEdges;
    00140   int FeatureEdges;
    00141   int NonManifoldEdges;
    00142   int ManifoldEdges;
    00143   int Coloring;
    00144   vtkPointLocator *Locator;
    00145 private:
    00146   vtkFeatureEdges(const vtkFeatureEdges&);  // Not implemented.
    00147   void operator=(const vtkFeatureEdges&);  // Not implemented.
    00148 };
    00149
    00150 #endif
    00151
    00152