36 #ifndef __vtkPyramid_h
37 #define __vtkPyramid_h
39 #include "vtkCell3D.h"
44 class vtkUnstructuredGrid;
45 class vtkIncrementalPointLocator;
52 void PrintSelf(ostream& os,
vtkIndent indent);
56 virtual void GetEdgePoints(
int edgeId,
int* &pts);
57 virtual void GetFacePoints(
int faceId,
int* &pts);
66 vtkCell *GetEdge(
int edgeId);
67 vtkCell *GetFace(
int faceId);
68 int CellBoundary(
int subId,
double pcoords[3],
vtkIdList *pts);
70 vtkIncrementalPointLocator *locator,
vtkCellArray *verts,
73 vtkCellData *inCd,
vtkIdType cellId, vtkCellData *outCd);
74 int EvaluatePosition(
double x[3],
double* closestPoint,
75 int& subId,
double pcoords[3],
76 double& dist2,
double *weights);
77 void EvaluateLocation(
int& subId,
double pcoords[3],
double x[3],
79 int IntersectWithLine(
double p1[3],
double p2[3],
double tol,
double& t,
80 double x[3],
double pcoords[3],
int& subId);
82 void Derivatives(
int subId,
double pcoords[3],
double *values,
83 int dim,
double *derivs);
84 virtual double *GetParametricCoords();
88 int GetParametricCenter(
double pcoords[3]);
93 static void InterpolationFunctions(
double pcoords[3],
double weights[5]);
96 static void InterpolationDerivs(
double pcoords[3],
double derivs[15]);
110 int JacobianInverse(
double pcoords[3],
double **inverse,
double derivs[15]);
115 static int *GetEdgeArray(
int edgeId);
116 static int *GetFaceArray(
int faceId);
135 pcoords[0] = pcoords[1] = 0.4;
represent and manipulate point attribute data
a 3D cell that represents a linear pyramid
int GetParametricCenter(double pcoords[3])
a cell that represents a 2D quadrilateral
virtual void InterpolateDerivs(double pcoords[3], double derivs[15])
cell represents a 1D line
virtual void InterpolateFunctions(double pcoords[3], double weights[5])
a simple class to control print indentation
list of point or cell ids
abstract superclass for arrays of numeric data
object to represent cell connectivity
a cell that represents a triangle
static void InterpolationDerivs(double pcoords[3], double derivs[15])
static void InterpolationFunctions(double pcoords[3], double weights[5])
represent and manipulate 3D points