0024428: Implementation of LGPL license
[occt.git] / src / BRep / BRep_CurveRepresentation.cdl
CommitLineData
b311480e 1-- Created on: 1993-07-05
2-- Created by: Remi LEQUETTE
3-- Copyright (c) 1993-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
973c2be1 8-- This library is free software; you can redistribute it and / or modify it
9-- under the terms of the GNU Lesser General Public version 2.1 as published
10-- by the Free Software Foundation, with special exception defined in the file
11-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12-- distribution for complete text of the license and disclaimer of any warranty.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17deferred class CurveRepresentation from BRep inherits TShared from MMgt
18
19 ---Purpose: Root class for the curve representations. Contains
20 -- a location.
21
22uses
23 Pnt from gp,
24 Pnt2d from gp,
25 Shape from GeomAbs,
26 Curve from Geom2d,
27 Surface from Geom,
28 Curve from Geom,
29 Location from TopLoc,
30
31 Polygon3D from Poly,
32 Polygon2D from Poly,
33 Triangulation from Poly,
34 PolygonOnTriangulation from Poly
35
36raises
37 DomainError from Standard
38
39is
40
41 Initialize(L : Location from TopLoc);
42
43 -------------------------------------------------
44 -- What kind of representation
45 -------------------------------------------------
46
47 IsCurve3D(me) returns Boolean
48 ---Purpose: A 3D curve representation.
49 is virtual;
50
51 IsCurveOnSurface(me) returns Boolean
52 ---Purpose: A curve in the parametric space of a surface.
53 is virtual;
54
55 IsRegularity(me) returns Boolean
56 ---Purpose: A continuity between two surfaces.
57 is virtual;
58
59 IsCurveOnClosedSurface(me) returns Boolean
60 ---Purpose: A curve with two parametric curves on the same
61 -- surface.
62 is virtual;
63
64 IsCurveOnSurface(me; S : Surface from Geom;
65 L : Location from TopLoc) returns Boolean
66 ---Purpose: Is it a curve in the parametric space of <S> with
67 -- location <L>.
68 is virtual;
69
70 IsRegularity(me; S1,S2 : Surface from Geom;
71 L1,L2 : Location from TopLoc) returns Boolean
72 ---Purpose: Is it a regularity between <S1> and <S2> with
73 -- location <L1> and <L2>.
74 is virtual;
75
76 IsPolygon3D(me) returns Boolean
77 ---Purpose: A 3D polygon representation.
78 is virtual;
79
80
81 IsPolygonOnTriangulation(me) returns Boolean
82 ---Purpose: A representation by an array of nodes on a
83 -- triangulation.
84 is virtual;
85
86
87 IsPolygonOnTriangulation(me; T : Triangulation from Poly;
88 L : Location from TopLoc) returns Boolean
89 ---Purpose: Is it a polygon in the definition of <T> with
90 -- location <L>.
91 is virtual;
92
93
94 IsPolygonOnClosedTriangulation(me) returns Boolean
95 ---Purpose: A representation by two arrays of nodes on a
96 -- triangulation.
97 is virtual;
98
99
100 IsPolygonOnSurface(me) returns Boolean
101 ---Purpose: A polygon in the parametric space of a surface.
102 is virtual;
103
104 IsPolygonOnSurface(me;S : Surface from Geom;
105 L : Location from TopLoc) returns Boolean
106 ---Purpose: Is it a polygon in the parametric space of <S> with
107 -- location <L>.
108 is virtual;
109
110
111 IsPolygonOnClosedSurface(me) returns Boolean
112 ---Purpose: Two 2D polygon representations in the parametric
113 -- space of a surface.
114 is virtual;
115
116 -------------------------------------------------
117 -- Location
118 -------------------------------------------------
119
120 Location(me) returns Location from TopLoc
121 ---C++: return const &
122 ---C++: inline
123 is static;
124
125 Location(me : mutable; L : Location from TopLoc)
126 ---C++: inline
127 is static;
128
129 -------------------------------------------------
130 -- 3d curve
131 -------------------------------------------------
132
133 Curve3D(me) returns any Curve from Geom
134 ---C++: return const &
135 raises
136 DomainError from Standard -- if !IsCurve3D
137 is virtual;
138
139 Curve3D(me : mutable; C : Curve from Geom)
140 raises
141 DomainError from Standard -- if !IsCurve3D
142 is virtual;
143
144 -------------------------------------------------
145 -- curve on surface
146 -------------------------------------------------
147
148 Surface(me) returns any Surface from Geom
149 ---C++: return const &
150 raises
151 DomainError from Standard
152 is virtual;
153
154 PCurve(me) returns any Curve from Geom2d
155 ---C++: return const &
156 raises
157 DomainError from Standard
158 is virtual;
159
160 PCurve(me : mutable; C : Curve from Geom2d)
161 raises
162 DomainError from Standard
163 is virtual;
164
165 -------------------------------------------------
166 -- curve on closed surface
167 -------------------------------------------------
168
169 PCurve2(me) returns any Curve from Geom2d
170 ---C++: return const &
171 raises
172 DomainError from Standard
173 is virtual;
174
175 PCurve2(me : mutable; C : Curve from Geom2d)
176 raises
177 DomainError from Standard
178 is virtual;
179
180
181 -------------------------------------------------
182 -- polygon3d
183 -------------------------------------------------
184
185 Polygon3D(me) returns any Polygon3D from Poly
186 ---C++: return const&
187 is virtual;
188
189 Polygon3D(me: mutable;P: Polygon3D from Poly)
190 raises
191 DomainError from Standard
192 is virtual;
193
194 -------------------------------------------------
195 -- polygon on surface
196 -------------------------------------------------
197
198 Polygon(me) returns any Polygon2D from Poly
199 ---C++: return const&
200 is virtual;
201
202
203 Polygon(me: mutable;P: Polygon2D from Poly)
204 raises
205 DomainError from Standard
206 is virtual;
207
208 -------------------------------------------------
209 -- polygon on closed surface
210 -------------------------------------------------
211
212 Polygon2(me) returns any Polygon2D from Poly
213 ---C++: return const&
214 is virtual;
215
216
217 Polygon2(me: mutable;P: Polygon2D from Poly)
218 raises
219 DomainError from Standard
220 is virtual;
221
222 -------------------------------------------------
223 -- polygon on triangulation
224 -------------------------------------------------
225
226 Triangulation(me) returns any Triangulation from Poly
227 ---C++: return const&
228 is virtual;
229
230
231 PolygonOnTriangulation(me) returns any PolygonOnTriangulation from Poly
232 ---C++: return const&
233 raises
234 DomainError from Standard
235 is virtual;
236
237
238 PolygonOnTriangulation(me: mutable; P: PolygonOnTriangulation from Poly)
239 raises
240 DomainError from Standard
241 is virtual;
242
243 -------------------------------------------------
244 -- polygon on closed triangulation
245 -------------------------------------------------
246
247 PolygonOnTriangulation2(me) returns any PolygonOnTriangulation from Poly
248 ---C++: return const&
249 raises
250 DomainError from Standard
251 is virtual;
252
253
254 PolygonOnTriangulation2(me: mutable; P2: PolygonOnTriangulation from Poly)
255 raises
256 DomainError from Standard
257 is virtual;
258
259 -------------------------------------------------
260 -- continuity
261 -------------------------------------------------
262
263 Surface2(me) returns any Surface from Geom
264 ---C++: return const &
265 raises
266 DomainError from Standard
267 is virtual;
268
269 Location2(me) returns Location from TopLoc
270 ---C++: return const &
271 raises
272 DomainError from Standard
273 is virtual;
274
275 Continuity(me) returns Shape from GeomAbs
276 ---C++: return const &
277 raises
278 DomainError from Standard
279 is virtual;
280
281 Continuity(me : mutable; C : Shape from GeomAbs)
282 raises
283 DomainError from Standard
284 is virtual;
285
286
287 Copy(me) returns mutable CurveRepresentation from BRep
288 ---Purpose: Return a copy of this representation.
289 is deferred;
290
291fields
292
293 myLocation : Location from TopLoc is protected;
294
295end CurveRepresentation;