// File : VISU_Gen.idl
// Author : Alexey Petrov
-/*! \file VISU_Gen.idl This file conatins a set of interfaces of %VISU module.
- This module will provide various forms of data visualization in %SALOME application.
+/*! \file VISU_Gen.idl This file conatins a set of interfaces of the %VISU module.
+ This module provides various forms of data visualization in %SALOME application.
These forms include data tables, XY plots, 3d representations
and combination of these forms.
*/
-/*!
- \defgroup Visu SALOME VISU module
-*/
#ifndef __VISU_GEN__
#define __VISU_GEN__
#include "SALOMEDS_Attributes.idl"
#include "MED.idl"
-/*! \ingroup Visu
- The main package of interfaces of the module %VISU.
+/*!
+ The main package of interfaces of the post-processing module %VISU.
*/
module VISU {
//-------------------------------------------------------
typedef string IdType;
- enum Scaling{ LINEAR, LOGARITHMIC};
+/*!
+ This enumeration contains a set of elements defining the type of the scaling, which
+can be applied on different presentations.
+*/
+ enum Scaling{ LINEAR, /*!< Linear type of scaling. */
+ LOGARITHMIC /*!< Logarithmic type of scaling. */
+ };
enum Entity{ NODE, EDGE, FACE, CELL};
- //enum Entity{ CELL, FACE, EDGE, NODE};
/*!
- This enumeration contains a set of elements defining the type of the module.
+ This enumeration contains a set of elements defining the type of the %VISU object.
*/
enum VISUType{ TNONE,
TCURVE, TTABLE, TCONTAINER, TMESH, TSCALARMAP,
};
/*! \brief Presentable object interface
- It is the root class of all presentable objects.
+Presentable object interface is the root class of all presentable objects.
*/
interface PrsObject : Base{
};
*/
SALOMEDS::Color GetColor();
/*!
- This enumeration contains a set of elements defining the representation type of markers (data points) with help of
+ This enumeration contains a set of elements defining the presentation type of markers (data points) with help of
which the curve is constructed on the graphics.
*/
enum MarkerType{ NONE, CIRCLE, RECTANGLE, DIAMOND,
DTRIANGLE, UTRIANGLE, LTRIANGLE, RTRIANGLE,
CROSS, XCROSS };
/*!
-Sets the representation type of markers (data points) with help of
+Sets the presentation type of markers (data points) with help of
which the curve is constructed on the graphics.
*/
void SetMarker(in MarkerType theType);
/*!
-Gets the representation type of markers (data points) with help of
+Gets the presentation type of markers (data points) with help of
which the curve is constructed on the graphics.
*/
MarkerType GetMarker();
/*!
This enumeration contains a set of elements defining the
- type of representation of curve lines on the graphics.
+ type of presentation of a curve line on the graphics.
*/
enum LineType{ VOIDLINE, SOLIDLINE, DASHLINE, DOTLINE, DASHDOTLINE, DASHDOTDOTLINE};
/*!
-Sets the type of representation of curve lines on the graphics.
+Sets the type of presentation of curve lines on the graphics.
*/
void SetLine(in LineType theType, in long theLineWidth);
/*!
};
//-------------------------------------------------------
+/*! \brief 3D presentation interface
+
+This is a root class for all 3D presentations, which can be displayed in %VISU module.
+*/
interface Prs3d : PrsObject{
+/*! Kills a 3D presentation.
+*/
void Destroy();
};
/*!
This enumeration contains a set of elements defining the
- type of representation of the mesh.
+ type of presentation of the mesh.
*/
enum PresentationType{ POINT,
WIREFRAME,
SHADED,
+ INSIDEFRAME,
+ SURFACEFRAME,
SHRINK
};
/*! \brief Interface of the mesh.
Presentation parameters of the deformed shape presentation.
*/
- interface DeformedShape : ScalarMap{
+ interface DeformedShape : ScalarMap{
/*!
Sets the scale of the presentatable object.
*/
Gets the scale of the presentatable object.
*/
double GetScale();
+
+ boolean IsColored();
+ void ShowColored(in boolean theColored);
+
+ SALOMEDS::Color GetColor();
+ void SetColor(in SALOMEDS::Color theColor);
};
//-------------------------------------------------------
/*! \brief Cut planes interface
-Presentation parameters of Cut planes presentation.
+Presentation parameters of Cut planes presentation. This type of presentation consists of
+cutting your initial mesh by a definite number of planes. As the result you will see these planes
+which will be cutted by the borders of the mesh.
*/
interface CutPlanes : ScalarMap{
/*!
This enumeration contains a set of elements defining the orientation in 3D space
- of cut planes presentation.
+ of the cut planes.
*/
enum Orientation {XY, YZ, ZX};
/*!
Gets the type of orientation in 3D space of cut planes presentation.
*/
Orientation GetOrientationType();
+/*!
+Sets the displacement of the cut planes in 3D space.
+
+\param theDisp This parameter defines position of the cut planes
+in 3D space. It varies from 0 to 1. If the chosen value is 0.5, the cut planes
+will be evenly located regarding each other; in other words, the distance between all
+of them will equal. If the value is higher or lower than 0.5, the planes will be displaced
+to one or another side.
+*/
void SetDisplacement(in double theDisp);
+/*!
+Gets the displacement of the cut planes in 3D space.
+*/
double GetDisplacement();
/*!
+Sets the position of a definite cut plane
+*/
+ void SetPlanePosition(in long thePlaneNumber, in double thePlanePosition);
+
+/*!
+Sets the position of the choosen plane to default value
+*/
+ void SetDefault(in long thePlaneNumber);
+
+/*!
+Gets the position of the choosen plane
+*/
+
+ double GetPlanePosition(in long thePlaneNumber);
+
+/*!
+Determines whether the choosen plane has default position
+*/
+
+ boolean IsDefault(in long thePlaneNumber);
+
+/*!
Sets the number of cut planes.
*/
void SetNbPlanes(in long theNb);
double GetRotateY();
};
//-------------------------------------------------------
- /*! \brief Interface of the stream lines representation
- This interface contains presentation parameters of
- stream lines presentations.
- */
/*! \brief Cut lines interface
Presentation parameters of Cut lines presentation.
double GetDisplacement();
double GetDisplacement2();
+ void SetBasePlanePosition(in double thePlanePosition);
+ double GetBasePlanePosition();
+
+ void SetLinePosition(in long thePlaneNumber, in double thePlanePosition);
+ double GetLinePosition(in long thePlaneNumber);
+
+ void SetDefault();
+ boolean IsDefault();
+
+ void SetDefaultPosition(in long thePlaneNumber);
+ boolean IsDefaultPosition(in long thePlaneNumber);
+
void SetNbLines(in long theNb);
long GetNbLines();
double GetRotateY();
double GetRotateY2();
};
-
+ /*! \brief Interface of the stream lines representation
+ This interface contains presentation parameters of
+ stream lines presentations.
+ */
interface StreamLines : DeformedShape{
enum Direction{ FORWARD,
BACKWARD,
This data is needed for further construction of graphical presentations.
*/
interface Result : Base {
+ boolean BuildAll();
};
//-------------------------------------------------------
interface ViewManager;
//-------------------------------------------------------
+/*! \brief Interface of the Table view
+
+This interface is used for creation of a view necessary for presentation of a table.
+*/
interface TableView : View {
-
+
};
//-------------------------------------------------------
+/*! \brief Interface of the XY plot view
+
+This interface is used for creation of a view necessary for presentation of a XY plot generated on the basis
+of one or several curve lines.
+*/
interface XYPlot : View {
+/*! Sets the title of the XY plot
+\param theTitle The title of the XY plot
+*/
+
void SetSubTitle(in string theTitle);
+/*! Gets the title of the XY plot
+*/
string GetSubTitle();
-
+/*!
+This enumeration contains a set of elements determining the type of the curve lines, which
+will be displayed in your XY plot.
+*/
enum CurveType { POINTS, MULTYLINE, SPLINE};
void SetCurveType(in CurveType theType);
CurveType GetCurveType();
-
+
void SetMarkerSize(in long theSize);
long GetMarkerSize();
void EnableXGrid(in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor);
void EnableYGrid(in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor);
-
+
void SetHorScaling(in Scaling theScaling);
Scaling GetHorScaling();
void SetVerScaling(in Scaling theScaling);
void Destroy(in View theView);
+ void ProcessEvents();
};
};
#endif