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