VTK  9.6.1
vtkPyramid.h File Reference
#include "vtkCell3D.h"
#include "vtkCommonDataModelModule.h"
Include dependency graph for vtkPyramid.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  vtkPyramid
 a 3D cell that represents a linear pyramid More...

Functions

vtkPyramid vtkCell3D GetEdgeToAdjacentFacesArray (vtkIdType edgeId)
 Static method version of GetEdgeToAdjacentFaces.
static vtkPyramidNew ()
static vtkTypeBool IsTypeOf (const char *type)
virtual vtkTypeBool IsA (const char *type)
static vtkPyramidSafeDownCast (vtkObjectBase *o)
virtual vtkObjectBaseNewInstanceInternal () const
vtkPyramidNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent) override
static int * GetTriangleCases (int caseId)
 Return the case table for table-based isocontouring (aka marching cubes style implementations).
int GetParametricCenter (double pcoords[3]) override
 Return the center of the pyramid in parametric coordinates.
static void InterpolationFunctions (const double pcoords[3], double weights[5])
static void InterpolationDerivs (const double pcoords[3], double derivs[15])
int JacobianInverse (const double pcoords[3], double **inverse, double derivs[15])
static const vtkIdTypeGetFaceToAdjacentFacesArray (vtkIdType faceId)
 Static method version of GetFaceToAdjacentFaces.
static const vtkIdTypeGetPointToIncidentEdgesArray (vtkIdType pointId)
 Static method version of GetPointToIncidentEdgesArray.
static const vtkIdTypeGetPointToIncidentFacesArray (vtkIdType pointId)
 Static method version of GetPointToIncidentFacesArray.
static const vtkIdTypeGetPointToOneRingPointsArray (vtkIdType pointId)
 Static method version of GetPointToOneRingPoints.
static bool ComputeCentroid (vtkPoints *points, const vtkIdType *pointIds, double centroid[3])
 Static method version of GetCentroid.
 vtkPyramid ()
 ~vtkPyramid () override
void GetEdgePoints (vtkIdType edgeId, const vtkIdType *&pts) override
 See vtkCell3D API for description of these methods.
vtkIdType GetFacePoints (vtkIdType faceId, const vtkIdType *&pts) override
 See vtkCell3D API for description of these methods.
void GetEdgeToAdjacentFaces (vtkIdType edgeId, const vtkIdType *&pts) override
 See vtkCell3D API for description of these methods.
vtkIdType GetFaceToAdjacentFaces (vtkIdType faceId, const vtkIdType *&faceIds) override
 See vtkCell3D API for description of these methods.
vtkIdType GetPointToIncidentEdges (vtkIdType pointId, const vtkIdType *&edgeIds) override
 See vtkCell3D API for description of these methods.
vtkIdType GetPointToIncidentFaces (vtkIdType pointId, const vtkIdType *&faceIds) override
 See vtkCell3D API for description of these methods.
vtkIdType GetPointToOneRingPoints (vtkIdType pointId, const vtkIdType *&pts) override
 See vtkCell3D API for description of these methods.
bool GetCentroid (double centroid[3]) const override
 See vtkCell3D API for description of these methods.
bool IsInsideOut () override
 See vtkCell3D API for description of these methods.
int GetCellType () override
 See the vtkCell API for descriptions of these methods.
int GetCellDimension () override
 See the vtkCell API for descriptions of these methods.
int GetNumberOfEdges () override
 See the vtkCell API for descriptions of these methods.
int GetNumberOfFaces () override
 See the vtkCell API for descriptions of these methods.
vtkCellGetEdge (int edgeId) override
 See the vtkCell API for descriptions of these methods.
vtkCellGetFace (int faceId) override
 See the vtkCell API for descriptions of these methods.
int CellBoundary (int subId, const double pcoords[3], vtkIdList *pts) override
 See the vtkCell API for descriptions of these methods.
void Contour (double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *verts, vtkCellArray *lines, vtkCellArray *polys, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd) override
 See the vtkCell API for descriptions of these methods.
