85#ifndef vtkOrderedTriangulator_h
86#define vtkOrderedTriangulator_h
88#include "vtkCommonDataModelModule.h"
100struct vtkOTTemplates;
106#if VTK_SIZEOF_SHORT == 4
107typedef unsigned short TemplateIDType;
108#elif VTK_SIZEOF_INT == 4
109typedef unsigned int TemplateIDType;
110#elif VTK_SIZEOF_LONG == 4
111typedef unsigned long TemplateIDType;
135 double xmin,
double xmax,
double ymin,
double ymax,
double zmin,
double zmax,
int numPts);
209 vtkGetMacro(NumberOfPoints,
int);
345 int MaximumNumberOfPoints;
353 int NumberOfCellPoints;
354 int NumberOfCellEdges;
356 vtkOTTemplates* Templates;
357 int TemplateTriangulation();
359 TemplateIDType ComputeTemplateIndex();
object to represent cell connectivity
represent and manipulate cell attribute data
abstract superclass for arrays of numeric data
dynamic, self-adjusting array of double
replacement for malloc/free and new/delete
list of point or cell ids
Abstract class in support of both point location and point insertion.
a simple class to control print indentation
abstract base class for most VTK objects
helper class to generate triangulations
vtkIdType GetTetras(int classification, vtkUnstructuredGrid *ugrid)
Initialize and add the tetras and points from the triangulation to the unstructured grid provided.
double * GetPointPosition(vtkIdType internalId)
Return the parametric coordinates of point ‘internalId’.
vtkIdType InsertPoint(vtkIdType id, vtkIdType sortid, double x[3], double p[3], int type)
For each point to be inserted, provide an id, a position x, parametric coordinate p,...
void InitTriangulation(double xmin, double xmax, double ymin, double ymax, double zmin, double zmax, int numPts)
Initialize the triangulation process.
vtkIdType InsertPoint(vtkIdType id, double x[3], double p[3], int type)
For each point to be inserted, provide an id, a position x, parametric coordinate p,...
vtkIdType GetPointId(vtkIdType internalId)
Return the Id of point ‘internalId’.
void Triangulate()
Perform the triangulation.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void InitTriangulation(double bounds[6], int numPts)
Initialize the triangulation process.
vtkIdType AddTetras(int classification, vtkUnstructuredGrid *ugrid)
Add the tetras to the unstructured grid provided.
vtkIdType AddTetras(int classification, vtkIdList *ptIds, vtkPoints *pts)
Add the tetrahedra classified (0=inside,1=outside) to the list of ids and coordinates provided.
void UpdatePointType(vtkIdType internalId, int type)
Update the point type.
void TemplateTriangulate(int cellType, int numPts, int numEdges)
Perform the triangulation.
static vtkOrderedTriangulator * New()
Construct object.
vtkIdType AddTetras(int classification, vtkCellArray *connectivity)
Add the tetrahedra classified (0=inside,1=outside) to the connectivity list provided.
~vtkOrderedTriangulator() override
void InitTetraTraversal()
Methods to get one tetra at a time.
vtkIdType AddTetras(int classification, vtkIncrementalPointLocator *locator, vtkCellArray *outConnectivity, vtkPointData *inPD, vtkPointData *outPD, vtkCellData *inCD, vtkIdType cellId, vtkCellData *outCD)
Assuming that all the inserted points come from a cell ‘cellId’ to triangulate, get the tetrahedra in...
int GetNextTetra(int classification, vtkTetra *tet, vtkDataArray *cellScalars, vtkDoubleArray *tetScalars)
Methods to get one tetra at a time.
vtkIdType AddTriangles(vtkCellArray *connectivity)
Add the triangle faces classified (2=boundary) to the connectivity list provided.
vtkIdType AddTriangles(vtkIdType id, vtkCellArray *connectivity)
Add the triangle faces classified (2=boundary) and attached to the specified point id to the connecti...
vtkIdType InsertPoint(vtkIdType id, vtkIdType sortid, vtkIdType sortid2, double x[3], double p[3], int type)
For each point to be inserted, provide an id, a position x, parametric coordinate p,...
double * GetPointLocation(vtkIdType internalId)
Return the global coordinates of point ‘internalId’.
represent and manipulate point attribute data
represent and manipulate 3D points
a 3D cell that represents a tetrahedron
dataset represents arbitrary combinations of all possible cell types