Integration of OCCT 6.5.0 from SVN
[occt.git] / src / TopoDS / TopoDS_Shape.cdl
CommitLineData
7fd59977 1-- File: TopoDS_Shape.cdl
2-- Created: Tue Dec 11 16:55:01 1990
3-- Author: Remi Lequette
4---Copyright: Matra Datavision 1990, 1992
5
6
7class Shape from TopoDS
8
9 ---Purpose: Describes a shape which
10-- - references an underlying shape with the potential
11-- to be given a location and an orientation
12-- - has a location for the underlying shape, giving its
13-- placement in the local coordinate system
14-- - has an orientation for the underlying shape, in
15-- terms of its geometry (as opposed to orientation in
16-- relation to other shapes).
17-- Note: A Shape is empty if it references an underlying
18-- shape which has an empty list of shapes.
19
20uses
21 Orientation from TopAbs,
22 ShapeEnum from TopAbs,
23
24 TShape from TopoDS,
25
26 Location from TopLoc
27
28raises
29 NullObject from Standard,
30 DomainError from Standard,
31 TypeMismatch from Standard
32
33is
34 Create returns Shape from TopoDS;
35 ---C++: inline
36 ---Purpose: Creates a NULL Shape referring to nothing.
37
38 --
39 -- Data from the Shape itself
40 --
41
42 IsNull(me) returns Boolean
43 ---C++: inline
44 ---Purpose: Returns true if this shape is null. In other words, it
45 -- references no underlying shape with the potential to
46 -- be given a location and an orientation.
47 is static;
48
49 Nullify(me : in out)
50 ---C++: inline
51 ---Purpose: Destroys the reference to the underlying shape
52 -- stored in this shape. As a result, this shape becomes null.
53 is static;
54
55 Location(me) returns Location from TopLoc
56 ---C++: inline
57 ---C++: return const &
58 ---Purpose: Returns the shape local coordinate system.
59 is static;
60
61 Location(me : in out; Loc : Location from TopLoc)
62 ---C++: inline
63 ---Purpose: Sets the shape local coordinate system.
64 is static;
65
66 Located(me; Loc : Location) returns Shape from TopoDS
67 ---Purpose: Returns a shape similar to <me> with the local
68 -- coordinate system set to <Loc>.
69 --
70 ---C++: inline
71 is static;
72
73 Orientation(me) returns Orientation from TopAbs
74 ---Purpose: Returns the shape orientation.
75 --
76 ---C++: inline
77 is static;
78
79 Orientation(me : in out; Orient : Orientation from TopAbs)
80 ---Purpose: Sets the shape orientation.
81 ---C++: inline
82 is static;
83
84 Oriented(me; Or : Orientation from TopAbs) returns Shape from TopoDS
85 ---Purpose: Returns a shape similar to <me> with the
86 -- orientation set to <Or>.
87 --
88 ---C++: inline
89 is static;
90
91 --
92 -- Data from the TShape
93 --
94
95 TShape(me) returns TShape from TopoDS
96 ---C++: inline
97 ---C++: return const &
98 is static;
99
100 ShapeType(me) returns ShapeEnum from TopAbs
101 ---C++: inline
102 ---Purpose: Returns the value of the TopAbs_ShapeEnum
103 -- enumeration that corresponds to this shape, for
104 -- example VERTEX, EDGE, and so on.
105 -- Exceptions
106 -- Standard_NullObject if this shape is null.
107 raises NullObject from Standard
108 is static;
109
110 Free(me) returns Boolean
111 ---Purpose: Returns the free flag.
112 --
113 ---C++: inline
114 raises NullObject from Standard
115 is static;
116
117 Free(me : in out; F : Boolean)
118 ---Purpose: Sets the free flag.
119 --
120 ---C++: inline
121 raises NullObject from Standard
122 is static;
123
124 Modified(me) returns Boolean
125 ---Purpose: Returns the modification flag.
126 --
127 ---C++: inline
128 raises NullObject from Standard
129 is static;
130
131 Modified(me : in out; M : Boolean)
132 ---Purpose: Sets the modification flag.
133 --
134 ---C++: inline
135 raises NullObject from Standard
136 is static;
137
138 Checked(me) returns Boolean
139 ---Purpose: Returns the checked flag.
140 --
141 ---C++: inline
142 raises NullObject from Standard
143 is static;
144
145 Checked(me : in out; C : Boolean)
146 ---Purpose: Sets the checked flag.
147 --
148 ---C++: inline
149 raises NullObject from Standard
150 is static;
151
152 Orientable(me) returns Boolean
153 ---Purpose: Returns the orientability flag.
154 --
155 ---C++: inline
156 raises NullObject from Standard
157 is static;
158
159 Orientable(me : in out; C : Boolean)
160 ---Purpose: Sets the orientability flag.
161 --
162 ---C++: inline
163 raises NullObject from Standard
164 is static;
165
166 Closed(me) returns Boolean
167 ---Purpose: Returns the closedness flag.
168 --
169 ---C++: inline
170 raises NullObject from Standard
171 is static;
172
173 Closed(me : in out; C : Boolean)
174 ---Purpose: Sets the closedness flag.
175 --
176 ---C++: inline
177 raises NullObject from Standard
178 is static;
179
180 Infinite(me) returns Boolean
181 ---Purpose: Returns the infinity flag.
182 --
183 ---C++: inline
184 raises NullObject from Standard
185 is static;
186
187 Infinite(me : in out; C : Boolean)
188 ---Purpose: Sets the infinity flag.
189 --
190 ---C++: inline
191 raises NullObject from Standard
192 is static;
193
194 Convex(me) returns Boolean
195 ---Purpose: Returns the convexness flag.
196 --
197 ---C++: inline
198 raises NullObject from Standard
199 is static;
200
201 Convex(me : in out; C : Boolean)
202 ---Purpose: Sets the convexness flag.
203 --
204 ---C++: inline
205 raises NullObject from Standard
206 is static;
207
208 --
209 -- Methods to modify the Shape data
210 --
211
212 Move(me : in out; position : Location from TopLoc)
213 ---Purpose: Multiplies the Shape location by <position>.
214 --
215 ---C++: inline
216 is static;
217
218 Moved(me; position : Location from TopLoc) returns Shape from TopoDS
219 ---Purpose: Returns a shape similar to <me> with a location
220 -- multiplied by <position>.
221 --
222 ---C++: inline
223 is static;
224
225 Reverse(me : in out)
226 ---Purpose: Reverses the orientation, using the Reverse method
227 -- from the TopAbs package.
228 --
229 ---C++: inline
230 is static;
231
232 Reversed(me) returns Shape from TopoDS
233 ---Purpose: Returns a shape similar to <me> with the
234 -- orientation reversed, using the Reverse method
235 -- from the TopAbs package.
236 --
237 ---C++: inline
238 is static;
239
240 Complement(me : in out)
241 ---Purpose: Complements the orientation, using the Complement
242 -- method from the TopAbs package.
243 --
244 ---C++: inline
245 is static;
246
247 Complemented(me) returns Shape from TopoDS
248 ---Purpose: Returns a shape similar to <me> with the
249 -- orientation complemented, using the Complement
250 -- method from the TopAbs package.
251 --
252 ---C++: inline
253 is static;
254
255 Compose(me : in out; Orient : Orientation from TopAbs)
256 ---Purpose: Updates the Shape Orientation by composition with
257 -- <Orient>, using the Compose method from the TopAbs
258 -- package.
259 --
260 ---C++: inline
261 is static;
262
263 Composed(me; Orient : Orientation from TopAbs) returns Shape from TopoDS
264 ---Purpose: Returns a shape similar to <me> with the
265 -- orientation composed with <Orient>, using the
266 -- Compose method from the TopAbs package.
267 --
268 ---C++: inline
269 is static;
270
271 --
272 -- Methods to compare Shapes
273 --
274
275 IsPartner(me; other : Shape) returns Boolean
276 ---Purpose: Returns True if two shapes are partners, i.e. if
277 -- they share the same TShape. Locations and
278 -- Orientations may differ.
279 --
280 ---C++: inline
281 is static;
282
283 IsSame(me; other : Shape) returns Boolean
284 ---Purpose: Returns True if two shapes are same, i.e. if they
285 -- share the same TShape with the same Locations.
286 -- Orientations may differ.
287 ---C++: inline
288 is static;
289
290 IsEqual(me; other : Shape) returns Boolean
291 ---Purpose: Returns True if two shapes are equal, i.e. if they
292 -- share the same TShape with the same Locations and
293 -- Orientations.
294 --
295 ---C++: inline
296 ---C++: alias operator ==
297 is static;
298
299 IsNotEqual(me; other : Shape) returns Boolean
300 ---Purpose: Negation of the IsEqual method.
301 --
302 ---C++: inline
303 ---C++: alias operator !=
304 is static;
305
306 HashCode (me; Upper : Integer ) returns Integer
307 ---Purpose: Returns a hashed value denoting <me>. This value
308 -- is in the range 1..<Upper>. It is computed from
309 -- the TShape and the Location. The Orientation is
310 -- not used.
311 --
312 ---C++: function call
313 is static;
314
315 EmptyCopy(me : in out)
316 ---Purpose: Replace <me> by a new Shape with the same
317 -- Orientation and Location and a new TShape with the
318 -- same geometry and no sub-shapes.
319 --
320 ---C++: inline
321 is static;
322
323 EmptyCopied(me) returns Shape from TopoDS
324 ---Purpose: Returns a new Shape with the same Orientation and
325 -- Location and a new TShape with the same geometry
326 -- and no sub-shapes.
327 --
328 ---C++: inline
329 is static;
330
331 --
332 -- To set the TShape
333 --
334
335 TShape(me : in out; T : TShape from TopoDS)
336 ---C++: inline
337 is static;
338
339fields
340 myTShape : TShape from TopoDS;
341 myLocation : Location from TopLoc;
342 myOrient : Orientation from TopAbs;
343
344end Shape;