Demonstration class to visualize mesh with 3D-Data-Master.
|
Inherits from:
|
MeshViewer
|
|
Derived classes:
|
|
|
Include file:
|
MeshViewer/MeshViewer.h
|
This is only a demonstration class, given with source code.
As it uses only some of the features of 3D-data master, the limitations
of this class are not necessary limitation of 3D-data Master.
It allows visualization of many scalar data sets on a mesh and one
vector data set. Any kind of mesh (surface of volume) available
with 3D-data Master can be visualized. The interactivity is managed
with Dialog Master.
Note that MasterSuite must be initialized before using this class.
(call PoBase::init()).
This class uses one graphic window managed by PoXtExaminerViewer class and
at least 3 dialog boxes. The first dialog box (of which title is "Mesh
Viewer") controls
- the visibility of the other dialog boxes
- the selection of the scalar data set to be visualized.
- the type of coloring
- the orientation X,Y,Z of the dragger tools
- the visibility of the dragger tools and the legend
- the writing of an .iv file
The "Scalar viewer" dialog box is managed either by the class
Mesh2DScalarViewer if the mesh is a surface mesh (derived from PbMesh2D)
or by the class Mesh3DScalarViewer if the mesh is a volume mesh (derived
from PbMesh3D). This box controls the representations that depend only
to scalar data.
The "Probe viewer" dialog box is managed by the class MeshProbeViewer.
It controls the visibility of the mesh cell that contain the position
of the dragger.
The "Vector viewer" dialog box is managed either by the class
Mesh2DVecViewer if the mesh is a surface mesh (derived from PbMesh2D)
or by the class Mesh3DVecViewer if the mesh is a volume mesh (derived
from PbMesh3D). This box controls the representation of a vector field.
This box is visible only if the mesh has a vector data set.
The "Stream viewer" dialog box is managed by the class MeshStreamViewer.
It controls the visibility and many attributes of streamlines.
This box is visible only if the mesh has a vector data set.
This viewer uses a SoJackDragger to control the position of different
representations of the mesh. The reference manual of Open Inventor
gives some information about handling this tools.
The dragger is used to
- manage the position of the probe
- manage the position of streamline sources if the mesh has a vector
data set
For a volume mesh, the dragger is also used to
- manage the position of the cross section (see PoMeshCrossSection) and
the cross contour (see PoMeshCrossContour)
- manage the position of a plane on which a vector's field
is represented (see PoMesh3DVecGridCrossSection)
- manage the position of the clipping plane (see SoClipPlane)