Open Inventor Release 2024.1.0
 
Loading...
Searching...
No Matches
MiVolumeMeshCurvilinear Class Referenceabstract

MeshViz Curvilinear volume mesh abstract interface. More...

#include <MeshVizXLM/mesh/MiVolumeMeshCurvilinear.h>

+ Inheritance diagram for MiVolumeMeshCurvilinear:

Public Member Functions

virtual const MiGeometryIjkgetGeometry () const =0
 Returns the geometry of this mesh.
 
- Public Member Functions inherited from MiMeshIjk
virtual const MiTopologyIjkgetTopology () const =0
 Returns the topology of this mesh.
 
- Public Member Functions inherited from MiMesh
virtual ~MiMesh ()
 

Protected Member Functions

virtual std::ostream & toStream (std::ostream &s) const
 Performs an output operation on a stream which is returned afterward.
 

Additional Inherited Members

- Public Types inherited from MiMeshIjk
enum  StorageLayout {
  LAYOUT_IJK ,
  LAYOUT_IKJ ,
  LAYOUT_JKI ,
  LAYOUT_JIK ,
  LAYOUT_KJI ,
  LAYOUT_KIJ ,
  LAYOUT_UNKNOWN
}
 Hint about data organization in memory. More...
 
- Public Types inherited from MiMesh
enum  Dimension {
  DIMENSION_I = 0 ,
  DIMENSION_J = 1 ,
  DIMENSION_K = 2
}
 Defines the dimensions in a one, two, or three-dimensional array. More...
 

Detailed Description

MeshViz Curvilinear volume mesh abstract interface.

A Curvilinear volume mesh is similar to a MiVolumeMeshIJK except that nodes are organized in a (NUMI+1,NUMJ+1,NUMK+1) array where they can be accessed by (i,j,k) indices. So each node located inside the mesh (not on a border) is shared by eight cells. However, the nodes are not evenly spaced as they can be in the MiVolumeMeshRectilinear or MiVolumeMeshRegular.

See also
MiVolumeMeshHexahedronIjk for IJK meshes where adjacent cells do not share points.
Note
Notice that, the virtual methods are the same as in the parent class. The RTTI system is used by some extraction algorithms to identify the mesh type in order to implement some specific optimization based on the properties described above.

SEE ALSO

MiVolumeMeshRectilinear, MiVolumeMeshRegular, MiVolumeMeshUnstructured, MiVolumeMeshHexahedronIjk, MiVolumeMeshVertexHexahedronIjk

Definition at line 58 of file MiVolumeMeshCurvilinear.h.

Member Function Documentation

◆ getGeometry()

virtual const MiGeometryIjk & MiVolumeMeshCurvilinear::getGeometry ( ) const
pure virtual

Returns the geometry of this mesh.

◆ toStream()

virtual std::ostream & MiVolumeMeshCurvilinear::toStream ( std::ostream &  s) const
inlineprotectedvirtual

Performs an output operation on a stream which is returned afterward.

This method is protected since only called by the output operator <<. This method is not pure virtual and output by default the geometry and topology of a mesh. Whenever a different output is needed, this method can be implemented in the subclass to get a different output format. No std::ostream& operator << needs to be defined in any subclass. This allows you to benefit from the virtual inheritance when using the output operator on an abstract class.

Reimplemented from MiMeshIjk.

Definition at line 70 of file MiVolumeMeshCurvilinear.h.


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