Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages
Common/vtkNonLinearCell.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00050 #ifndef __vtkNonLinearCell_h
00051 #define __vtkNonLinearCell_h
00052
00053 #include "vtkCell.h"
00054
00055 #include "vtkPointLocator.h"
00056 #include "vtkPoints.h"
00057
00058 class vtkPolyData;
00059 class vtkDataSet;
00060 class vtkUnstructuredGrid;
00061
00062 class VTK_COMMON_EXPORT vtkNonLinearCell : public vtkCell
00063 {
00064 public:
00065 vtkTypeRevisionMacro(vtkNonLinearCell,vtkCell);
00066 void PrintSelf(ostream& os, vtkIndent indent);
00067
00069
00071 vtkSetClampMacro(Error,float,0.001f,1.0f);
00072 vtkGetMacro(Error,float);
00074
00078 virtual int IsLinear() {return 0;}
00079
00081
00091 virtual void Tesselate(vtkIdType cellId,
00092 vtkDataSet *input, vtkPolyData *output,
00093 vtkPointLocator *locator=NULL);
00095
00097
00107 virtual void Tesselate(vtkIdType cellId,
00108 vtkDataSet *input, vtkUnstructuredGrid *output,
00109 vtkPointLocator *locator=NULL);
00111
00112
00113 protected:
00114 vtkNonLinearCell();
00115 ~vtkNonLinearCell() {}
00116
00117 float Error;
00118
00119
00120 vtkIdType InsertPoint(vtkPointLocator *locator, vtkPoints *pts, float *x)
00121 {
00122 if ( locator != NULL )
00123 {
00124 vtkIdType p;
00125 locator->InsertUniquePoint(x,p);
00126 return p;
00127 }
00128 else
00129 {
00130 return pts->InsertNextPoint(x);
00131 }
00132 }
00133
00134 private:
00135 vtkNonLinearCell(const vtkNonLinearCell&);
00136 void operator=(const vtkNonLinearCell&);
00137 };
00138
00139 #endif
00140
00141