MeXTopologyI Class Reference
[Topology]

MeshViz List of extracted cells interface. More...

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

Inheritance diagram for MeXTopologyI:
MiTopologyI MiTopology MeXTopologyExplicitI MeXLineTopologyExplicitI MeXSurfaceTopologyExplicitI MeXVolumeTopologyExplicitI MeWLineTopologyExplicitI MeWSurfaceTopologyExplicitI MeWVolumeTopologyExplicitI

List of all members.

Public Member Functions

virtual bool hasInputCellMapping () const =0



virtual size_t getInputCellIdI (size_t id) const
virtual size_t getInputCellIdJ (size_t id) const
virtual size_t getInputCellIdK (size_t id) const

Detailed Description

MeshViz List of extracted cells interface.

A generic abstract interface for an extracted implicit mesh topology.


Member Function Documentation

virtual size_t MeXTopologyI::getInputCellIdI ( size_t  id  )  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.

Parameters:
id 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(id);
  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 MeXTopologyI::getInputCellIdJ ( size_t  id  )  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.

Parameters:
id 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(id);
  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 MeXTopologyI::getInputCellIdK ( size_t  id  )  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.

Parameters:
id 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(id);
  size_t inputIdK = flatId / (numCellsI * numCellsJ);
  size_t IJ = flatId % (numCellsI * numCellsJ);
  size_t inputIdJ = IJ / numCellsI;
  size_t inputIdI = IJ % numCellsI;
  
virtual bool MeXTopologyI::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:

Open Inventor Toolkit reference manual, generated on 12 Feb 2024
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/