Curvilinear surface mesh abstract interface. More...
#include <MeshVizXLM/mesh/MiSurfaceMeshCurvilinear.h>
Public Member Functions | |
virtual const MiGeometryIj & | getGeometry () const =0 |
virtual const MiSurfaceMeshCurvilinear * | getNewClone () const |
Protected Member Functions | |
virtual std::ostream & | toStream (std::ostream &s) const |
A Curvilinear Surface mesh is similar to a MiMeshIJ except that nodes are organized in a (NUMI+1,NUMJ+1) array where they can be accessed by (i,j) indices. So each node located inside the mesh (not on a border) is shared by four cells. However, the nodes are not evenly spaced as they can be in the MiSurfaceMeshRectilinear or MiSurfaceMeshRegular.
MiSurfaceMeshRectilinear, MiSurfaceMeshRegular, MiSurfaceMeshUnstructured
virtual const MiGeometryIj& MiSurfaceMeshCurvilinear::getGeometry | ( | ) | const [pure virtual] |
Returns the geometry of this mesh.
Implemented in MeXSurfaceMeshCurvilinear.
virtual const MiSurfaceMeshCurvilinear* MiSurfaceMeshCurvilinear::getNewClone | ( | ) | const [inline, virtual] |
Gets a new clone of this mesh. This method creates and returns a new instance of the class of this object by copying all fields of this instance. The application is responsible for deleting the new instance returned. This method is not pure virtual because it is not always necessary to get a copy of a mesh. However the mesh instances returned by any extraction method are always cloneable. By default this method throws an exception of type MiAbstractMethodError.
Reimplemented in MeXSurfaceMeshCurvilinear.
virtual std::ostream& MiSurfaceMeshCurvilinear::toStream | ( | std::ostream & | s | ) | const [inline, protected, virtual] |
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.
Implements MiMesh.