vtkLoopSubdivisionFilter.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00052 #ifndef __vtkLoopSubdivisionFilter_h
00053 #define __vtkLoopSubdivisionFilter_h
00054
00055 #include "vtkApproximatingSubdivisionFilter.h"
00056
00057 class vtkPolyData;
00058 class vtkIntArray;
00059 class vtkPoints;
00060 class vtkIdList;
00061
00062 class VTK_GRAPHICS_EXPORT vtkLoopSubdivisionFilter : public vtkApproximatingSubdivisionFilter
00063 {
00064 public:
00066
00067 static vtkLoopSubdivisionFilter *New();
00068 vtkTypeRevisionMacro(vtkLoopSubdivisionFilter,vtkApproximatingSubdivisionFilter);
00070
00071 protected:
00072 vtkLoopSubdivisionFilter () {};
00073 ~vtkLoopSubdivisionFilter () {};
00074
00075 void GenerateSubdivisionPoints (vtkPolyData *inputDS, vtkIntArray *edgeData,
00076 vtkPoints *outputPts,
00077 vtkPointData *outputPD);
00078 void GenerateEvenStencil (vtkIdType p1, vtkPolyData *polys,
00079 vtkIdList *stencilIds, float *weights);
00080 void GenerateOddStencil (vtkIdType p1, vtkIdType p2, vtkPolyData *polys,
00081 vtkIdList *stencilIds, float *weights);
00082
00083 void ComputeInputUpdateExtents(vtkDataObject *output);
00084 private:
00085 vtkLoopSubdivisionFilter(const vtkLoopSubdivisionFilter&);
00086 void operator=(const vtkLoopSubdivisionFilter&);
00087 };
00088
00089 #endif
00090
00091