36 #ifndef __vtkPyramid_h
37 #define __vtkPyramid_h
39 #include "vtkCommonDataModelModule.h"
67 vtkCell *GetEdge(
int edgeId);
68 vtkCell *GetFace(
int faceId);
69 int CellBoundary(
int subId,
double pcoords[3],
vtkIdList *pts);
72 vtkCellArray *lines, vtkCellArray *polys,
73 vtkPointData *inPd, vtkPointData *outPd,
74 vtkCellData *inCd,
vtkIdType cellId, vtkCellData *outCd);
75 int EvaluatePosition(
double x[3],
double* closestPoint,
76 int& subId,
double pcoords[3],
77 double& dist2,
double *weights);
78 void EvaluateLocation(
int& subId,
double pcoords[3],
double x[3],
80 int IntersectWithLine(
double p1[3],
double p2[3],
double tol,
double& t,
81 double x[3],
double pcoords[3],
int& subId);
83 void Derivatives(
int subId,
double pcoords[3],
double *values,
84 int dim,
double *derivs);
85 virtual double *GetParametricCoords();
89 int GetParametricCenter(
double pcoords[3]);
93 static void InterpolationFunctions(
double pcoords[3],
double weights[5]);
95 static void InterpolationDerivs(
double pcoords[3],
double derivs[15]);
109 int JacobianInverse(
double pcoords[3],
double **inverse,
double derivs[15]);
114 static int *GetEdgeArray(
int edgeId);
115 static int *GetFaceArray(
int faceId);
134 pcoords[0] = pcoords[1] = 0.4;
a 3D cell that represents a linear pyramid
int GetParametricCenter(double pcoords[3])
Abstract class in support of both point location and point insertion.
a cell that represents a 2D quadrilateral
abstract class to specify 3D cell interface
virtual void InterpolateDerivs(double pcoords[3], double derivs[15])
cell represents a 1D line
virtual void InterpolateFunctions(double pcoords[3], double weights[5])
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)
a simple class to control print indentation
list of point or cell ids
dataset represents arbitrary combinations of all possible cell types
abstract superclass for arrays of numeric data
virtual void GetFacePoints(int faceId, int *&pts)=0
void PrintSelf(ostream &os, vtkIndent indent)
static void InterpolationDerivs(double pcoords[3], double derivs[15])
static void InterpolationFunctions(double pcoords[3], double weights[5])
virtual void GetEdgePoints(int edgeId, int *&pts)=0
represent and manipulate 3D points