50#ifndef vtkGenericAdaptorCell_h
51#define vtkGenericAdaptorCell_h
53#include "vtkCommonDataModelModule.h"
56VTK_ABI_NAMESPACE_BEGIN
98 virtual int IsInDataSet() = 0;
170 virtual int GetNumberOfBoundaries(
int dim = -1) = 0;
219 virtual void CountEdgeNeighbors(
int* sharing) = 0;
256 const double x[3],
double* closestPoint,
int& subId,
double pcoords[3],
double& dist2) = 0;
265 virtual void EvaluateLocation(
int subId,
double pcoords[3],
double x[3]) = 0;
289 virtual void InterpolateTuple(
392 virtual int IntersectWithLine(
double p1[3],
double p2[3],
double tol,
double& t,
double x[3],
393 double pcoords[3],
int& subId) = 0;
415 virtual void GetBounds(
double bounds[6]) = 0;
493 virtual int IsFaceOnBoundary(
vtkIdType faceId) = 0;
507 virtual void GetPointIds(
vtkIdType*
id) = 0;
547 virtual int GetNumberOfVerticesOnFace(
int faceId) = 0;
object to represent cell connectivity
represent and manipulate cell attribute data
helper object to manage setting and generating contour values
dynamic, self-adjusting array of double
virtual int GetDimension()=0
Return the topological dimension of the current cell.
virtual void GetBoundaryIterator(vtkGenericCellIterator *boundaries, int dim=-1)=0
Return the boundaries' cells of dimension dim' (or all dimensions less than GetDimension() if -1) tha...
virtual vtkGenericCellIterator * NewCellIterator()=0
Return the points of cell into `it'.
virtual int GetGeometryOrder()=0
Return the interpolation order of the geometry.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int IsGeometryLinear()
Does the cell have a non-linear interpolation for the geometry?
virtual int GetType()=0
Does `this' a cell of a dataset?
virtual int GetNumberOfPoints()=0
Return the number of corner points that compose the cell.
virtual int IsPrimary()=0
Return the interpolation order of attribute `a' on the cell (may differ by cell).
virtual int GetNumberOfDOFNodes()=0
Return the number of boundaries of dimension `dim' (or all dimensions greater than 0 and less than Ge...
virtual vtkIdType GetId()=0
Unique identification number of the cell over the whole data set.
a collection of attributes
abstract class defined API for attribute data
iterator used to traverse cells
helper class to perform cell tessellation
iterator used to traverse points
a cell that represents a linear 3D hexahedron
list of point or cell ids
abstract interface for implicit functions
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
cell represents a 1D line
helper class to generate triangulations
represent and manipulate point attribute data
represent and manipulate 3D points
a cell that represents an n-sided polygon
a 3D cell that represents a linear pyramid
a cell that represents a 2D quadrilateral
a 3D cell that represents a tetrahedron
a cell that represents a triangle
dynamic, self-adjusting array of unsigned char
a cell that represents a 3D point
a 3D cell that represents a linear wedge
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.
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 biquadratic hexahedron using scalar value provided.
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
void EvaluateLocation(int &subId, const double pcoords[3], double x[3], double *weights) override
void Derivatives(int subId, const double pcoords[3], const double *values, int dim, double *derivs) override
int EvaluatePosition(const double x[3], double closestPoint[3], int &subId, double pcoords[3], double &dist2, double weights[]) override
double * GetParametricCoords() override
int GetParametricCenter(double pcoords[3]) override
Return the center of the quadratic wedge in parametric coordinates.
void Reset()
Initializes the field list to empty.
vtkCellArray * InternalCellArray
virtual double GetLength2()
Return the bounding box diagonal squared of the current cell.
void AllocateTuples(int size)
Allocate some memory if Tuples does not exist or is smaller than size.
virtual int IsOnBoundary()=0
Is the face `faceId' of the current cell on the exterior boundary of the dataset?
vtkGenericAdaptorCell vtkObject FindClosestBoundary(int subId, double pcoords[3], vtkGenericCellIterator *&boundary)=0
Put into neighbors' the cells (dimension>boundary->GetDimension()) of the dataset that share the boun...
vtkDoubleArray * PointDataScalars
vtkDoubleArray * InternalScalars
virtual double * GetBounds()
Compute the bounding box of the current cell in `bounds' in global coordinates.
vtkDoubleArray * InternalPoints
virtual void Tessellate(vtkGenericAttributeCollection *attributes, vtkGenericCellTessellator *tess, vtkPoints *points, vtkIncrementalPointLocator *locator, vtkCellArray *cellArray, vtkPointData *internalPd, vtkPointData *pd, vtkCellData *cd, vtkUnsignedCharArray *types)
Tessellate the cell if it is not linear or if at least one attribute of attributes' is not linear.
double GetParametricDistance(const double pcoords[3]) override
Return the distance of the parametric coordinate provided to the cell.