int EvaluatePosition (const double x[3], double closestPoint[3], int &subId, double pcoords[3], double &dist2, double weights[]) override
 See the vtkCell API for descriptions of these methods.
void EvaluateLocation (int &subId, const double pcoords[3], double x[3], double *weights) override
 See the vtkCell API for descriptions of these methods.
int IntersectWithLine (const double p1[3], const double p2[3], double tol, double &t, double x[3], double pcoords[3], int &subId) override
 Return intersection point (if any) of finite line with cells contained in cell locator.
int TriangulateLocalIds (int index, vtkIdList *ptIds) override
 See the vtkCell API for descriptions of these methods.
void Derivatives (int subId, const double pcoords[3], const double *values, int dim, double *derivs) override
 See the vtkCell API for descriptions of these methods.
double * GetParametricCoords () override
 See the vtkCell API for descriptions of these methods.
void InterpolateFunctions (const double pcoords[3], double weights[5]) override
 Compute the interpolation functions/derivatives (aka shape functions/derivatives).
void InterpolateDerivs (const double pcoords[3], double derivs[15]) override
 Compute the interpolation functions/derivatives (aka shape functions/derivatives).

Variables

static constexpr vtkIdType NumberOfPoints = 5
 static constexpr handle on the number of points.
static constexpr vtkIdType NumberOfEdges = 8
 static contexpr handle on the number of faces.
static constexpr vtkIdType NumberOfFaces = 5
 static contexpr handle on the number of edges.
static constexpr vtkIdType MaximumFaceSize = 4
 static contexpr handle on the maximum face size.
static constexpr vtkIdType MaximumValence = 4
 static constexpr handle on the maximum valence of this cell.
vtkLineLine
vtkTriangleTriangle
vtkQuadQuad

Function Documentation

◆ GetEdgeToAdjacentFacesArray()

vtkPyramid vtkCell3D GetEdgeToAdjacentFacesArray ( vtkIdType edgeId)

Static method version of GetEdgeToAdjacentFaces.

◆ New()

vtkPyramid * GetEdgeToAdjacentFacesArray::New ( )
static

◆ IsTypeOf()

vtkTypeBool GetEdgeToAdjacentFacesArray::IsTypeOf ( const char * type)
static

◆ IsA()

virtual vtkTypeBool GetEdgeToAdjacentFacesArray::IsA ( const char * type)
virtual

◆ SafeDownCast()

