37 #ifndef __vtkPolyhedron_h
38 #define __vtkPolyhedron_h
40 #include "vtkCommonDataModelModule.h"
51 class vtkIdToIdVectorMapType;
52 class vtkIdToIdMapType;
71 virtual void GetEdgePoints(
int vtkNotUsed(edgeId),
int* &vtkNotUsed(pts)) {}
72 virtual void GetFacePoints(
int vtkNotUsed(faceId),
int* &vtkNotUsed(pts)) {}
130 int& subId,
double pcoords[3],
131 double& dist2,
double *weights);
147 double x[3],
double pcoords[3],
int& subId);
171 virtual void Derivatives(
int subId,
double pcoords[3],
double *values,
172 int dim,
double *derivs);
211 int IsInside(
double x[3],
double tolerance);
248 void GenerateFaces();
252 void ComputeBounds();
253 void ComputeParametricCoordinate(
double x[3],
double pc[3]);
254 void ComputePositionFromParametricCoordinate(
double pc[3],
double x[3]);
261 void ConstructPolyData();
264 void ConstructLocator();
270 int InternalContour(
double value,
278 vtkIdToIdVectorMapType & faceToPointsMap,
279 vtkIdToIdVectorMapType & pointToFacesMap,
280 vtkIdToIdMapType & pointIdMap);
286 int IntersectWithContour(
double value,
296 vtkInternal * Internal;
303 pcoords[0] = pcoords[1] = pcoords[2] = 0.5;