VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkQuadraticPyramid Class Reference

cell represents a parabolic, 13-node isoparametric pyramid More...

#include <vtkQuadraticPyramid.h>

Inheritance diagram for vtkQuadraticPyramid:
[legend]
Collaboration diagram for vtkQuadraticPyramid:
[legend]

Public Types

typedef vtkNonLinearCell Superclass
 
- Public Types inherited from vtkNonLinearCell
typedef vtkCell Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
int CellBoundary (int subId, double pcoords[3], vtkIdList *pts)
 
void Contour (double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *verts, vtkCellArray *lines, vtkCellArray *polys, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd)
 
int EvaluatePosition (double x[3], double *closestPoint, int &subId, double pcoords[3], double &dist2, double *weights)
 
void EvaluateLocation (int &subId, double pcoords[3], double x[3], double *weights)
 
int Triangulate (int index, vtkIdList *ptIds, vtkPoints *pts)
 
void Derivatives (int subId, double pcoords[3], double *values, int dim, double *derivs)
 
virtual double * GetParametricCoords ()
 
int GetParametricCenter (double pcoords[3])
 
void JacobianInverse (double pcoords[3], double **inverse, double derivs[39])
 
int GetCellType ()
 
int GetCellDimension ()
 
int GetNumberOfEdges ()
 
int GetNumberOfFaces ()
 
vtkCell * GetEdge (int edgeId)
 
vtkCell * GetFace (int faceId)
 
void Clip (double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *tets, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd, int insideOut)
 
int IntersectWithLine (double p1[3], double p2[3], double tol, double &t, double x[3], double pcoords[3], int &subId)
 
- Public Member Functions inherited from vtkNonLinearCell
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int IsLinear ()
 

Static Public Member Functions

static vtkQuadraticPyramidNew ()
 
static int IsTypeOf (const char *type)
 
static vtkQuadraticPyramidSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkNonLinearCell
static int IsTypeOf (const char *type)
 
static vtkNonLinearCellSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkQuadraticPyramid ()
 
 ~vtkQuadraticPyramid ()
 
void Subdivide (vtkPointData *inPd, vtkCellData *inCd, vtkIdType cellId, vtkDataArray *cellScalars)
 
- Protected Member Functions inherited from vtkNonLinearCell
 vtkNonLinearCell ()
 
 ~vtkNonLinearCell ()
 

Protected Attributes

vtkQuadraticEdgeEdge
 
vtkQuadraticTriangle * TriangleFace
 
vtkQuadraticQuadFace
 
vtkTetraTetra
 
vtkPyramidPyramid
 
vtkPointData * PointData
 
vtkCellDataCellData
 
vtkDoubleArrayCellScalars
 
vtkDoubleArrayScalars
 
static void InterpolationFunctions (double pcoords[3], double weights[13])
 
static void InterpolationDerivs (double pcoords[3], double derivs[39])
 
static int * GetEdgeArray (int edgeId)
 
static int * GetFaceArray (int faceId)
 
virtual void InterpolateFunctions (double pcoords[3], double weights[13])
 
virtual void InterpolateDerivs (double pcoords[3], double derivs[39])
 

Detailed Description

cell represents a parabolic, 13-node isoparametric pyramid

vtkQuadraticPyramid is a concrete implementation of vtkNonLinearCell to represent a three-dimensional, 13-node isoparametric parabolic pyramid. The interpolation is the standard finite element, quadratic isoparametric shape function. The cell includes a mid-edge node. The ordering of the thirteen points defining the cell is point ids (0-4,5-12) where point ids 0-4 are the five corner vertices of the pyramid; followed by eight midedge nodes (5-12). Note that these midedge nodes correspond lie on the edges defined by (0,1), (1,2), (2,3), (3,0), (0,4), (1,4), (2,4), (3,4).

See Also
vtkQuadraticEdge vtkQuadraticTriangle vtkQuadraticTetra vtkQuadraticHexahedron vtkQuadraticQuad vtkQuadraticWedge
Thanks:
The shape functions and derivatives could be implemented thanks to the report Pyramid Solid Elements Linear and Quadratic Iso-P Models From Center For Aerospace Structures
Tests:
vtkQuadraticPyramid (Tests)

Definition at line 53 of file vtkQuadraticPyramid.h.

Member Typedef Documentation

Definition at line 57 of file vtkQuadraticPyramid.h.

Constructor & Destructor Documentation

vtkQuadraticPyramid::vtkQuadraticPyramid ( )
protected
vtkQuadraticPyramid::~vtkQuadraticPyramid ( )
protected

Member Function Documentation

static vtkQuadraticPyramid* vtkQuadraticPyramid::New ( )
static
virtual const char* vtkQuadraticPyramid::GetClassName ( )
virtual

Reimplemented from vtkNonLinearCell.

static int vtkQuadraticPyramid::IsTypeOf ( const char *  type)
static
virtual int vtkQuadraticPyramid::IsA ( const char *  type)
virtual

Reimplemented from vtkNonLinearCell.

static vtkQuadraticPyramid* vtkQuadraticPyramid::SafeDownCast ( vtkObject o)
static
void vtkQuadraticPyramid::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
int vtkQuadraticPyramid::GetCellType ( )
inline

Implement the vtkCell API. See the vtkCell API for descriptions of these methods.

Definition at line 63 of file vtkQuadraticPyramid.h.

int vtkQuadraticPyramid::GetCellDimension ( )
inline

Implement the vtkCell API. See the vtkCell API for descriptions of these methods.

Definition at line 64 of file vtkQuadraticPyramid.h.

int vtkQuadraticPyramid::GetNumberOfEdges ( )
inline

