41 #ifndef __vtkQuadraticPyramid_h
42 #define __vtkQuadraticPyramid_h
46 class vtkQuadraticEdge;
47 class vtkQuadraticQuad;
73 vtkIncrementalPointLocator *locator,
vtkCellArray *verts,
78 int& subId,
double pcoords[3],
79 double& dist2,
double *weights);
83 void Derivatives(
int subId,
double pcoords[3],
double *values,
84 int dim,
double *derivs);
102 double x[3],
double pcoords[3],
int& subId);
112 static void InterpolationFunctions(
double pcoords[3],
double weights[13]);
115 static void InterpolationDerivs(
double pcoords[3],
double derivs[39]);
130 static int *GetEdgeArray(
int edgeId);
131 static int *GetFaceArray(
int faceId);
137 void JacobianInverse(
double pcoords[3],
double **inverse,
double derivs[39]);
165 pcoords[0] = pcoords[1] = 6./13;
static void InterpolationFunctions(double pcoords[3], double weights[13])
vtkDoubleArray * CellScalars
represent and manipulate point attribute data
cell represents a parabolic, 13-node isoparametric pyramid
virtual double * GetParametricCoords()
a 3D cell that represents a linear pyramid
represent and manipulate cell attribute data
virtual int Triangulate(int index, vtkIdList *ptIds, vtkPoints *pts)=0
virtual void EvaluateLocation(int &subId, double pcoords[3], double x[3], double *weights)=0
virtual int EvaluatePosition(double x[3], double *closestPoint, int &subId, double pcoords[3], double &dist2, double *weights)=0
abstract superclass for non-linear cells
virtual void InterpolateDerivs(double pcoords[3], double derivs[39])
dynamic, self-adjusting array of double
a 3D cell that represents a tetrahedron
abstract class to specify cell behavior
static void InterpolationDerivs(double pcoords[3], double derivs[39])
int GetParametricCenter(double pcoords[3])
a simple class to control print indentation
vtkQuadraticTriangle * TriangleFace
list of point or cell ids
virtual void Derivatives(int subId, double pcoords[3], double *values, int dim, double *derivs)=0
abstract superclass for arrays of numeric data
virtual int IntersectWithLine(double p1[3], double p2[3], double tol, double &t, double x[3], double pcoords[3], int &subId)=0
virtual void Clip(double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *connectivity, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd, int insideOut)=0
void PrintSelf(ostream &os, vtkIndent indent)
virtual vtkCell * GetFace(int faceId)=0
object to represent cell connectivity
virtual vtkCell * GetEdge(int edgeId)=0
virtual void InterpolateFunctions(double pcoords[3], double weights[13])
virtual void Contour(double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *verts, vtkCellArray *lines, vtkCellArray *polys, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd)=0
cell represents a parabolic, isoparametric triangle
virtual int CellBoundary(int subId, double pcoords[3], vtkIdList *pts)=0
virtual int GetParametricCenter(double pcoords[3])
represent and manipulate 3D points