Open Inventor Release 2024.2.0
 
Loading...
Searching...
No Matches
MeXTopologyIj Class Referenceabstract

MeshViz List of extracted structured surface cells interface. More...

#include <MeshVizXLM/extrmesh/topology/MeXTopologyIj.h>

+ Inheritance diagram for MeXTopologyIj:

Public Member Functions

virtual bool hasInputCellMapping () const =0
 Returns true if the input cell mapping is available.
 
virtual size_t getInputCellIdI (size_t i, size_t j) const =0
 Returns cell indices (I/J/K) of the input cell containing the extracted cell with the given id.
 
virtual size_t getInputCellIdJ (size_t i, size_t j) const =0
 
virtual size_t getInputCellIdK (size_t i, size_t j) const =0
 
- Public Member Functions inherited from MiTopologyIj
virtual size_t getNumCellsI () const =0
 Returns the number of cells on the first logical axis.
 
virtual size_t getNumCellsJ () const =0
 Returns the number of cells on the second logical axis.
 
virtual bool isDead (size_t i, size_t j) const
 Returns true if the cell of index (i,j) should be ignored.
 
- Public Member Functions inherited from MiTopology
virtual ~MiTopology ()
 
virtual size_t getTimeStamp () const =0
 Returns for this topology a unique time stamp across all topologies in the application.
 
virtual bool hasDeadCells () const
 Returns true if the topology contains dead cells.
 

Additional Inherited Members

- Protected Member Functions inherited from MiTopologyIj
virtual std::ostream & toStream (std::ostream &s) const
 Performs an output operation on a stream which is returned afterward.
 

Detailed Description

MeshViz List of extracted structured surface cells interface.

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.

Definition at line 40 of file MeXTopologyIj.h.

Member Function Documentation

◆ getInputCellIdI()

virtual size_t MeXTopologyIj::getInputCellIdI ( size_t  i,
size_t  j 
) const
pure 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.

Parameters
(i,j)the index of the cell to check
Note
When dealing with a structured mesh as an input, the J/K indices may be UNDEFINED_ID. This is a temporary limitation. In that case, the I index is a flat index combining the 3 indices and must be unflatten using the input topology dimensions as follow:
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;

◆ getInputCellIdJ()

virtual size_t MeXTopologyIj::getInputCellIdJ ( size_t  i,
size_t  j 
) const
pure virtual

◆ getInputCellIdK()

virtual size_t MeXTopologyIj::getInputCellIdK ( size_t  i,
size_t  j 
) const
pure virtual

◆ hasInputCellMapping()

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.


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