VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkBiQuadraticQuad Class Reference

cell represents a parabolic, 9-node isoparametric quad More...

#include <vtkBiQuadraticQuad.h>

Inherits vtkNonLinearCell.

Collaboration diagram for vtkBiQuadraticQuad:
[legend]

Public Types

typedef vtkNonLinearCell Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkBiQuadraticQuadNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
int CellBoundary (int subId, double pcoords[3], vtkIdList *pts)
 
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 ()
 
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 GetParametricCenter (double pcoords[3])
 
int GetCellType ()
 
int GetCellDimension ()
 
int GetNumberOfEdges ()
 
int GetNumberOfFaces ()
 
vtkCellGetEdge (int)
 
vtkCellGetFace (int)
 
void Clip (double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *polys, 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)
 
virtual void InterpolateFunctions (double pcoords[3], double weights[9])
 
virtual void InterpolateDerivs (double pcoords[3], double derivs[18])
 

Static Public Member Functions

static vtkBiQuadraticQuadNew ()
 
static int IsTypeOf (const char *type)
 
static vtkBiQuadraticQuadSafeDownCast (vtkObjectBase *o)
 
static void InterpolationFunctions (double pcoords[3], double weights[9])
 
static void InterpolationDerivs (double pcoords[3], double derivs[18])
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkBiQuadraticQuad ()
 
 ~vtkBiQuadraticQuad ()
 

Protected Attributes

vtkQuadraticEdge * Edge
 
vtkQuad * Quad
 
vtkTriangle * Triangle
 
vtkDoubleArrayScalars
 

Detailed Description

cell represents a parabolic, 9-node isoparametric quad

vtkQuadraticQuad is a concrete implementation of vtkNonLinearCell to represent a two-dimensional, 9-node isoparametric parabolic quadrilateral element with a Centerpoint. The interpolation is the standard finite element, quadratic isoparametric shape function. The cell includes a mid-edge node for each of the four edges of the cell and a center node at the surface. The ordering of the eight points defining the cell are point ids (0-3,4-8) where ids 0-3 define the four corner vertices of the quad; ids 4-7 define the midedge nodes (0,1), (1,2), (2,3), (3,0) and 8 define the face center node.

See Also
vtkQuadraticEdge vtkQuadraticTriangle vtkQuadraticTetra vtkQuadraticHexahedron vtkQuadraticWedge vtkQuadraticPyramid vtkQuadraticQuad
Thanks:
Thanks to Soeren Gebbert who developed this class and integrated it into VTK 5.0.
Tests:
vtkBiQuadraticQuad (Tests)

Definition at line 53 of file vtkBiQuadraticQuad.h.

Member Typedef Documentation

typedef vtkNonLinearCell vtkBiQuadraticQuad::Superclass

Definition at line 57 of file vtkBiQuadraticQuad.h.

Constructor & Destructor Documentation

vtkBiQuadraticQuad::vtkBiQuadraticQuad ( )
protected
vtkBiQuadraticQuad::~vtkBiQuadraticQuad ( )
protected

Member Function Documentation

static vtkBiQuadraticQuad* vtkBiQuadraticQuad::New ( )
static
static int vtkBiQuadraticQuad::IsTypeOf ( const char *  type)
static
virtual int vtkBiQuadraticQuad::IsA ( const char *  type)
virtual
static vtkBiQuadraticQuad* vtkBiQuadraticQuad::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkBiQuadraticQuad::NewInstanceInternal ( ) const
protectedvirtual
vtkBiQuadraticQuad* vtkBiQuadraticQuad::NewInstance ( ) const
void vtkBiQuadraticQuad::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
int vtkBiQuadraticQuad::GetCellType ( )
inline

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

Definition at line 63 of file vtkBiQuadraticQuad.h.

int vtkBiQuadraticQuad::GetCellDimension ( )
inline

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

Definition at line 64 of file vtkBiQuadraticQuad.h.

int vtkBiQuadraticQuad::GetNumberOfEdges ( )
inline

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

Definition at line 65 of file vtkBiQuadraticQuad.h.

int vtkBiQuadraticQuad::GetNumberOfFaces ( )
inline

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

Definition at line 66 of file vtkBiQuadraticQuad.h.

vtkCell* vtkBiQuadraticQuad::GetEdge ( int  )

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

vtkCell* vtkBiQuadraticQuad::GetFace ( int  )
inline

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

Definition at line 68 of file vtkBiQuadraticQuad.h.

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

Clip this biquadratic quad using scalar value provided. Like contouring, except that it cuts the twi quads to produce linear triangles.

int vtkBiQuadraticQuad::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 vtkBiQuadraticQuad::GetParametricCenter ( double  pcoords[3])
inline

Return the center of the pyramid in parametric coordinates.

Definition at line 142 of file vtkBiQuadraticQuad.h.

static void vtkBiQuadraticQuad::InterpolationFunctions ( double  pcoords[3],
double  weights[9] 
)
static
static void vtkBiQuadraticQuad::InterpolationDerivs ( double  pcoords[3],
double  derivs[18] 
)
static
virtual void vtkBiQuadraticQuad::InterpolateFunctions ( double  pcoords[3],
double  weights[9] 
)
inlinevirtual

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

Definition at line 118 of file vtkBiQuadraticQuad.h.

virtual void vtkBiQuadraticQuad::InterpolateDerivs ( double  pcoords[3],
double  derivs[18] 
)
inlinevirtual

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

Definition at line 122 of file vtkBiQuadraticQuad.h.

Member Data Documentation

vtkQuadraticEdge* vtkBiQuadraticQuad::Edge
protected

Definition at line 132 of file vtkBiQuadraticQuad.h.

vtkQuad* vtkBiQuadraticQuad::Quad
protected

Definition at line 133 of file vtkBiQuadraticQuad.h.

vtkTriangle* vtkBiQuadraticQuad::Triangle
protected

Definition at line 134 of file vtkBiQuadraticQuad.h.

vtkDoubleArray* vtkBiQuadraticQuad::Scalars
protected

Definition at line 135 of file vtkBiQuadraticQuad.h.


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