VTK  9.3.20240725
Public Member Functions | Protected Member Functions | List of all members
vtkHyperTreeGridGeometry2DImpl Class Reference

vtkHyperTreeGridGeometry internal classes for 2D vtkHyperTreeGrid More...

#include <vtkHyperTreeGridGeometry2DImpl.h>

Inheritance diagram for vtkHyperTreeGridGeometry2DImpl:
[legend]
Collaboration diagram for vtkHyperTreeGridGeometry2DImpl:
[legend]

Public Member Functions

 vtkHyperTreeGridGeometry2DImpl (vtkHyperTreeGrid *input, vtkPoints *outPoints, vtkCellArray *outCells, vtkDataSetAttributes *inCellDataAttributes, vtkDataSetAttributes *outCellDataAttributes, bool passThroughCellIds, const std::string &originalCellIdArrayName)
 
 ~vtkHyperTreeGridGeometry2DImpl () override=default
 
- Public Member Functions inherited from vtkHyperTreeGridGeometrySmallDimensionsImpl
 vtkHyperTreeGridGeometrySmallDimensionsImpl (vtkHyperTreeGrid *input, vtkPoints *outPoints, vtkCellArray *outCells, vtkDataSetAttributes *inCellDataAttributes, vtkDataSetAttributes *outCellDataAttributes, bool passThroughCellIds, const std::string &originalCellIdArrayName)
 
 ~vtkHyperTreeGridGeometrySmallDimensionsImpl () override=default
 
void GenerateGeometry () override
 Generate the external surface of the input vtkHyperTreeGrid.
 
- Public Member Functions inherited from vtkHyperTreeGridGeometryImpl
 vtkHyperTreeGridGeometryImpl (vtkHyperTreeGrid *input, vtkPoints *outPoints, vtkCellArray *outCells, vtkDataSetAttributes *inCellDataAttributes, vtkDataSetAttributes *outCellDataAttributes, bool passThroughCellIds, const std::string &originalCellIdArrayName)
 
virtual ~vtkHyperTreeGridGeometryImpl ()=default
 
virtual void GenerateGeometry ()=0
 Generate the external surface of the input vtkHyperTreeGrid.
 

Protected Member Functions

void ProcessLeafCellWithOneInterface (vtkHyperTreeGridNonOrientedGeometryCursor *cursor, double sign, const std::vector< double > &distancesToInterface) override
 Generate the surface for a leaf cell cut by one interface.
 
void ProcessLeafCellWithDoubleInterface (vtkHyperTreeGridNonOrientedGeometryCursor *cursor, const std::vector< double > &distancesToInterfaceA, const std::vector< double > &distancesToInterfaceB) override
 Generate the surface for a leaf cell cut by two interfaces.
 
void BuildCellPoints (vtkHyperTreeGridNonOrientedGeometryCursor *cursor) override
 Compute the point coordinates of the surface of the current cell, independently of the fact that the current cell has a defined interface or not.
 
- Protected Member Functions inherited from vtkHyperTreeGridGeometrySmallDimensionsImpl
void RecursivelyProcessTree (vtkHyperTreeGridNonOrientedGeometryCursor *cursor)
 Recursively browse the input HTG in order to generate the output surface.
 
void ProcessLeafCellWithInterface (vtkHyperTreeGridNonOrientedGeometryCursor *cursor)
 Generate the surface for a leaf cell with a defined interface.
 
virtual void ProcessLeafCellWithoutInterface (vtkHyperTreeGridNonOrientedGeometryCursor *cursor)
 Generate the surface for a leaf cell with no interface.
 
virtual void ProcessLeafCellWithOneInterface (vtkHyperTreeGridNonOrientedGeometryCursor *cursor, double sign, const std::vector< double > &distancesToInterface)=0
 Generate the surface for a leaf cell cut by one interface.
 
virtual void ProcessLeafCellWithDoubleInterface (vtkHyperTreeGridNonOrientedGeometryCursor *cursor, const std::vector< double > &distancesToInterfaceA, const std::vector< double > &distancesToInterfaceB)=0
 Generate the surface for a leaf cell cut by two interfaces.
 
virtual void BuildCellPoints (vtkHyperTreeGridNonOrientedGeometryCursor *cursor)=0
 Compute the point coordinates of the surface of the current cell, independently of the fact that the current cell has a defined interface or not.
 
