|
virtual vtkTypeBool | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More...
|
|
vtkTriQuadraticHexahedron * | NewInstance () const |
|
void | PrintSelf (ostream &os, vtkIndent indent) override |
| Methods invoked by print to print information about the object including superclasses. More...
|
|
int | GetCellType () override |
| Implement the vtkCell API. More...
|
|
int | GetCellDimension () override |
| Return the topological dimensional of the cell (0,1,2, or 3). More...
|
|
int | GetNumberOfEdges () override |
| Return the number of edges in the cell. More...
|
|
int | GetNumberOfFaces () override |
| Return the number of faces in the cell. More...
|
|
vtkCell * | GetEdge (int) override |
| Return the edge cell from the edgeId of the cell. More...
|
|
vtkCell * | GetFace (int) override |
| Return the face cell from the faceId of the cell. More...
|
|
int | CellBoundary (int subId, const double pcoords[3], vtkIdList *pts) override |
| Given parametric coordinates of a point, return the closest cell boundary, and whether the point is inside or outside of the cell. More...
|
|
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 |
| Generate contouring primitives. More...
|
|
int | EvaluatePosition (const double x[3], double *closestPoint, int &subId, double pcoords[3], double &dist2, double *weights) override |
|
void | EvaluateLocation (int &subId, const double pcoords[3], double x[3], double *weights) override |
| Determine global coordinate (x[3]) from subId and parametric coordinates. More...
|
|
int | Triangulate (int index, vtkIdList *ptIds, vtkPoints *pts) override |
| Generate simplices of proper dimension. More...
|
|
void | Derivatives (int subId, const double pcoords[3], const double *values, int dim, double *derivs) override |
| Compute derivatives given cell subId and parametric coordinates. More...
|
|
double * | GetParametricCoords () override |
| Return a contiguous array of parametric coordinates of the points defining this cell. More...
|
|
void | Clip (double value, vtkDataArray *cellScalars, vtkIncrementalPointLocator *locator, vtkCellArray *tetras, vtkPointData *inPd, vtkPointData *outPd, vtkCellData *inCd, vtkIdType cellId, vtkCellData *outCd, int insideOut) override |
| Clip this triquadratic hexahedron using scalar value provided. More...
|
|
int | IntersectWithLine (const double p1[3], const double p2[3], double tol, double &t, double x[3], double pcoords[3], int &subId) override |
| Line-edge intersection. More...
|
|
void | InterpolateFunctions (const double pcoords[3], double weights[27]) override |
| Compute the interpolation functions/derivatives (aka shape functions/derivatives) More...
|
|
void | InterpolateDerivs (const double pcoords[3], double derivs[81]) override |
|
void | JacobianInverse (const double pcoords[3], double **inverse, double derivs[81]) |
| Given parametric coordinates compute inverse Jacobian transformation matrix. More...
|
|
vtkNonLinearCell * | NewInstance () const |
|
int | IsLinear () override |
| Non-linear cells require special treatment (tessellation) when converting to graphics primitives (during mapping). More...
|
|
vtkCell * | NewInstance () const |
|
void | Initialize (int npts, vtkIdType *pts, vtkPoints *p) |
| Initialize cell from outside with point ids and point coordinates specified. More...
|
|
void | Initialize (int npts, vtkPoints *p) |
| Initialize the cell with point coordinates specified. More...
|
|
virtual void | ShallowCopy (vtkCell *c) |
| Copy this cell by reference counting the internal data structures. More...
|
|
virtual void | DeepCopy (vtkCell *c) |
| Copy this cell by completely copying internal data structures. More...
|
|
virtual int | RequiresInitialization () |
| Some cells require initialization prior to access. More...
|
|
virtual void | Initialize () |
|
virtual int | IsExplicitCell () |
| Explicit cells require additional representational information beyond the usual cell type and connectivity list information. More...
|
|
virtual int | RequiresExplicitFaceRepresentation () |
| Determine whether the cell requires explicit face representation, and methods for setting and getting the faces (see vtkPolyhedron for example usage of these methods). More...
|
|
virtual void | SetFaces (vtkIdType *vtkNotUsed(faces)) |
|
virtual vtkIdType * | GetFaces () |
|
vtkPoints * | GetPoints () |
| Get the point coordinates for the cell. More...
|
|
vtkIdType | GetNumberOfPoints () |
| Return the number of points in the cell. More...
|
|
vtkIdList * | GetPointIds () |
| Return the list of point ids defining the cell. More...
|
|
vtkIdType | GetPointId (int ptId) |
| For cell point i, return the actual point id. More...
|
|
virtual int | EvaluatePosition (const double x[3], double closestPoint[3], int &subId, double pcoords[3], double &dist2, double weights[])=0 |
| Given a point x[3] return inside(=1), outside(=0) cell, or (-1) computational problem encountered; evaluate parametric coordinates, sub-cell id (!=0 only if cell is composite), distance squared of point x[3] to cell (in particular, the sub-cell indicated), closest point on cell to x[3] (unless closestPoint is null, in which case, the closest point and dist2 are not found), and interpolation weights in cell. More...
|
|
void | GetBounds (double bounds[6]) |
| Compute cell bounding box (xmin,xmax,ymin,ymax,zmin,zmax). More...
|
|
double * | GetBounds () |
| Compute cell bounding box (xmin,xmax,ymin,ymax,zmin,zmax). More...
|
|
double | GetLength2 () |
| Compute Length squared of cell (i.e., bounding box diagonal squared). More...
|
|
virtual int | GetParametricCenter (double pcoords[3]) |
| Return center of the cell in parametric coordinates. More...
|
|
virtual double | GetParametricDistance (const double pcoords[3]) |
| Return the distance of the parametric coordinate provided to the cell. More...
|
|
virtual int | IsPrimaryCell () |
| Return whether this cell type has a fixed topology or whether the topology varies depending on the data (e.g., vtkConvexPointSet). More...
|
|
virtual void | InterpolateFunctions (const double vtkNotUsed(pcoords)[3], double *vtkNotUsed(weight)) |
| Compute the interpolation functions/derivatives (aka shape functions/derivatives) No-ops at this level. More...
|
|
virtual void | InterpolateDerivs (const double vtkNotUsed(pcoords)[3], double *vtkNotUsed(derivs)) |
|
| vtkBaseTypeMacro (vtkObject, vtkObjectBase) |
|
virtual void | DebugOn () |
| Turn debugging output on. More...
|
|
virtual void | DebugOff () |
| Turn debugging output off. More...
|
|
bool | GetDebug () |
| Get the value of the debug flag. More...
|
|
void | SetDebug (bool debugFlag) |
| Set the value of the debug flag. More...
|
|
virtual void | Modified () |
| Update the modification time for this object. More...
|
|
virtual vtkMTimeType | GetMTime () |
| Return this object's modified time. More...
|
|
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
|
|
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
|
vtkCommand * | GetCommand (unsigned long tag) |
|
void | RemoveObserver (vtkCommand *) |
|
void | RemoveObservers (unsigned long event, vtkCommand *) |
|
void | RemoveObservers (const char *event, vtkCommand *) |
|
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
|
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
|
void | RemoveObserver (unsigned long tag) |
|
void | RemoveObservers (unsigned long event) |
|
void | RemoveObservers (const char *event) |
|
void | RemoveAllObservers () |
|
vtkTypeBool | HasObserver (unsigned long event) |
|
vtkTypeBool | HasObserver (const char *event) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
|
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
|
template<class U , class T > |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
| Allow user to set the AbortFlagOn() with the return value of the callback method. More...
|
|
int | InvokeEvent (unsigned long event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. More...
|
|
int | InvokeEvent (const char *event, void *callData) |
|
int | InvokeEvent (unsigned long event) |
|
int | InvokeEvent (const char *event) |
|
const char * | GetClassName () const |
| Return the class name as a string. More...
|
|
virtual void | Delete () |
| Delete a VTK object. More...
|
|
virtual void | FastDelete () |
| Delete a reference to this object. More...
|
|
void | InitializeObjectBase () |
|
void | Print (ostream &os) |
| Print an object to an ostream. More...
|
|
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
|
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
|
virtual void | Register (vtkObjectBase *o) |
| Increase the reference count (mark as used by another object). More...
|
|
virtual void | UnRegister (vtkObjectBase *o) |
| Decrease the reference count (release by another object). More...
|
|
int | GetReferenceCount () |
| Return the current reference count of this object. More...
|
|
void | SetReferenceCount (int) |
| Sets the reference count. More...
|
|
void | PrintRevisions (ostream &) |
| Legacy. More...
|
|
cell represents a parabolic, 27-node isoparametric hexahedron
vtkTriQuadraticHexahedron is a concrete implementation of vtkNonLinearCell to represent a three-dimensional, 27-node isoparametric triquadratic hexahedron. The interpolation is the standard finite element, triquadratic isoparametric shape function. The cell includes 8 edge nodes, 12 mid-edge nodes, 6 mid-face nodes and one mid-volume node. The ordering of the 27 points defining the cell is point ids (0-7,8-19, 20-25, 26) where point ids 0-7 are the eight corner vertices of the cube; followed by twelve midedge nodes (8-19); followed by 6 mid-face nodes (20-25) and the last node (26) is the mid-volume node. Note that these midedge nodes correspond lie on the edges defined by (0,1), (1,2), (2,3), (3,0), (4,5), (5,6), (6,7), (7,4), (0,4), (1,5), (2,6), (3,7). The mid-surface nodes lies on the faces defined by (first edge nodes id's, than mid-edge nodes id's): (0,1,5,4;8,17,12,16), (1,2,6,5;9,18,13,17), (2,3,7,6,10,19,14,18), (3,0,4,7;11,16,15,19), (0,1,2,3;8,9,10,11), (4,5,6,7;12,13,14,15). The last point lies in the center of the cell (0,1,2,3,4,5,6,7).
*
* top
* 7--14--6
* | |
* 15 25 13
* | |
* 4--12--5
*
* middle
* 19--23--18
* | |
* 20 26 21
* | |
* 16--22--17
*
* bottom
* 3--10--2
* | |
* 11 24 9
* | |
* 0-- 8--1
*
*
- See also
- vtkQuadraticEdge vtkQuadraticTriangle vtkQuadraticTetra vtkQuadraticQuad vtkQuadraticPyramid vtkQuadraticWedge vtkBiQuadraticQuad
- Thanks:
- Thanks to Soeren Gebbert who developed this class and integrated it into VTK 5.0.
- Tests:
- vtkTriQuadraticHexahedron (Tests)
Definition at line 85 of file vtkTriQuadraticHexahedron.h.