]> SALOME platform Git repositories - modules/visu.git/blob - idl/VISU_Gen.idl
Salome HOME
This commit was generated by cvs2git to track changes on a CVS vendor
[modules/visu.git] / idl / VISU_Gen.idl
1 // File :      VISU_Gen.idl
2 // Created :
3 // Author :    Alexey Petrov
4 // Project :   SALOME
5 // Copyright : OPEN CASCADE
6 // $HEADERS:
7
8 /*! \file VISU_Gen.idl This file conatins a set of interfaces of %VISU module.
9       This module will provide various forms of data visualization in %SALOME application.
10       These forms include data tables, XY plots, 3d representations
11       and combination of these forms.
12 */
13 /*!
14  \defgroup Visu SALOME VISU module
15 */
16
17 #ifndef __VISU_GEN__
18 #define __VISU_GEN__
19
20 #include "SALOME_Exception.idl"
21 #include "SALOME_Component.idl"
22 #include "SALOMEDS.idl"
23 #include "SALOMEDS_Attributes.idl"
24 #include "MED.idl"
25
26 /*! \ingroup Visu
27   The main package of interfaces of the module %VISU.
28 */
29 module VISU {
30   //-------------------------------------------------------
31   const string VISU__doc__ = "Module VISU provides various forms of data visualization in SALOME application.\nThese forms include data tables, XY plots,\n3d representations and combination of these forms.";
32   typedef string IdType;
33   enum Scaling{ LINEAR, LOGARITHMIC};
34   enum Entity{ NODE, EDGE, FACE, CELL};
35 /*!
36  This enumeration contains a set of elements defining the type of the module.
37 */
38    enum VISUType{ TNONE,
39                   TCURVE, TTABLE, TCONTAINER, TMESH, TSCALARMAP,
40                   TISOSURFACE, TDEFORMEDSHAPE, TCUTPLANES, TVECTORS, TSTREAMLINES,
41                   TVISUGEN, TVIEWMANAGER, TRESULT,
42                   TXYPLOT, TTABLEVIEW, TVIEW3D,
43                   TENTITY, TFAMILY, TGROUP, TFIELD, TTIMESTAMP,
44                   TALL};
45   interface Base {
46 /*!
47    Returns ID of the object.
48 */
49     IdType GetID();
50     const string GetID__doc__ = "Returns ID of the object.";
51 /*!
52 Returns the type of the presentable object
53 */
54     VISUType GetType();
55     const string GetType__doc__ = "Returns the type of the module interface";
56   };   
57 /*! \brief Presentable object interface
58
59  It is the root class of all presentable objects.
60 */
61   interface PrsObject : Base{
62   };
63     const string PrsObject__doc__ = "It is the root class of all presentable objects.";
64   //-------------------------------------------------------
65 /*! \brief %Table representation interface
66
67 Presentation parameters of the %Table view.
68 */
69   interface Table : PrsObject {
70 /*!
71 Sets the title of the table.
72 */
73     void SetTitle(in string theTitle);
74     const string SetTitle__doc__ = "Sets the title of the table.";
75 /*!
76 Gets the title of the table.
77 */
78     string GetTitle();
79     const string GetTitle__doc__ = "Gets the title of the table.";
80 /*!
81  This enumeration contains a set of elements defining the orientation of the table.
82 */
83     enum Orientation{ HORIZONTAL, /*!<Horizontal orientation of the table.*/
84                        VERTIACAL /*!<Vertical orientation of the table.*/
85                     };
86 /*!
87 Sets orientation of the table.
88 */
89     void SetOrientation(in Orientation theOrientation);
90     const string SetOrientation__doc__ = "Sets orientation of the table.";
91 /*!
92 Gets orientation of the table.
93 */
94     Orientation GetOrientation();
95     const string GetOrientation__doc__ = "Gets orientation of the table.";
96  /*!
97 Gets the number of rows of the table
98  */
99     long GetNbRows();
100     const string GetNbRows__doc__ = "Gets the number of rows of the table.";
101  /*!
102 Gets the number of columns of the table
103  */
104     long GetNbColumns();
105     const string GetNbColumns__doc__ ="Gets the number of columns of the table.";
106   };
107     const string Table__doc__ = "The Table interface contains presentation\nparameters of the %Table view.";
108   //-------------------------------------------------------
109 /*! \brief Interface of curve representation.
110
111 Manages presentation parameters of one curve.
112 It can be used for presentation of a set of curves using a combined presentation.
113 */
114   interface Curve : PrsObject{
115 /*!
116 Sets the title of the curve.
117 */
118     void SetTitle(in string theTitle);
119     const string SetTitle__doc__ = "Sets the title of the curve.";
120 /*!
121 Gets the title of the curve.
122 */
123     string GetTitle();
124     const string GetTitle__doc__ = "Gets the title of the curve.";
125 /*!
126 Sets the color of the curve.
127 */
128     void SetColor(in SALOMEDS::Color theColor);
129     const string SetColor__doc__ = "Sets the color of the curve.";
130 /*!
131 Gets the color of the curve.
132 */
133     SALOMEDS::Color GetColor();
134     const string GetColor__doc__ = "Gets the color of the curve.";
135  /*!
136  This enumeration contains a set of elements defining the representation type of markers (data points) with help of
137 which the curve is constructed on the graphics.
138 */
139     enum MarkerType{ NONE, CIRCLE, RECTANGLE, DIAMOND,
140                      DTRIANGLE, UTRIANGLE, LTRIANGLE, RTRIANGLE,
141                      CROSS, XCROSS };
142 /*!
143 Sets the representation type of markers (data points) with help of
144 which the curve is constructed on the graphics.
145 */
146     void SetMarker(in MarkerType theType);
147     const string SetMarker__doc__ = "Sets the representation type of markers\n(data points) with help of which\nthe curve is constructed on the graphics.";
148 /*!
149 Gets the representation type of markers (data points) with help of
150 which the curve is constructed on the graphics.
151 */
152     MarkerType GetMarker();
153     const string GetMarker__doc__ = "Gets the representation type of markers\n(data points) with help of which the\ncurve is constructed on the graphics.";
154 /*!
155  This enumeration contains a set of elements defining the
156  type of representation of curve lines on the graphics.
157 */
158     enum LineType{ VOIDLINE, SOLIDLINE, DASHLINE, DOTLINE, DASHDOTLINE, DASHDOTDOTLINE};
159 /*!
160 Sets the type of representation of curve lines on the graphics.
161 */
162     void SetLine(in LineType theType, in long theLineWidth);
163     const string SetLine__doc__ = "Sets the type of representation of curve\nlines on the graphics.";
164 /*!
165 Gets the type of representation of curve lines on the graphics.
166 */
167     LineType GetLine();
168     const string GetLine__doc__ = "Gets the type of representation of curve\nlines on the graphics.";
169
170 /*!
171 Gets the width of the curve line.
172 */
173     long GetLineWidth();
174     const string GetLineWidth__doc__ = "Gets the width of the curve line.";
175   };
176     const string Curve__doc__ = "The curve representation interface manages\npresentation parameters of one curve. It can be used\nfor presentation of a set of curves\nusing a combined presentation.";
177 //-------------------------------------------------------
178 /*! \brief The %Container presentable object interface
179 This interface contains a set of methods used for management of a group of curves
180 which are stored in the container.
181 */
182   interface Container : PrsObject{
183 /*!
184 Adds a curve into the container.
185 */
186     void AddCurve(in Curve theCurve);
187     const string AddCurve__doc__ = "Adds a curve into the container.";
188 /*!
189 Removes a curve from the container.
190 */
191     void RemoveCurve(in Curve theCurve);
192     const string RemoveCurve__doc__ = "Removes a curve from the container.";
193 /*!
194 Gets the number of curves which are stored in the container.
195 */
196     long GetNbCurves();
197     const string GetNbCurves__doc__ = "Gets the number of curves which\nare stored in the container.";
198 /*!
199 Removes all curves from the container.
200 */
201     void Clear();
202     const string Clear__doc__ = "Removes all curves from the container.";
203
204   };
205     const string Container__doc__ = "The Container presentable object\ninterface contains a set of methods\nused for management of a group of curves which\nare stored in the container.";
206   //-------------------------------------------------------
207 /*!
208  This enumeration contains a set of elements defining the
209  type of representation of the mesh.
210 */
211
212     enum PresentationType{ POINT,
213                            WIREFRAME,
214                            SHADED,
215                            SHRINK
216                          };
217 /*! \brief Interface of the mesh.
218
219 This interface manages the presentation parameters of the mesh.
220 */
221     interface Mesh : PrsObject{
222 /*!
223 Sets the color of mesh cells.
224 */
225     void SetCellColor(in SALOMEDS::Color theColor);
226     const string SetCellColor__doc__ = "Sets the color of mesh cells.";
227 /*!
228 Gets the color of mesh cells.
229 */
230     SALOMEDS::Color GetCellColor();
231     const string GetCellColor__doc__ = "Gets the color of mesh cells.";
232 /*!
233 Sets the color of mesh nodes.
234 */
235     void SetNodeColor(in SALOMEDS::Color theColor);
236     const string SetNodeColor__doc__ = "Sets the color of mesh nodes.";
237 /*!
238 Gets the color of mesh nodes.
239 */
240     SALOMEDS::Color GetNodeColor();
241     const string GetNodeColor__doc__ = "Gets the color of mesh nodes.";
242
243 /*!
244 Sets the color of mesh links.
245 */
246     void SetLinkColor(in SALOMEDS::Color theColor);
247     const string SetLinkColor__doc__ = "Sets the color of mesh links.";
248 /*!
249 Gets the color of mesh links.
250 */
251     SALOMEDS::Color GetLinkColor();
252     const string GetLinkColor__doc__ = "Gets the color of mesh links.";
253 /*!
254 Sets the type of representation of the mesh.
255 */
256     void SetPresentationType(in PresentationType theType);
257     const string SetPresentationType__doc__ = "Sets the type of representation of the mesh.";
258 /*!
259 Gets the type of representation of the mesh.
260 */
261     PresentationType GetPresentationType();
262     const string GetPresentationType__doc__ = "Gets the type of representation of the mesh.";
263   };
264     const string Mesh__doc__ = "The Mesh interface manages the presentation parameters\nof the mesh.";
265   //-------------------------------------------------------
266 /*! \brief Interface of the %Scalar Map presentation
267
268 This interface contains presentation parameters of the ScalarMap presentation
269 */
270   interface ScalarMap : PrsObject{
271     void SetScalarMode(in long theScaling);
272     long GetScalarMode();
273     void SetScaling(in Scaling theScaling);
274     const string SetScaling__doc__ = "Sets the type of scaling of the values\nreflected by this presentation.";
275 /*!
276 Gets the type of scaling of the values reflected by this presentation.
277 */
278     Scaling GetScaling();
279     const string GetScaling__doc__ = "Gets the type of scaling of the values\nreflected by this presentation.";
280 /*!
281 Sets scalar range - min and max boundaries of this presentable object.
282 \param theMin  Min boundary of this presentable object.
283 \param theMax  Max boundary of this presentable object.
284 */
285     void SetRange(in double theMin, in double theMax);
286     const string SetRange__doc__ = "Sets scalar range - min and max boundaries\nof this presentable object.";
287 /*!
288  Gets the min boundary of this presentable object.
289 */
290     double GetMin();
291     const string GetMin__doc__ = "Gets the min boundary of this presentable object.";
292 /*!
293  Gets the max boundary of this presentable object.
294 */
295     double GetMax();
296     const string GetMax__doc__ = "Gets the max boundary of this presentable object.";
297
298 /*! %Orientation of this presentable object. */
299     enum Orientation{
300                      HORIZONTAL, /*!< Horizontal orientation of this presentable object.*/
301                        VERTICAL  /*!< Vertical orientation of this presentable object.*/
302                     };
303 /*!
304  Sets the type of orientation of this presentable object.
305 */
306     void SetOrientation(in Orientation theOrientation);
307     const string SetOrientation__doc__ = "Sets the type of orientation of this presentable object.";
308 /*!
309  Gets the type of orientation of this presentable object.
310 */
311     Orientation GetOrientation();
312     const string GetOrientation__doc__ = "Gets the type of orientation of this presentable object.";
313
314 /*! \brief Position of this presentable object.
315
316 Sets the position of this presentable object origin on the screen.
317 \param X   Horizontal position. The value can be between 0 and 1.
318 \param Y   Vertical position. The value can be between 0 and 1.
319 */
320     void SetPosition(in double X, in double Y);
321     const string SetPosition__doc__ = "Sets the position of this presentable object\norigin on the screen.";
322 /*!
323   Gets horizontal position of this presentable object origin.
324 */
325     double GetPosX();
326     const string GetPosX__doc__ = "Gets horizontal position of this presentable object origin.";
327 /*!
328   Gets vertical position of this presentable object origin.
329 */
330     double GetPosY();
331     const string GetPosY__doc__ = "Gets vertical position of this presentable object origin.";
332 /*! \brief Size of this presentable object.
333
334 Sets the size of the scalar bar.
335 \param theWidth  Width of this presentable object. The value can be between 0 and 1.
336 \param theHeight  Height of this presentable object. The value can be between 0 and 1.
337 */
338     void SetSize(in double theWidth, in double theHeight);
339     const string SetSize__doc__ = "Sets the size of the scalar bar.";
340 /*!
341 Gets the width of this presentable object.
342 */
343     double GetWidth();
344     const string GetWidth__doc__ = "Gets the width of this presentable object.";
345 /*!
346 Gets the height of this presentable object.
347 */
348     double GetHeight();
349     const string GetHeight__doc__ = "Gets the height of this presentable object.";
350 /*!
351 Sets the number of colors which will be used for presentation of this presentable object.
352 */
353     void SetNbColors(in long theNbColors);
354     const string SetNbColors__doc__ = "Sets the number of colors which will be\nused for presentation of this presentable object.";
355 /*!
356 Gets the number of colors which will be used for presentation of this presentable object.
357 */
358     long GetNbColors();
359     const string GetNbColors__doc__ = "Gets the number of colors which will be\nused for presentation of this presentable object.";
360 /*!
361 Sets the number of labels which will be used for indication of the gradation
362  of this presentable object.
363 */
364     void SetLabels(in long theNbLabels);
365     const string SetLabels__doc__ = "Sets the number of labels which will be used\nfor indication of the gradation of this presentable object.";
366 /*!
367 Gets the number of labels which will be used for indication of the gradation
368  of this presentable object.
369 */
370     long GetLabels();
371     const string GetLabels__doc__ = "Gets the number of labels which will be used\nfor indication of the gradation of this presentable object.";
372
373 /*!
374 Sets the title of this presentable object. For scalar bar by default - the name of the selected result is used.
375 */
376     void SetTitle(in string theName);
377     const string SetTitle__doc__ = "Sets the title of this presentable object. For scalar bar by default - the name of the selected result is used.";
378 /*!
379 Gets the title of this presentable object.
380 */
381     string GetTitle();
382     const string GetTitle__doc__ = "Gets the title of this presentable object.";
383   };
384     const string ScalarMap__doc__ = "The scalarmap interface contains presentation\nparameters of the ScalarMap presentation.";
385   //-------------------------------------------------------
386 /*! \brief Deformed shape presentation interface
387
388 Presentation parameters of the deformed shape presentation.
389 */
390     interface DeformedShape : ScalarMap{
391 /*!
392 Sets the scale of the presentatable object.
393 */
394     void SetScale(in double theScale);
395     const string SetScale__doc__ = "Sets the scale of the deformed shape.";
396 /*!
397 Gets the scale of the presentatable object.
398 */
399     double GetScale();
400     const string GetScale__doc__ = "Gets the scale of the deformed shape";
401   };
402     const string DeformedShape__doc__ = "The deformed shape interface contains\nthe presentation parameters of the deformed shape.";
403   //-------------------------------------------------------
404 /*! \brief Cut planes interface
405
406 Presentation parameters of Cut planes presentation.
407 */
408   interface CutPlanes : ScalarMap{
409 /*!
410  This enumeration contains a set of elements defining the orientation in 3D space
411  of cut planes presentation.
412 */
413     enum Orientation {XY, YZ, ZX};
414 /*!
415 Sets the type of orientation in 3D space of cut planes presentation.
416 */
417     void SetOrientationType(in Orientation theNb);
418     const string SetOrientationType__doc__ = "Sets the type of orientation in 3D\nspace of cut planes presentation.";
419 /*!
420 Gets the type of orientation in 3D space of cut planes presentation.
421 */
422     Orientation GetOrientationType();
423     const string GetOrientationType__doc__ = "Gets the type of orientation in 3D\nspace of cut planes presentation.";
424 /*!
425 Sets the number of cut planes.
426 */
427     void SetNbPlanes(in long theNb);
428     const string SetNbPlanes__doc__ = "Sets the number of cut planes.";
429 /*!
430 Gets the number of cut planes.
431 */
432     long GetNbPlanes();
433     const string GetNbPlanes__doc__ = "Gets the number of cut planes.";
434 /*! Rotation around X-axis.
435 Sets rotation angle of the cut plane presentation.
436 */
437     void SetRotateX(in double theAngle);
438     const string SetRotateX__doc__ = "Rotation around X-axis.\nSets rotation angle of the cut plane presentation.";
439 /*! Rotation around X-axis.
440 Gets rotation angle of the cut plane presentation.
441 */
442     double GetRotateX();
443     const string GetRotateX__doc__ = "Rotation around X-axis.\nGets rotation angle of the cut plane presentation.";
444 /*! Rotation around Y-axis.
445 Sets rotation angle of the cut plane presentation.
446 */
447     void SetRotateY(in double theAngle);
448     const string SetRotateY__doc__ = "Rotation around Y-axis.\nSets rotation angle of the cut plane presentation.";
449 /*! Rotation around Y-axis.
450 Sets rotation angle of the cut plane presentation.
451 */
452     double GetRotateY();
453     const string GetRotateY__doc__ = "Rotation around Y-axis.\nGets rotation angle of the cut plane presentation.";
454   };
455     const string CutPlanes__doc__ = "The cut planes interface contains\nthe presentation parameters of cut planes presentation.";
456   //-------------------------------------------------------
457   /*! \brief Interface of the stream lines representation    
458   This interface contains presentation parameters of
459   stream lines presentations.
460   */
461   interface StreamLines : DeformedShape{
462     enum Direction{ FORWARD,
463                     BACKWARD,
464                     BOTH
465     };
466   };
467   const string StreamLines__doc__ = "";
468
469
470 /*! \brief Interface of the isometric surface representation
471
472    This interface contains presentation parameters of
473     isometric surface presentations.
474 */
475   interface IsoSurfaces : ScalarMap{
476 /*!
477    Sets the number of isometric surfaces.
478 */
479     void SetNbSurfaces(in long theNb);
480     const string SetNbSurfaces__doc__ = "Sets the number of isometric surfaces.";
481 /*!
482    Gets the number of isometric surfaces
483 */
484     long GetNbSurfaces();
485     const string GetNbSurfaces__doc__ = "Gets the number of isometric surfaces.";
486   };
487     const string IsoSurfaces__doc__ = "The isometric surface interface contains\nthe presentation parameters of the isometric surface presentations.";
488   //-------------------------------------------------------
489 /*! \brief Interface of the vector presentation.
490
491 This interface contains presentation parameters of the vector.
492 */
493   interface Vectors : DeformedShape{
494 /*!
495 Sets the width of the line of the vector.
496 */
497     void SetLineWidth(in double theWidth);
498     const string SetLineWidth__doc__ = "Sets the width of the line of the vector.";
499 /*!
500 Gets the width of the line of the vector.
501 */
502     double GetLineWidth();
503     const string GetLineWidth__doc__ = "Gets the width of the line of the vector.";
504 /*!
505  This enumeration contains a set of elements defining the type of representation of the vector head.
506 */
507     enum GlyphType{ ARROW,
508                     CONE2,
509                     CONE6,
510                     NONE
511                   };
512 /*!
513 Sets the type of representation of the vector head.
514 */
515     void SetGlyphType(in GlyphType theType);
516     const string SetGlyphType__doc__ = "Sets the type of representation of the vector head.";
517 /*!
518 Gets the type of representation of the vector head.
519 */
520     GlyphType GetGlyphType();
521     const string GetGlyphType__doc__ = "Gets the type of representation of the vector head.";
522 /*!
523  This enumeration contains a set of elements defining the position of the vector head.
524 */
525
526     enum GlyphPos{ CENTER, /*!<In the center of the vector.*/
527                    TAIL,   /*!<In the tail of the vector.*/
528                    HEAD  /*!<In the head of the vector.*/
529                  };
530 /*!
531 Sets the position of the vector head.
532 */
533     void SetGlyphPos(in GlyphPos thePos);
534     const string SetGlyphPos__doc__ = "Sets the position of the vector head.";
535 /*!
536 Gets the position of the vector head.
537 */
538     GlyphPos GetGlyphPos();
539     const string GetGlyphPos__doc__ = "Gets the position of the vector head.";
540   };
541     const string Vectors__doc__ = "Interface of the vector presentation contains\nthe presentation parameters of the vector.";
542   //-------------------------------------------------------
543 /*! \brief Interface %Result
544
545 This interface serves for inner representation of data generated in other sources. (MED object or file)
546 This data is needed for further construction of graphical presentations.
547 */
548   interface Result : Base {
549   };
550     const string Result__doc__ = "This interface serves for inner representation\nof data generated in other sources. (MED object or file) This data is needed for further construction of graphical presentations.";
551   //-------------------------------------------------------
552   interface ViewManager;
553 /*! \brief %VISU_Gen interface
554
555 This is the main interface of %VISU component. It is necessary for creation of
556 post-processing presentations from given %Result and %Table object reference, using the views
557 provided by %ViewManager.
558 */
559    interface VISU_Gen : Engines::Component, SALOMEDS::Driver, Base{
560      void SetCurrentStudy(in SALOMEDS::Study theStudy);
561      SALOMEDS::Study GetCurrentStudy();
562 /*!
563     Gets the %ViewManager which is used for creation of
564     post-processing presentations.
565 */
566     ViewManager GetViewManager();
567     const string GetViewManager__doc__ = "Gets the ViewManager which is used for creation\nof post-processing presentations.";
568
569 /*!
570 Imports tables from a file and create TableAttribute in Sudy
571 */
572     SALOMEDS::SObject ImportTables(in string theFileName);
573 /*!
574 Imports data from a file.
575 */
576     Result ImportFile(in string theFileName);
577     const string ImportFile__doc__ = "Imports data from a file.";
578 /*!
579 Imports data from a %MED object field.
580 */
581     Result ImportMed(in SALOME_MED::FIELD theField);
582     const string ImportMed__doc__ = "Imports data from a MED object field.";
583 /*!
584 Imports data from a %MED object mesh.
585 */
586     Result ImportMedMesh(in SALOME_MED::MESH theMesh);
587     const string ImportMedMesh__doc__ = "Imports data from a MED object mesh.";
588
589 /*!
590 Imports data from a %MED object SUPPORT.
591 */
592     Result ImportMedSupport(in SALOME_MED::SUPPORT theSupport);
593     const string ImportMedSupport__doc__ = "Imports data from a MED support.";
594
595 /*!
596 Creates a %Mesh on the basis of the data generated in other sources (MED object or file).
597 */
598     const string CreateMesh__doc__ = "Creates a Mesh on the basis of the data\ngenerated in other sources (MED object or file).";
599     Mesh MeshOnEntity(in Result theResult, in string theMeshName, in Entity theEntity);
600     Mesh FamilyMeshOnEntity(in Result theResult, in string theMeshName, in Entity theEntity, in string theFamilyName);
601     Mesh GroupMesh(in Result theResult, in string theMeshName, in string theGroupName);
602 /*!
603 Creates a scalar bar presentation.
604 \param theResult   Data generated in other sources. (MED object or file)
605 \param theMeshName  One of the meshes presented in MED file
606 \param theEntity Type of entity where the field is defined
607 \param theFieldName  Group of data attributed to the %MESH. The data can be scalar or vector.
608 \param theIteration  Number of iteration on the field
609 */
610     ScalarMap ScalarMapOnField(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration);
611     const string CreateScalarMap__doc__ = "Creates a scalar bar presentation.";
612 /*!
613 Creates a deformed shape presentation.
614 \param theResult   Data generated in other sources. (MED object or file)
615 \param theMeshName  One of the meshes presented in MED file
616 \param theEntity Type of entity where the field is defined
617 \param theFieldName  Group of data attributed to the %MESH. The data can be scalar or vector.
618 \param theIteration  Number of iteration on the field
619 */
620     DeformedShape DeformedShapeOnField(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration);
621     const string CreateDeformedShape__doc__ = "Creates a deformed shape presentation.";
622 /*!
623 Creates a vector presentation.
624 \param theResult   Data generated in other sources. (MED object or file)
625 \param theMeshName  One of the meshes presented in MED file
626 \param theEntity Type of entity where the field is defined
627 \param theFieldName  Group of data attributed to the %MESH. The data can be scalar or vector.
628 \param theIteration  Number of iteration on the field
629 */
630
631     Vectors VectorsOnField(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration);
632     const string CreateVectors__doc__ = "Creates a vector presentation.";
633 /*!
634 Creates an iso surface presentation.
635 \param theResult   Data generated in other sources. (MED object or file)
636 \param theMeshName  One of the meshes presented in MED file
637 \param theEntity Type of entity where the field is defined
638 \param theFieldName  Group of data attributed to the %MESH. The data can be scalar or vector.
639 \param theIteration  Number of iteration on the field
640 */
641
642     IsoSurfaces IsoSurfacesOnField(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration);
643     const string CreateIsoSurfaces__doc__ = "Creates an iso surface presentation.";
644 /*!
645 Creates an stream lines presentation.
646 \param theResult   Data generated in other sources. (MED object or file)
647 \param theMeshName  One of the meshes presented in MED file
648 \param theEntity Type of entity where the field is defined
649 \param theFieldName  Group of data attributed to the %MESH. The data can be scalar or vector.
650 \param theIteration  Number of iteration on the field
651 */    
652     StreamLines StreamLinesOnField(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration);
653     const string CreateStreamLines__doc__ = "Creates an stream lines presentation.";
654
655 /*!
656 Creates a presentation of cut planes.
657 \param theResult   Data generated in other sources. (MED object or file)
658 \param theMeshName  One of the meshes presented in MED file
659 \param theEntity Type of entity where the field is defined
660 \param theFieldName  Group of data attributed to the %MESH. The data can be scalar or vector.
661 \param theIteration  Number of iteration on the field
662 */
663     CutPlanes CutPlanesOnField(in Result theResult, in string theMeshName, in Entity theEntity, in string theFieldName, in double theIteration);
664     const string CreateCutPlanes__doc__ = "Creates a presentation of cut planes.";
665 /*!
666 Creates a table presentation.
667 */
668     Table CreateTable(in string theTableEntry);
669     const string CreateTable__doc__ = "Creates a table prasentation containing the data.";
670 /*!
671 Creates a curve on the basis of points, whose values are taken from the table.
672 \param theTable  Table containing the data for construction of curves.
673 \param HRow  Index of the row in the table:  abscissa of the point.
674 \param VRow  Index of the row in the table:  ordinate of the point.
675 */
676     Curve CreateCurve(in Table theTable, in long theHRow, in long theVRow);
677     const string CreateCurve__doc__ = "Creates a curve on the basis of points, whose values\nare taken from the table.";
678 /*!
679 Creates a presentation form containing an array of references to the curves.
680 */
681      Container CreateContainer();
682      const string CreateContainer__doc__ = "Creates a presentation form containing an array\nof references to the curves.";
683   };
684      const string VISU_Gen__doc__ = "This is the main interface of the VISU component. It is\nnecessary for creation of post-processing presentations from given result and table object reference, using the views provided by the viewmanager.";
685 /*! \brief %View interface
686
687  Contains a set of methods used by the %View frame, which can be one of
688  the following types: 3d, Table, XY plot.
689  %View interface is a base for all types of %view interfaces.
690 */
691   interface View: Base{
692 /*!
693 Sets the title of the %View frame.
694 */
695     void SetTitle(in string theTitle);
696     const string SetTitle__doc__ = "Sets the title of the view frame.";
697 /*!
698 Gets the title of the %View frame.
699 */
700     string GetTitle();
701     const string GetTitle__doc__ = "Gets the title of the view frame.";
702 /*!
703 Sets background color of the %View frame.
704 */
705     void SetBackground(in SALOMEDS::Color theColor);
706     const string SetBackground__doc__ = "Sets background color of the view frame.";
707 /*!
708 Gets background color of the %View frame.
709 */
710     SALOMEDS::Color GetBackground();
711     const string GetBackground__doc__ = "Gets background color of the view frame.";
712 /*!
713 Minimizes to the task bar or to the bottom of the Desktop the %View frame.
714 */
715     void Minimize();
716     const string Minimize__doc__ = "Minimizes to the task bar or to the bottom of the\nDesktop the view frame.";
717 /*!
718 Restores the %View frame.
719 */
720     void Restore();
721     const string Restore__doc__ = "Restores the view frame.";
722 /*!
723 Maximizes the %View frame.
724 */
725     void Maximize();
726     const string Maximize__doc__ = "Maximizes the view frame.";
727 /*!
728 Removes all presentations (presentable objects) from the %view.
729 */
730     void EraseAll();
731     const string EraseAll__doc__ = "Removes all presentations (presentable objects) from the view.";
732 /*!
733 Displays all presentations (presentable objects) in the %view.
734 */
735     void DisplayAll();
736     const string DisplayAll__doc__ = "Displays all presentations (presentable objects) in the view.";
737 /*!
738 Removes a definite presentation (presentable object) from the %view.
739 */
740     void Erase(in PrsObject thePrsObj);
741     const string Erase__doc__ = "Removes a definite presentation (presentable object) from the view.";
742 /*!
743 Displays a definite presentation (presentable object) in the %view.
744 */
745     void Display(in PrsObject thePrsObj);
746     const string Display__doc__ = "Displays a definite presentation (presentable object) in the view.";
747 /*!
748 Allows to display only a definite presentation (presentable object) in the %view.
749 All other presentations are removed from the %view.
750 */
751     void DisplayOnly(in PrsObject thePrsObj);
752     const string DisplayOnly__doc__ = "Allows to display only a definite presentation\n(presentable object) in the view. All other presentations are\nremoved from the view.";
753 /*!
754 Updates the view.
755 */
756     void Update();
757     const string Update__doc__ = "Updates the view.";
758
759 /*!
760 Saves the view.
761 */
762     boolean SavePicture(in string theFileName);
763     const string SavePicture__doc__ = "Saves the view contents into image file.";
764   };
765
766     const string View__doc__ = "Contains a set of methods used by the view frame,\nwhich can be one of the following types:\n3d, table, XY plot.";
767   //-------------------------------------------------------
768 /*! \brief 3D view interface
769
770 This interface contains a set of methods necessary for representation of objects in 3D space.
771 */
772
773   interface View3D : View {
774 /*!
775 This enumeration contains a set of elements determining a predefined point of view
776   (position of the camera in 3D space relative to the presentable object).
777 */
778     enum ViewType{ FRONT, BACK, LEFT, RIGHT, TOP, BOTTOM};
779 /*!
780 This enumeration contains a set of elements determining the axis
781 */
782     enum Axis{ XAxis, YAxis, ZAxis};
783 /*!
784 Data type defining coordinates in 3D space.
785 */
786     typedef double XYZ[3];
787
788 /*!
789  Makes all presentations, which are currently present in the %view, completely visible.
790 */
791
792     void FitAll();
793     const string FitAll__doc__ = "Makes all presentations, which are currently present in the\nview, completely visible.";
794
795 /*!
796 Sets a predefined point of view (FRONT, BACK, LEFT, RIGHT, TOP, BOTTOM). (In other words it means
797  a predefined position of the camera in 3D space with respect to the object which is represented.)
798 */
799     void SetView(in ViewType theType);
800     const string SetView__doc__ = "Sets a predefined point of view\n(FRONT, BACK, LEFT, RIGHT, TOP, BOTTOM).";
801
802 /*!
803 Sets the position of the camera in 3D space. This point is used as the first point of the vector defining
804 the view direction of the camera.
805 */
806     void SetPointOfView(in XYZ theCoord);
807     const string SetPointOfView__doc__ = "Sets the position of the camera in 3D space.";
808 /*!
809 Gets the position of the camera in 3D space.This point is used as the first point of the vector defining
810 the view direction of the camera.
811 */
812     XYZ GetPointOfView();
813     const string GetPointOfView__doc__ = "Gets the position of the camera in 3D space.";
814 /*!
815 Sets the vertical line of the camera in 3D space.
816 */
817     void SetViewUp(in XYZ theDir);
818     const string SetViewUp__doc__ = "Sets the vertical line of the camera in 3D space.";
819 /*!
820 Gets the vertical line of the camera in 3D space.
821 */
822     XYZ GetViewUp();
823     const string GetViewUp__doc__ = "Gets the vertical line of the camera in 3D space.";
824 /*!
825 Sets the point of sight of the camera. This point is used as the second point of the vector defining
826 the view direction of the camera.
827 */
828     void SetFocalPoint(in XYZ theDir);
829     const string SetFocalPoint__doc__ = "Sets the point of sight of the camera.";
830 /*!
831 Gets the point of sight of the camera. This point is used as the second point of the vector defining
832 the view direction of the camera.
833 */
834     XYZ GetFocalPoint();
835     const string GetFocalPoint__doc__ = "Gets the point of sight of the camera.";
836 /*!
837 Zooming of the presentable object. Sets the scale.
838 */
839     void SetParallelScale(in double theScale);
840     const string SetParallelScale__doc__ = "Zooming of the presentable object. Sets the scale.";
841 /*!
842 Zooming of the presentable object. Gets the scale.
843 */
844     double GetParallelScale();
845     const string GetParallelScale__doc__ = "Zooming of the presentable object. Gets the scale.";
846 /*!
847 Scaling of the view along a definite axis.
848 \param theAxis The axis of the scaling
849 \param theParam The coefficient of the scaling
850 */
851     void ScaleView(in Axis theAxis, in double theParam);
852     const string ScaleView__doc__ = "Scaling of the view along a definite axis and with a\ndefinite coefficient of the scaling.";
853 /*!
854 Removes the scaling of the view.
855 */
856     void RemoveScale();
857     const string RemoveScale__doc__ = "Removes the scaling of the view.";
858 /*!
859 Returns True if the view parameters have been created, False if the parameters have been modified.
860 */
861     boolean SaveViewParams(in string theName);
862     const string SaveViewParams__doc__ = "Returns True if the view parameters have been created,\nFalse if the parameters have been modified.";
863 /*!
864 Returns True if the view parameters have been found and applied to the view,
865 False if the parameters with this name don't exist.
866 */
867     boolean RestoreViewParams(in string theName);
868     const string RestoreViewParams__doc__ = "Returns True if the view parameters have been found and\napplied to the view, False if the parameters with this name don't exist.";
869   };
870     const string View3D__doc__ = "This interface contains a set of methods necessary for representation\nof objects in 3D space.";
871
872
873   //-------------------------------------------------------
874   interface TableView : View {
875    
876   };
877
878
879   //-------------------------------------------------------
880   interface XYPlot : View {
881     void SetSubTitle(in string theTitle);
882     string GetSubTitle();
883
884     enum CurveType { POINTS, MULTYLINE, SPLINE};
885     void SetCurveType(in CurveType theType);
886     CurveType GetCurveType();
887         
888     void SetMarkerSize(in long theSize);
889     long GetMarkerSize();
890
891     void EnableXGrid(in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor);
892     void EnableYGrid(in boolean theMajor, in long theNumMajor, in boolean theMinor, in long theNumMinor);
893  
894     void SetHorScaling(in Scaling theScaling);
895     Scaling GetHorScaling();
896     void SetVerScaling(in Scaling theScaling);
897     Scaling GetVerScaling();
898
899     void SetXTitle(in string theTitle);
900     string GetXTitle();
901
902     void SetYTitle(in string theTitle);
903     string GetYTitle();
904
905     void ShowLegend(in boolean theShowing);
906
907     void FitAll();
908   };
909
910   //-------------------------------------------------------
911 /*! \brief Interface of the %ViewManager
912
913    The %ViewManager is necessary for work with view windows (creation and deletion).
914 */
915
916     interface ViewManager: Base{
917 /*! \brief Getting an active %View Frame
918
919  Returns an object reference to the active %View Frame.
920  Type of the %View must be checked.
921  \note <BR>Returns nil if there are no views currently opened.
922 */
923
924     View GetCurrentView();
925     const string GetCurrentView__doc__ = "Getting an active View Frame.\nReturns an object reference to the active view frame.";
926 /*! \brief Creation of a 3d %View.
927
928  Returns an object reference to the newly created 3d %View.
929 */
930     View3D Create3DView();
931     const string Create3DView__doc__ = "Creation of a 3d view.\nReturns an object reference to the newly created 3d view.";
932
933     TableView CreateTableView(in Table theTable);
934
935     const string CreateTableView__doc__ = "Creation of a table view.\nReturns an object reference to the newly created table view.";
936     XYPlot CreateXYPlot();
937
938     const string CreateXYPlot__doc__ = "Creation of a 2d view.\nReturns an object reference to the newly created XYPlot view.";
939     void Destroy(in View theView);
940
941     const string Destroy__doc__ = "Destroying of the view";
942
943
944  };
945     const string ViewManager__doc__ = "The ViewManager interface is necessary for work\nwith view windows (creation and deletion).";
946 };
947 #endif
948
949