Integration of OCCT 6.5.0 from SVN
[occt.git] / src / Prs3d / Prs3d_Presentation.cdl
1 -- File:        Presentation.cdl
2 -- Created:     Wed Aug 26 17:37:40 1992
3 -- Author:      Jean Louis FRENKEL
4 --              <jlf@mastox>
5 -- Modified:    GG IMP020200 Add Transformation() method
6 ---Copyright:    Matra Datavision 1992
7
8
9 class Presentation from Prs3d inherits Structure from Graphic3d
10
11         ---Purpose: Defines a presentation object which can be displayed,
12         -- highlighted or erased.
13         -- The presentation object stores the results of the
14         -- presentation algorithms as defined in the StdPrs
15         -- classes and the Prs3d classes inheriting Prs3d_Root.
16         -- This presentation object is used to give display
17         -- attributes defined at this level to
18         -- ApplicationInteractiveServices classes at the level above.
19         
20 uses
21         Array2OfReal            from TColStd,
22     DataStructureManager from Graphic3d,
23     Structure            from Graphic3d,
24     StructureManager     from Graphic3d,
25     Group                from Graphic3d,
26     Transformation       from Geom,
27     NameOfColor          from Quantity,
28     Length               from Quantity,
29     ShadingAspect        from Prs3d
30     
31 is
32     Create (aStructureManager: StructureManager from Graphic3d;
33             Init:              Boolean          from Standard = Standard_True) 
34         ---Purpose: Constructs a presentation object
35         -- if <Init> is false, no color initialization is done.
36     returns mutable Presentation from Prs3d;
37
38
39     Compute(me : mutable; aProjector: DataStructureManager from Graphic3d)
40     returns Structure from Graphic3d
41     is redefined virtual;
42
43         Compute ( me    : mutable;
44                   aProjector    : DataStructureManager from Graphic3d;
45                   AMatrix       : Array2OfReal from TColStd )
46                 returns Structure from Graphic3d is redefined virtual;
47         ---Level: Advanced
48         ---Purpose: Returns the new Structure defined for the new visualization
49         ---Category: Methods to modify the class definition
50
51         Compute ( me    : mutable;
52                   aProjector    : DataStructureManager from Graphic3d;
53                   aStructure    : in out Structure from Graphic3d )
54                 is redefined virtual;
55         ---Level: Advanced
56         ---Purpose: Returns the new Structure defined for the new visualization
57         ---Category: Methods to modify the class definition
58
59         Compute ( me    : mutable;
60                   aProjector    : DataStructureManager from Graphic3d;
61                   AMatrix       : Array2OfReal from TColStd;
62                   aStructure    : in out Structure from Graphic3d )
63                 is redefined virtual;
64         ---Level: Advanced
65         ---Purpose: Returns the new Structure defined for the new visualization
66         ---Category: Methods to modify the class definition
67
68
69 ---Category: Highlighting methods.
70 --           
71     Highlight(me: mutable) is static;
72         ---Purpose: displays the whole content of the presentation in white.
73     Color(me: mutable; aColor: NameOfColor from Quantity) is static;
74         ---Purpose: displays the whole content of the presentation in the specified color.
75     BoundBox(me: mutable) is static;
76
77     Display ( me : mutable ) is redefined static;
78     
79 ---Category: Global modification methods.
80     SetShadingAspect(me: mutable; aShadingAspect: ShadingAspect from Prs3d);
81     
82 ---Category: Inquire methods.
83     IsPickable(me) returns Boolean from Standard;
84     
85 ---Category: Transformation methods.
86     Transform   (me: mutable; aTransformation: Transformation from Geom);
87     Place       (me: mutable; X,Y,Z: Length from Quantity);
88
89     Multiply    (me: mutable; aTransformation: Transformation from Geom); 
90     Move        (me: mutable; X,Y,Z: Length from Quantity);
91     Transformation   (me) returns Transformation from Geom;
92         
93     Clear(me:mutable; WithDestruction: Boolean from Standard = Standard_True) 
94     is redefined;
95         ---Purpose: removes the whole content of the presentation.
96         --          Does not remove the other connected presentations.
97         --              if WithDestruction == Standard_False then
98         --              clears all the groups of primitives in the structure.
99
100     Connect(me: mutable; aPresentation: Presentation from Prs3d);
101     
102     Remove (me: mutable; aPresentation: Presentation from Prs3d);
103     RemoveAll (me: mutable);
104
105     SetPickable(me: mutable) is static;
106     SetUnPickable(me: mutable) is static;
107     
108     CurrentGroup(me) returns mutable Group from Graphic3d is static private;
109     NewGroup(me:mutable) returns mutable Group from Graphic3d is static private;
110
111 fields
112     myStruct      : Structure from Graphic3d;
113     myCurrentGroup: Group     from Graphic3d;
114 --
115 friends 
116         class Root from Prs3d
117
118 end Presentation;
119
120
121
122
123
124
125
126