- Protected Member Functions inherited from vtkHyperTreeGridGeometryImpl
void CreateNewCellAndCopyData (const std::vector< vtkIdType > &outPointIds, vtkIdType cellId)
 Insert a new output cell from a list of point ids in the output polydata and copy the data from the input HTG cell at cellId to the newly created surface cell.
 
bool IsMaskedOrGhost (vtkIdType globalNodeId) const
 Returns true if the input HTG cell is masked or ghosted.
 
bool ProbeForCellInterface (vtkIdType cellId, bool invert=true)
 Determine if the input HTG at cellId contains an valid interface and if yes, determine its characteristics, stored in the variables below.
 
double ComputeDistanceToInterfaceA (const double *xyz) const
 Compute the value of the distance from the given point to the interface plane of the currently considered HTG cell.
 
double ComputeDistanceToInterfaceB (const double *xyz) const
 Compute the value of the distance from the given point to the interface plane of the currently considered HTG cell.
 

Additional Inherited Members

- Protected Attributes inherited from vtkHyperTreeGridGeometrySmallDimensionsImpl
vtkNew< vtkPointsCellPoints
 Contains the point coordinates of the current cell surface, without considering eventual cuts made by interfaces.
 
- Protected Attributes inherited from vtkHyperTreeGridGeometryImpl
vtkHyperTreeGridInput
 Input parameters retrieved from constructor.
 
vtkPointsOutPoints
 
vtkCellArrayOutCells
 
vtkDataSetAttributesInCellDataAttributes
 
vtkDataSetAttributesOutCellDataAttributes
 
vtkDataArrayInIntercepts
 Retrieved from input for quick access.
 
vtkDataArrayInNormals
 
bool HasInterface = false
 True if input HTG have an interface and if InIntercepts and InNormals are defined.
 
bool HasInterfaceOnThisCell = false
 True if the current cell have a "valid" interface defined.
 
int CellInterfaceType = 2
 Categorize the current cell interface type.
 

Detailed Description

vtkHyperTreeGridGeometry internal classes for 2D vtkHyperTreeGrid

This class is an internal class used in by the vtkHyperTreeGridGeometry filter to generate the HTG surface in the 2D case.

Definition at line 20 of file vtkHyperTreeGridGeometry2DImpl.h.

Constructor & Destructor Documentation

◆ vtkHyperTreeGridGeometry2DImpl()

vtkHyperTreeGridGeometry2DImpl::vtkHyperTreeGridGeometry2DImpl ( vtkHyperTreeGrid input,
vtkPoints outPoints,
vtkCellArray outCells,
vtkDataSetAttributes inCellDataAttributes,
vtkDataSetAttributes outCellDataAttributes,
bool  passThroughCellIds,
const std::string &  originalCellIdArrayName 
)

◆ ~vtkHyperTreeGridGeometry2DImpl()

vtkHyperTreeGridGeometry2DImpl::~vtkHyperTreeGridGeometry2DImpl ( )
overridedefault

Member Function Documentation

◆ ProcessLeafCellWithOneInterface()

void vtkHyperTreeGridGeometry2DImpl::ProcessLeafCellWithOneInterface ( vtkHyperTreeGridNonOrientedGeometryCursor cursor,
double  sign,
const std::vector< double > &  distancesToInterface 
)
overrideprotectedvirtual

Generate the surface for a leaf cell cut by one interface.

Called by ProcessLeafCellWithInterface.

Implements vtkHyperTreeGridGeometrySmallDimensionsImpl.

◆ ProcessLeafCellWithDoubleInterface()

void vtkHyperTreeGridGeometry2DImpl::ProcessLeafCellWithDoubleInterface ( vtkHyperTreeGridNonOrientedGeometryCursor cursor,
const std::vector< double > &  distancesToInterfaceA,
const std::vector< double > &  distancesToInterfaceB 
)
overrideprotectedvirtual

Generate the surface for a leaf cell cut by two interfaces.

Called by ProcessLeafCellWithInterface.

Implements vtkHyperTreeGridGeometrySmallDimensionsImpl.

◆ BuildCellPoints()

void vtkHyperTreeGridGeometry2DImpl::BuildCellPoints ( vtkHyperTreeGridNonOrientedGeometryCursor cursor)
overrideprotectedvirtual

Compute the point coordinates of the surface of the current cell, independently of the fact that the current cell has a defined interface or not.

Used as a pre-process in ProcessLeafCellWithInterface.

XXX: can be used in ProcessLeafCellWithoutInterface ?

Implements vtkHyperTreeGridGeometrySmallDimensionsImpl.


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