27 #ifndef __vtkBridgeCell_h
28 #define __vtkBridgeCell_h
31 #include "vtkGenericAdaptorCell.h"
37 class VTKTESTINGGENERICBRIDGE_EXPORT
vtkBridgeCell :
public vtkGenericAdaptorCell
42 void PrintSelf(ostream& os, vtkIndent indent);
46 virtual vtkIdType GetId();
49 virtual int IsInDataSet();
54 virtual int GetType();
58 virtual int GetDimension();
61 virtual int GetGeometryOrder();
65 int IsGeometryLinear();
69 virtual int GetAttributeOrder(vtkGenericAttribute *a);
74 int IsAttributeLinear(vtkGenericAttribute *a);
77 virtual int IsPrimary();
81 virtual int GetNumberOfPoints();
91 virtual int GetNumberOfBoundaries(
int dim=-1);
101 virtual int GetNumberOfDOFNodes();
104 virtual void GetPointIterator(vtkGenericPointIterator *it);
107 virtual vtkGenericCellIterator *NewCellIterator();
114 virtual void GetBoundaryIterator(vtkGenericCellIterator *boundaries,
124 virtual int CountNeighbors(vtkGenericAdaptorCell *boundary);
125 void CountEdgeNeighbors(
int* sharing );
135 virtual void GetNeighbors(vtkGenericAdaptorCell *boundary,
136 vtkGenericCellIterator *neighbors);
144 virtual int FindClosestBoundary(
int subId,
146 vtkGenericCellIterator* &boundary);
158 virtual int EvaluatePosition(
double x[3],
159 double *closestPoint,
170 virtual void EvaluateLocation(
int subId,
182 virtual void InterpolateTuple(vtkGenericAttribute *a,
double pcoords[3],
193 virtual void InterpolateTuple(vtkGenericAttributeCollection *c,
double pcoords[3],
218 virtual void Contour(vtkContourValues *values,
219 vtkImplicitFunction *f,
220 vtkGenericAttributeCollection *attributes,
221 vtkPointLocator *locator,
257 virtual void Clip(
double value,
258 vtkImplicitFunction *f,
259 vtkGenericAttributeCollection *attributes,
260 vtkGenericCellTessellator *tess,
262 vtkPointLocator *locator,
263 vtkCellArray *connectivity,
275 virtual int IntersectWithLine(
double p1[3],
294 virtual void Derivatives(
int subId,
296 vtkGenericAttribute *attribute,
302 virtual void GetBounds(
double bounds[6]);
307 virtual double *GetBounds();
311 virtual double GetLength2();
317 virtual int GetParametricCenter(
double pcoords[3]);
324 virtual double GetParametricDistance(
double pcoords[3]);
335 virtual double *GetParametricCoords();
348 virtual void Tessellate(vtkGenericAttributeCollection *attributes,
349 vtkPoints *points, vtkCellArray* cellArray,
350 vtkPointData *pd, vtkCellData* cd);
353 virtual int IsFaceOnBoundary(vtkIdType faceId);
354 virtual int IsOnBoundary();
360 virtual void GetPointIds(vtkIdType *
id);
362 virtual void TriangulateFace(vtkGenericAttributeCollection *attributes,
363 vtkGenericCellTessellator *tess,
365 vtkPoints *pts, vtkCellArray *cellArray,
375 int *GetFaceArray(
int faceId);
381 int GetNumberOfVerticesOnFace(
int faceId);
387 int *GetEdgeArray(
int edgeId);
400 void InitWithCell(vtkCell *c,
414 void AllocateWeights();
417 void InterpolationFunctions(
double pcoords[3],
double *weights);
420 friend class vtkBridgeAttribute;
424 friend class vtkBridgeCellIteratorOnCellBoundaries;
Implementation of vtkGenericCellIterator. It is just an example that show how to implement the Generi...
Implementation of vtkGenericAdaptorCell.
vtkBridgeCellIterator * InternalIterator
Iterate over one cell only of a dataset.
Implementation of vtkGenericDataSet.
vtkBridgeDataSet * DataSet
Implementation of vtkGenericPointIterator.
Iterate over cells of a dataset.