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

a 3D cell that represents a prism with hexagonal base More...

#include <vtkHexagonalPrism.h>

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

Public Types

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

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
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 IntersectWithLine (double p1[3], double p2[3], double tol, double &t, double x[3], double pcoords[3], int &subId)
 
int Triangulate (int index, vtkIdList *ptIds, vtkPoints *pts)
 
void Derivatives (int subId, double pcoords[3], double *values, int dim, double *derivs)
 
double * GetParametricCoords ()
 
int GetParametricCenter (double pcoords[3])
 
void JacobianInverse (double pcoords[3], double **inverse, double derivs[36])
 
virtual void GetEdgePoints (int edgeId, int *&pts)
 
virtual void GetFacePoints (int faceId, int *&pts)
 
int GetCellType ()
 
int GetCellDimension ()
 
int GetNumberOfEdges ()
 
int GetNumberOfFaces ()
 
vtkCell * GetEdge (int edgeId)
 
vtkCell * GetFace (int faceId)
 
int CellBoundary (int subId, double pcoords[3], vtkIdList *pts)
 
- Public Member Functions inherited from vtkCell3D
void PrintSelf (ostream &os, vtkIndent indent)
 
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)
 
virtual void Clip (double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *connectivity, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd, int insideOut)
 
virtual void SetMergeTolerance (double)
 
virtual double GetMergeTolerance ()
 

Static Public Member Functions

static vtkHexagonalPrismNew ()
 
static int IsTypeOf (const char *type)
 
static vtkHexagonalPrismSafeDownCast (vtkObject *o)
 
static int * GetEdgeArray (int edgeId)
 
static int * GetFaceArray (int faceId)
 
- Static Public Member Functions inherited from vtkCell3D
static int IsTypeOf (const char *type)
 
static vtkCell3DSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkHexagonalPrism ()
 
 ~vtkHexagonalPrism ()
 
- Protected Member Functions inherited from vtkCell3D
 vtkCell3D ()
 
 ~vtkCell3D ()
 

Protected Attributes

vtkLineLine
 
vtkQuad * Quad
 
vtkPolygon * Polygon
 
- Protected Attributes inherited from vtkCell3D
vtkOrderedTriangulator * Triangulator
 
double MergeTolerance
 
vtkTetra * ClipTetra
 
vtkDoubleArrayClipScalars
 
static void InterpolationFunctions (double pcoords[3], double weights[12])
 
static void InterpolationDerivs (double pcoords[3], double derivs[36])
 
virtual void InterpolateFunctions (double pcoords[3], double weights[12])
 
virtual void InterpolateDerivs (double pcoords[3], double derivs[36])
 

Detailed Description

a 3D cell that represents a prism with hexagonal base

vtkHexagonalPrism is a concrete implementation of vtkCell to represent a linear 3D prism with hexagonal base. Such prism is defined by the twelve points (0-12) where (0,1,2,3,4,5) is the base of the prism which, using the right hand rule, forms a hexagon whose normal points is in the direction of the opposite face (6,7,8,9,10,11).

Thanks:
Thanks to Philippe Guerville who developed this class. Thanks to Charles Pignerol (CEA-DAM, France) who ported this class under VTK 4. Thanks to Jean Favre (CSCS, Switzerland) who contributed to integrate this class in VTK. Please address all comments to Jean Favre (jfavre at cscs.ch).
Tests:
vtkHexagonalPrism (Tests)

Definition at line 46 of file vtkHexagonalPrism.h.

Member Typedef Documentation

Definition at line 50 of file vtkHexagonalPrism.h.

Constructor & Destructor Documentation

vtkHexagonalPrism::vtkHexagonalPrism ( )
protected
vtkHexagonalPrism::~vtkHexagonalPrism ( )
protected

Member Function Documentation

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

Reimplemented from vtkCell3D.

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

Reimplemented from vtkCell3D.

