58006569fc3909d63ecb231f97f52828a421896e
[occt.git] / src / PrsMgr / PrsMgr_Presentation3d.cdl
1 -- Created on: 1993-10-21
2 -- Created by: Jean-Louis FRENKEL
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21 -- Modified by  rob 09-oct-96
22
23
24
25 class Presentation3d from PrsMgr inherits Presentation from PrsMgr
26
27 uses
28     PresentationManager3d from PrsMgr,
29     Presentation from Prs3d,
30     NameOfColor from Quantity,
31     Transformation from Geom,
32     Length from Quantity,
33     ShadingAspect from Prs3d,
34     TypeOfPresentation3d from PrsMgr,
35     DataStructureManager from Graphic3d,
36     Structure from Graphic3d,
37     PresentableObjectPointer from PrsMgr,PresentableObject from PrsMgr,
38     Prs from PrsMgr,
39     Projector from Prs3d,
40     KindOfPrs from PrsMgr
41 is
42     Create(aPresentationManager: PresentationManager3d from PrsMgr;
43            aPresentableObject: PresentableObject from PrsMgr)
44     returns mutable Presentation3d  from  PrsMgr
45     is private;
46
47     KindOfPresentation(me) returns KindOfPrs from PrsMgr is redefined static;
48
49     Destroy(me: mutable) is redefined;
50     ---Level: Public
51     ---Purpose: Destructor
52     ---C++:     alias ~
53
54     Display(me: mutable) 
55     is redefined static private;
56     
57     Erase(me) is redefined static private;
58     
59     Highlight(me: mutable) is redefined static private;
60     
61     Unhighlight (me) is redefined static private;
62     
63     IsDisplayed (me) returns Boolean from Standard
64     is redefined static private;
65
66     IsHighlighted (me) returns Boolean from Standard
67     is redefined static private;
68
69
70     DisplayPriority(me) returns Integer from Standard
71     is redefined static private;
72     
73     SetDisplayPriority(me:mutable;aNewPrior:Integer from Standard)
74     is redefined static private;
75
76     SetZLayer ( me : mutable;
77                 theLayerId : Integer from Standard )
78       is redefined static private;
79     ---Purpose: Set Z layer ID for the presentation
80
81     GetZLayer ( me )
82       returns Integer from Standard is redefined static private;
83     ---Purpose: Get Z layer ID for the presentation
84
85     Clear(me:mutable)
86     ---Purpose: removes the whole content of the presentation.
87     --          Does not remove the other connected presentations.
88     --          
89     is redefined static private;
90
91
92     Color(me:mutable; aColor: NameOfColor from Quantity)
93     is static private;
94     
95     BoundBox(me)
96     is static private;
97     
98 ---Category: references to other presentation.
99
100     Connect(me; anOtherPresentation: Presentation3d from PrsMgr)
101     is static private;
102     
103 ---Category: Transformation methods.
104
105     Transform (me; aTransformation: Transformation from Geom)
106     is static private;
107
108     Place (me; X,Y,Z: Length from Quantity)
109     is static private;
110
111     Multiply (me; aTransformation: Transformation from Geom)
112     is static private;
113
114     Move (me; X,Y,Z: Length from Quantity)
115     is static private;
116         
117  ---Category: Global Aspect methods
118
119     SetShadingAspect(me;
120                      aShadingAspect: ShadingAspect from Prs3d)
121     is static private;
122
123     Presentation (me) returns mutable Presentation from Prs3d
124     is static;
125
126
127             ---Category:  Computed Structures
128
129     Compute(me : mutable; aProjector: DataStructureManager from Graphic3d)
130     returns Structure from Graphic3d
131     is static private;
132
133     Compute(me           : mutable; 
134             aProjector   : DataStructureManager from Graphic3d;
135             TheTrsf      : Transformation from Geom)
136     returns Structure from Graphic3d
137     is static private;
138
139     Compute(me           :  mutable; 
140             aProjector   :  DataStructureManager from Graphic3d;
141             aGivenStruct :  Structure from Graphic3d)
142     is static private;
143
144     Compute(me           : mutable; 
145             aProjector   : DataStructureManager from Graphic3d;
146             TheTrsf      : Transformation from Geom;
147             aGivenStruct : Structure from Graphic3d)
148     is static private;
149
150
151
152     Projector(myclass; aProjector: DataStructureManager from Graphic3d)
153     returns Projector from Prs3d
154     is private;
155     
156 fields
157
158     myStructure: Prs from PrsMgr;
159     myDisplayReason: Boolean from Standard;
160     myPresentableObject: PresentableObjectPointer from PrsMgr;
161 friends 
162     class PresentationManager3d from PrsMgr,
163     class PresentableObject from PrsMgr,
164     class Prs from PrsMgr
165 end Presentation3d from PrsMgr;