vtkPyramid * GetEdgeToAdjacentFacesArray::SafeDownCast ( vtkObjectBase * o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase * GetEdgeToAdjacentFacesArray::NewInstanceInternal ( ) const
protectedvirtual

◆ NewInstance()

vtkPyramid * GetEdgeToAdjacentFacesArray::NewInstance ( ) const

◆ PrintSelf()

void GetEdgeToAdjacentFacesArray::PrintSelf ( ostream & os,
vtkIndent indent )
override

◆ GetEdgePoints()

void GetEdgeToAdjacentFacesArray::GetEdgePoints ( vtkIdType edgeId,
const vtkIdType *& pts )
override

See vtkCell3D API for description of these methods.

◆ GetFacePoints()

vtkIdType GetEdgeToAdjacentFacesArray::GetFacePoints ( vtkIdType faceId,
const vtkIdType *& pts )
override

See vtkCell3D API for description of these methods.

◆ GetEdgeToAdjacentFaces()

void GetEdgeToAdjacentFacesArray::GetEdgeToAdjacentFaces ( vtkIdType edgeId,
const vtkIdType *& pts )
override

See vtkCell3D API for description of these methods.

◆ GetFaceToAdjacentFaces()

vtkIdType GetEdgeToAdjacentFacesArray::GetFaceToAdjacentFaces ( vtkIdType faceId,
const vtkIdType *& faceIds )
override

See vtkCell3D API for description of these methods.

◆ GetPointToIncidentEdges()

vtkIdType GetEdgeToAdjacentFacesArray::GetPointToIncidentEdges ( vtkIdType pointId,
const vtkIdType *& edgeIds )
override

See vtkCell3D API for description of these methods.

◆ GetPointToIncidentFaces()

vtkIdType GetEdgeToAdjacentFacesArray::GetPointToIncidentFaces ( vtkIdType pointId,
const vtkIdType *& faceIds )
override

See vtkCell3D API for description of these methods.

◆ GetPointToOneRingPoints()

vtkIdType GetEdgeToAdjacentFacesArray::GetPointToOneRingPoints ( vtkIdType pointId,
const vtkIdType *& pts )
override

See vtkCell3D API for description of these methods.

◆ GetCentroid()

bool GetEdgeToAdjacentFacesArray::GetCentroid ( double centroid[3]) const
override

See vtkCell3D API for description of these methods.

◆ IsInsideOut()

bool GetEdgeToAdjacentFacesArray::IsInsideOut ( )
override

See vtkCell3D API for description of these methods.

◆ GetCellType()

int GetEdgeToAdjacentFacesArray::GetCellType ( )
override

See the vtkCell API for descriptions of these methods.

Definition at line 51 of file vtkPyramid.h.

◆ GetCellDimension()

int GetEdgeToAdjacentFacesArray::GetCellDimension ( )
override

See the vtkCell API for descriptions of these methods.

Definition at line 52 of file vtkPyramid.h.

◆ GetNumberOfEdges()

int GetEdgeToAdjacentFacesArray::GetNumberOfEdges ( )
override

See the vtkCell API for descriptions of these methods.

Definition at line 53 of file vtkPyramid.h.

◆ GetNumberOfFaces()

int GetEdgeToAdjacentFacesArray::GetNumberOfFaces ( )
override

See the vtkCell API for descriptions of these methods.

Definition at line 54 of file vtkPyramid.h.

◆ GetEdge()

vtkCell * GetEdgeToAdjacentFacesArray::GetEdge ( int edgeId)
override

See the vtkCell API for descriptions of these methods.

◆ GetFace()

vtkCell * GetEdgeToAdjacentFacesArray::GetFace ( int faceId)
override

See the vtkCell API for descriptions of these methods.

◆ CellBoundary()

int GetEdgeToAdjacentFacesArray::CellBoundary ( int subId,
const double pcoords[3],
vtkIdList * pts )
override

See the vtkCell API for descriptions of these methods.

◆ Contour()

void GetEdgeToAdjacentFacesArray::Contour ( double value,
vtkDataArray * cellScalars,
vtkIncrementalPointLocator * locator,
vtkCellArray * verts,
vtkCellArray * lines,
vtkCellArray * polys,
vtkPointData * inPd,
vtkPointData * outPd,
vtkCellData * inCd,
vtkIdType cellId,
vtkCellData * outCd )
override

See the vtkCell API for descriptions of these methods.

◆ EvaluatePosition()

int GetEdgeToAdjacentFacesArray::EvaluatePosition ( const double x[3],
double closestPoint[3],
int & subId,
double pcoords[3],
double & dist2,
double weights[] )
override

See the vtkCell API for descriptions of these methods.

◆ EvaluateLocation()

void GetEdgeToAdjacentFacesArray::EvaluateLocation ( int & subId,
const double pcoords[3],
double x[3],
double * weights )
override

See the vtkCell API for descriptions of these methods.

◆ IntersectWithLine()

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

Return intersection point (if any) of finite line with cells contained in cell locator.

Line-edge intersection.

See vtkCell.h parameters documentation.

THIS FUNCTION IS NOT THREAD SAFE.

◆ TriangulateLocalIds()

int GetEdgeToAdjacentFacesArray::TriangulateLocalIds ( int index,
vtkIdList * ptIds )
override

See the vtkCell API for descriptions of these methods.

◆ Derivatives()

void GetEdgeToAdjacentFacesArray::Derivatives ( int subId,
const double pcoords[3],
const double * values,
int dim,
double * derivs )
override

See the vtkCell API for descriptions of these methods.

◆ GetParametricCoords()

double * GetEdgeToAdjacentFacesArray::GetParametricCoords ( )
override

See the vtkCell API for descriptions of these methods.

◆ GetTriangleCases()

int * GetEdgeToAdjacentFacesArray::GetTriangleCases ( int caseId)
static

Return the case table for table-based isocontouring (aka marching cubes style implementations).

A linear 3D cell with N vertices will have 2**N cases. The returned case array lists three edges in order to produce one output triangle which may be repeated to generate multiple triangles. The list of cases terminates with a -1 entry.

◆ GetParametricCenter()

int GetEdgeToAdjacentFacesArray::GetParametricCenter ( double pcoords[3])
override

Return the center of the pyramid in parametric coordinates.

◆ InterpolationFunctions()

void GetEdgeToAdjacentFacesArray::InterpolationFunctions ( const double pcoords[3],
double weights[5] )
static

◆ InterpolationDerivs()

void GetEdgeToAdjacentFacesArray::InterpolationDerivs ( const double pcoords[3],
double derivs[15] )
static

◆ InterpolateFunctions()

void GetEdgeToAdjacentFacesArray::InterpolateFunctions ( const double pcoords[3],
double weights[5] )
override

Compute the interpolation functions/derivatives (aka shape functions/derivatives).

Definition at line 93 of file vtkPyramid.h.

◆ InterpolateDerivs()

void GetEdgeToAdjacentFacesArray::InterpolateDerivs ( const double pcoords[3],
double derivs[15] )
override

Compute the interpolation functions/derivatives (aka shape functions/derivatives).

Definition at line 97 of file vtkPyramid.h.

◆ JacobianInverse()

int GetEdgeToAdjacentFacesArray::JacobianInverse ( const double pcoords[3],
double ** inverse,
double derivs[15] )

◆ GetFaceToAdjacentFacesArray()

const vtkIdType * GetFaceToAdjacentFacesArray ( vtkIdType faceId)
static

Static method version of GetFaceToAdjacentFaces.

◆ GetPointToIncidentEdgesArray()

const vtkIdType * GetPointToIncidentEdgesArray ( vtkIdType pointId)
static

Static method version of GetPointToIncidentEdgesArray.

◆ GetPointToIncidentFacesArray()

const vtkIdType * GetPointToIncidentFacesArray ( vtkIdType pointId)
static

Static method version of GetPointToIncidentFacesArray.

◆ GetPointToOneRingPointsArray()

const vtkIdType * GetPointToOneRingPointsArray ( vtkIdType pointId)
static

Static method version of GetPointToOneRingPoints.

◆ ComputeCentroid()

bool ComputeCentroid ( vtkPoints * points,
const vtkIdType * pointIds,
double centroid[3] )
static

Static method version of GetCentroid.

◆ vtkPyramid()

vtkPyramid ( )
protected

◆ ~vtkPyramid()

~vtkPyramid ( )
overrideprotected

Variable Documentation

◆ NumberOfPoints

vtkIdType NumberOfPoints = 5
staticconstexpr

static constexpr handle on the number of points.

Definition at line 23 of file vtkPyramid.h.

◆ NumberOfEdges

vtkIdType NumberOfEdges = 8
staticconstexpr

static contexpr handle on the number of faces.

Definition at line 28 of file vtkPyramid.h.

◆ NumberOfFaces

vtkIdType NumberOfFaces = 5
staticconstexpr

static contexpr handle on the number of edges.

Definition at line 33 of file vtkPyramid.h.

◆ MaximumFaceSize

vtkIdType MaximumFaceSize = 4
staticconstexpr

static contexpr handle on the maximum face size.

It can also be used to know the number of faces adjacent to one face.

Definition at line 39 of file vtkPyramid.h.

◆ MaximumValence

vtkIdType MaximumValence = 4
staticconstexpr

static constexpr handle on the maximum valence of this cell.

The valence of a vertex is the number of incident edges (or equivalently faces) to this vertex. It is also equal to the size of a one ring neighborhood of a vertex.

Definition at line 46 of file vtkPyramid.h.

◆ Line

vtkLine* Line
protected

Definition at line 189 of file vtkPyramid.h.

◆ Triangle

vtkTriangle* Triangle
protected

Definition at line 190 of file vtkPyramid.h.

◆ Quad

vtkQuad* Quad
protected

Definition at line 191 of file vtkPyramid.h.