static vtkHexagonalPrism* vtkHexagonalPrism::SafeDownCast ( vtkObject o)
static
void vtkHexagonalPrism::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual void vtkHexagonalPrism::GetEdgePoints ( int  edgeId,
int *&  pts 
)
virtual

See vtkCell3D API for description of these methods.

Implements vtkCell3D.

virtual void vtkHexagonalPrism::GetFacePoints ( int  faceId,
int *&  pts 
)
virtual

See vtkCell3D API for description of these methods.

Implements vtkCell3D.

int vtkHexagonalPrism::GetCellType ( )
inline

See the vtkCell API for descriptions of these methods.

Definition at line 61 of file vtkHexagonalPrism.h.

int vtkHexagonalPrism::GetCellDimension ( )
inlinevirtual

See the vtkCell API for descriptions of these methods.

Reimplemented from vtkCell3D.

Definition at line 62 of file vtkHexagonalPrism.h.

int vtkHexagonalPrism::GetNumberOfEdges ( )
inline

See the vtkCell API for descriptions of these methods.

Definition at line 63 of file vtkHexagonalPrism.h.

int vtkHexagonalPrism::GetNumberOfFaces ( )
inline

See the vtkCell API for descriptions of these methods.

Definition at line 64 of file vtkHexagonalPrism.h.

vtkCell* vtkHexagonalPrism::GetEdge ( int  edgeId)

See the vtkCell API for descriptions of these methods.

vtkCell* vtkHexagonalPrism::GetFace ( int  faceId)

See the vtkCell API for descriptions of these methods.

int vtkHexagonalPrism::CellBoundary ( int  subId,
double  pcoords[3],
vtkIdList pts 
)

See the vtkCell API for descriptions of these methods.

int vtkHexagonalPrism::EvaluatePosition ( double  x[3],
double *  closestPoint,
int &  subId,
double  pcoords[3],
double &  dist2,
double *  weights 
)
void vtkHexagonalPrism::EvaluateLocation ( int &  subId,
double  pcoords[3],
double  x[3],
double *  weights 
)
int vtkHexagonalPrism::IntersectWithLine ( double  p1[3],
double  p2[3],
double  tol,
double &  t,
double  x[3],
double  pcoords[3],
int &  subId 
)
int vtkHexagonalPrism::Triangulate ( int  index,
vtkIdList ptIds,
vtkPoints pts 
)
void vtkHexagonalPrism::Derivatives ( int  subId,
double  pcoords[3],
double *  values,
int  dim,
double *  derivs 
)
double* vtkHexagonalPrism::GetParametricCoords ( )
int vtkHexagonalPrism::GetParametricCenter ( double  pcoords[3])
inline

Return the center of the wedge in parametric coordinates.

Definition at line 131 of file vtkHexagonalPrism.h.

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

Definition at line 95 of file vtkHexagonalPrism.h.

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

Definition at line 99 of file vtkHexagonalPrism.h.

static int* vtkHexagonalPrism::GetEdgeArray ( int  edgeId)
static

Return the ids of the vertices defining edge/face (edgeId/`faceId'). Ids are related to the cell, not to the dataset.

static int* vtkHexagonalPrism::GetFaceArray ( int  faceId)
static

Return the ids of the vertices defining edge/face (edgeId/`faceId'). Ids are related to the cell, not to the dataset.

void vtkHexagonalPrism::JacobianInverse ( double  pcoords[3],
double **  inverse,
double  derivs[36] 
)

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

Member Data Documentation

vtkLine* vtkHexagonalPrism::Line
protected

Definition at line 121 of file vtkHexagonalPrism.h.

vtkQuad* vtkHexagonalPrism::Quad
protected

Definition at line 122 of file vtkHexagonalPrism.h.

vtkPolygon* vtkHexagonalPrism::Polygon
protected

Definition at line 123 of file vtkHexagonalPrism.h.


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