List of extracted structured surface cells interface. More...
#include <MeshVizXLM/extrmesh/topology/MeXTopologyIj.h>
Public Member Functions | |
virtual bool | hasInputCellMapping () const =0 |
| |
virtual size_t | getInputCellIdI (size_t i, size_t j) const |
virtual size_t | getInputCellIdJ (size_t i, size_t j) const |
virtual size_t | getInputCellIdK (size_t i, size_t j) const |
A generic abstract interface for an extracted structured implicit surface mesh topology. Cells are all implicitly defined as quadrangles so there is no need for specifying a list of cells. The number of cells on each dimension defines completely the topology.
virtual size_t MeXTopologyIj::getInputCellIdI | ( | size_t | i, | |
size_t | j | |||
) | const [inline, virtual] |
Returns cell indices (I/J/K) of the input cell containing the extracted cell with the given id.
This defines a mapping between extracted cells and input cells if the hasInputCellMapping() method returns true, otherwise these methods return UNDEFINED_ID.
(i,j) | the index of the cell to check |
size_t numCellsI = inputTopology.getNumCellsI(); size_t numCellsJ = inputTopology.getNumCellsJ(); size_t flatId = topology.getInputCellIdI(i,j); size_t inputIdK = flatId / (numCellsI * numCellsJ); size_t IJ = flatId % (numCellsI * numCellsJ); size_t inputIdJ = IJ / numCellsI; size_t inputIdI = IJ % numCellsI;
virtual size_t MeXTopologyIj::getInputCellIdJ | ( | size_t | i, | |
size_t | j | |||
) | const [inline, virtual] |
Returns cell indices (I/J/K) of the input cell containing the extracted cell with the given id.
This defines a mapping between extracted cells and input cells if the hasInputCellMapping() method returns true, otherwise these methods return UNDEFINED_ID.
(i,j) | the index of the cell to check |
size_t numCellsI = inputTopology.getNumCellsI(); size_t numCellsJ = inputTopology.getNumCellsJ(); size_t flatId = topology.getInputCellIdI(i,j); size_t inputIdK = flatId / (numCellsI * numCellsJ); size_t IJ = flatId % (numCellsI * numCellsJ); size_t inputIdJ = IJ / numCellsI; size_t inputIdI = IJ % numCellsI;
virtual size_t MeXTopologyIj::getInputCellIdK | ( | size_t | i, | |
size_t | j | |||
) | const [inline, virtual] |
Returns cell indices (I/J/K) of the input cell containing the extracted cell with the given id.
This defines a mapping between extracted cells and input cells if the hasInputCellMapping() method returns true, otherwise these methods return UNDEFINED_ID.
(i,j) | the index of the cell to check |
size_t numCellsI = inputTopology.getNumCellsI(); size_t numCellsJ = inputTopology.getNumCellsJ(); size_t flatId = topology.getInputCellIdI(i,j); size_t inputIdK = flatId / (numCellsI * numCellsJ); size_t IJ = flatId % (numCellsI * numCellsJ); size_t inputIdJ = IJ / numCellsI; size_t inputIdI = IJ % numCellsI;
virtual bool MeXTopologyIj::hasInputCellMapping | ( | ) | const [pure virtual] |
Returns true if the input cell mapping is available.
If false, the getInputCellId() methods will return UNDEFINED_ID.