Implement the vtkCell API. See the vtkCell API for descriptions of these methods.

Definition at line 65 of file vtkQuadraticPyramid.h.

int vtkQuadraticPyramid::GetNumberOfFaces ( )
inline

Implement the vtkCell API. See the vtkCell API for descriptions of these methods.

Definition at line 66 of file vtkQuadraticPyramid.h.

vtkCell* vtkQuadraticPyramid::GetEdge ( int  edgeId)

Implement the vtkCell API. See the vtkCell API for descriptions of these methods.

vtkCell* vtkQuadraticPyramid::GetFace ( int  faceId)

Implement the vtkCell API. See the vtkCell API for descriptions of these methods.

int vtkQuadraticPyramid::CellBoundary ( int  subId,
double  pcoords[3],
vtkIdList pts 
)
void vtkQuadraticPyramid::Contour ( double  value,
vtkDataArray cellScalars,
vtkIncrementalPointLocator locator,
vtkCellArray verts,
vtkCellArray lines,
vtkCellArray polys,
vtkPointData *  inPd,
vtkPointData *  outPd,
vtkCellData inCd,
vtkIdType  cellId,
vtkCellData outCd 
)
int vtkQuadraticPyramid::EvaluatePosition ( double  x[3],
double *  closestPoint,
int &  subId,
double  pcoords[3],
double &  dist2,
double *  weights 
)
void vtkQuadraticPyramid::EvaluateLocation ( int &  subId,
double  pcoords[3],
double  x[3],
double *  weights 
)
int vtkQuadraticPyramid::Triangulate ( int  index,
vtkIdList ptIds,
vtkPoints pts 
)
void vtkQuadraticPyramid::Derivatives ( int  subId,
double  pcoords[3],
double *  values,
int  dim,
double *  derivs 
)
virtual double* vtkQuadraticPyramid::GetParametricCoords ( )
virtual
void vtkQuadraticPyramid::Clip ( double  value,
vtkDataArray cellScalars,
vtkIncrementalPointLocator locator,
vtkCellArray tets,
vtkPointData *  inPd,
vtkPointData *  outPd,
vtkCellData inCd,
vtkIdType  cellId,
vtkCellData outCd,
int  insideOut 
)

Clip this quadratic triangle using scalar value provided. Like contouring, except that it cuts the triangle to produce linear triangles.

int vtkQuadraticPyramid::IntersectWithLine ( double  p1[3],
double  p2[3],
double  tol,
double &  t,
double  x[3],
double  pcoords[3],
int &  subId 
)

Line-edge intersection. Intersection has to occur within [0,1] parametric coordinates and with specified tolerance.

int vtkQuadraticPyramid::GetParametricCenter ( double  pcoords[3])
inline

Return the center of the quadratic pyramid in parametric coordinates.

Definition at line 163 of file vtkQuadraticPyramid.h.

static void vtkQuadraticPyramid::InterpolationFunctions ( double  pcoords[3],
double  weights[13] 
)
static
static void vtkQuadraticPyramid::InterpolationDerivs ( double  pcoords[3],
double  derivs[39] 
)
static
virtual void vtkQuadraticPyramid::InterpolateFunctions ( double  pcoords[3],
double  weights[13] 
)
inlinevirtual
Deprecated:
Replaced by vtkQuadraticPyramid::InterpolateFunctions as of VTK 5.2

Definition at line 119 of file vtkQuadraticPyramid.h.

virtual void vtkQuadraticPyramid::InterpolateDerivs ( double  pcoords[3],
double  derivs[39] 
)
inlinevirtual
Deprecated:
Replaced by vtkQuadraticPyramid::InterpolateFunctions as of VTK 5.2

Definition at line 123 of file vtkQuadraticPyramid.h.

static int* vtkQuadraticPyramid::GetEdgeArray ( int  edgeId)
static
static int* vtkQuadraticPyramid::GetFaceArray ( int  faceId)
static
void vtkQuadraticPyramid::JacobianInverse ( double  pcoords[3],
double **  inverse,
double  derivs[39] 
)

Given parametric coordinates compute inverse Jacobian transformation matrix. Returns 9 elements of 3x3 inverse Jacobian plus interpolation function derivatives.

void vtkQuadraticPyramid::Subdivide ( vtkPointData *  inPd,
vtkCellData inCd,
vtkIdType  cellId,
vtkDataArray cellScalars 
)
protected

Member Data Documentation

vtkQuadraticEdge* vtkQuadraticPyramid::Edge
protected

Definition at line 143 of file vtkQuadraticPyramid.h.

vtkQuadraticTriangle* vtkQuadraticPyramid::TriangleFace
protected

Definition at line 144 of file vtkQuadraticPyramid.h.

vtkQuadraticQuad* vtkQuadraticPyramid::Face
protected

Definition at line 145 of file vtkQuadraticPyramid.h.

vtkTetra* vtkQuadraticPyramid::Tetra
protected

Definition at line 146 of file vtkQuadraticPyramid.h.

vtkPyramid* vtkQuadraticPyramid::Pyramid
protected

Definition at line 147 of file vtkQuadraticPyramid.h.

vtkPointData* vtkQuadraticPyramid::PointData
protected

Definition at line 148 of file vtkQuadraticPyramid.h.

vtkCellData* vtkQuadraticPyramid::CellData
protected

Definition at line 149 of file vtkQuadraticPyramid.h.

vtkDoubleArray* vtkQuadraticPyramid::CellScalars
protected

Definition at line 150 of file vtkQuadraticPyramid.h.

vtkDoubleArray* vtkQuadraticPyramid::Scalars
protected

Definition at line 151 of file vtkQuadraticPyramid.h.


The documentation for this class was generated from the following file: