2 -- Created: Wed Jul 7 15:26:57 1993
3 -- Author: Remi LEQUETTE
5 ---Copyright: Matra Datavision 1993
11 ---Purpose: Provides class methods to access to the geometry
28 Triangulation from Poly,
31 PolygonOnTriangulation from Poly,
32 HArray1OfInteger from TColStd,
33 HArray1OfReal from TColStd
36 NullObject from Standard,
37 NoSuchObject from Standard
42 -----------------------------------------------------------
43 -----------------------------------------------------------
45 -----------------------------------------------------------
46 -----------------------------------------------------------
47 IsClosed (myclass; S : Shape from TopoDS) returns Boolean from Standard;
49 ---Purpose: Returns <True> if S if flaged Closed, if S is a
50 -- Solid,Shell or Compound returns <True> is S has no free boundaries.
53 -----------------------------------------------------------
54 -----------------------------------------------------------
56 -----------------------------------------------------------
57 -----------------------------------------------------------
61 -----------------------------------------------------------
63 -----------------------------------------------------------
66 Surface(myclass; F : Face from TopoDS;
67 L : out Location from TopLoc) returns Surface from Geom
69 ---Purpose: Returns the geometric surface of the face. Returns
70 -- in <L> the location for the surface.
71 ---C++: return const &
73 NullObject from Standard;
75 Surface(myclass; F : Face from TopoDS) returns Surface from Geom
77 ---Purpose: Returns the geometric surface of the face. It can
78 -- be a copy if there is a Location.
81 NullObject from Standard;
83 Triangulation(myclass; F : Face from TopoDS;
84 L : out Location from TopLoc) returns Triangulation from Poly
86 ---Purpose: Returns the Triangulation of the face. It is a
87 -- null handle if there is no triangulation.
89 ---C++: return const &
91 NullObject from Standard;
95 -----------------------------------------------------------
97 -----------------------------------------------------------
99 Tolerance(myclass; F : Face from TopoDS) returns Real
101 ---Purpose: Returns the tolerance of the face.
103 NullObject from Standard;
105 -----------------------------------------------------------
106 -- Face natural restriction flag
107 -----------------------------------------------------------
109 NaturalRestriction(myclass; F : Face from TopoDS) returns Boolean
111 ---Purpose: Returns the NaturalRestriction flag of the face.
113 NullObject from Standard;
118 -----------------------------------------------------------
119 -----------------------------------------------------------
121 -----------------------------------------------------------
122 -----------------------------------------------------------
124 IsGeometric(myclass; E: Edge from TopoDS)
125 ---Purpose: Returns True if <E> is a 3d curve or a curve on
129 -----------------------------------------------------------
131 -----------------------------------------------------------
133 Curve(myclass; E : Edge from TopoDS;
134 L : out Location from TopLoc;
135 First, Last : out Real)
136 returns Curve from Geom
138 ---Purpose: Returns the 3D curve of the edge. May be a Null
139 -- handle. Returns in <L> the location for the curve.
140 -- In <First> and <Last> the parameter range.
142 ---C++: return const &
144 NullObject from Standard;
147 Curve(myclass; E : Edge from TopoDS;
148 First, Last : out Real)
149 returns Curve from Geom
151 ---Purpose: Returns the 3D curve of the edge. May be a Null handle.
152 -- In <First> and <Last> the parameter range.
153 -- It can be a copy if there is a Location.
155 NullObject from Standard;
157 -----------------------------------------------------------
159 -----------------------------------------------------------
161 Polygon3D(myclass; E : Edge from TopoDS;
162 L : out Location from TopLoc)
163 returns Polygon3D from Poly
165 ---Purpose: Returns the 3D polygon of the edge. May be a Null
166 -- handle. Returns in <L> the location for the polygon.
168 ---C++: return const &
170 NullObject from Standard;
173 -----------------------------------------------------------
174 -- Edge curve on surface
175 -----------------------------------------------------------
177 CurveOnSurface(myclass; E : Edge from TopoDS;
178 F : Face from TopoDS;
179 First, Last : out Real)
180 returns Curve from Geom2d
182 ---Purpose: Returns the curve associated to the edge in the
183 -- parametric space of the face. Returns a NULL
184 -- handle if this curve does not exist. Returns in
185 -- <First> and <Last> the parameter range.
187 NullObject from Standard;
190 CurveOnSurface(myclass; E : Edge from TopoDS;
191 S : Surface from Geom;
192 L : Location from TopLoc;
193 First, Last : out Real)
194 returns Curve from Geom2d
196 ---Purpose: Returns the curve associated to the edge in the
197 -- parametric space of the surface. Returns a NULL
198 -- handle if this curve does not exist. Returns in
199 -- <First> and <Last> the parameter range.
201 NullObject from Standard;
204 CurveOnSurface(myclass; E : Edge from TopoDS;
205 C : out Curve from Geom2d;
206 S : out Surface from Geom;
207 L : out Location from TopLoc;
208 First, Last : out Real)
210 ---Purpose: Returns in <C>, <S>, <L> a 2d curve, a surface and
211 -- a location for the edge <E>. <C> and <S> are null
212 -- if the edge has no curve on surface. Returns in
213 -- <First> and <Last> the parameter range.
215 NullObject from Standard;
217 CurveOnSurface(myclass; E : Edge from TopoDS;
218 C : out Curve from Geom2d;
219 S : out Surface from Geom;
220 L : out Location from TopLoc;
221 First, Last : out Real;
224 ---Purpose: Returns in <C>, <S>, <L> the 2d curve, the surface
225 -- and the location for the edge <E> of rank <Index>.
226 -- <C> and <S> are null if the index is out of range.
227 -- Returns in <First> and <Last> the parameter range.
229 NullObject from Standard;
231 -----------------------------------------------------------
232 -- Edge polygon on surface
233 -----------------------------------------------------------
235 PolygonOnSurface(myclass; E : Edge from TopoDS;
236 F : Face from TopoDS)
237 returns Polygon2D from Poly
239 ---Purpose: Returns the polygon associated to the edge in the
240 -- parametric space of the face. Returns a NULL
241 -- handle if this polygon does not exist.
243 NullObject from Standard;
245 PolygonOnSurface(myclass; E : Edge from TopoDS;
246 S : Surface from Geom;
247 L : Location from TopLoc)
248 returns Polygon2D from Poly
250 ---Purpose: Returns the polygon associated to the edge in the
251 -- parametric space of the surface. Returns a NULL
252 -- handle if this polygon does not exist.
254 NullObject from Standard;
257 PolygonOnSurface(myclass; E : Edge from TopoDS;
258 C : out Polygon2D from Poly;
259 S : out Surface from Geom;
260 L : out Location from TopLoc)
262 ---Purpose: Returns in <C>, <S>, <L> a 2d curve, a surface and
263 -- a location for the edge <E>. <C> and <S> are null
264 -- if the edge has no polygon on surface.
266 NullObject from Standard;
268 PolygonOnSurface(myclass; E : Edge from TopoDS;
269 C : out Polygon2D from Poly;
270 S : out Surface from Geom;
271 L : out Location from TopLoc;
274 ---Purpose: Returns in <C>, <S>, <L> the 2d curve, the surface
275 -- and the location for the edge <E> of rank <Index>.
276 -- <C> and <S> are null if the index is out of range.
278 NullObject from Standard;
282 -----------------------------------------------------------
283 -- Edge polygon on triangulation
284 -----------------------------------------------------------
286 PolygonOnTriangulation(myclass; E : Edge from TopoDS;
287 T : Triangulation from Poly;
288 L : Location from TopLoc)
289 ---C++: return const &
290 returns PolygonOnTriangulation from Poly;
292 ---Purpose: Returns the polygon associated to the edge in the
293 -- parametric space of the face. Returns a NULL
294 -- handle if this polygon does not exist.
297 PolygonOnTriangulation(myclass; E : Edge from TopoDS;
298 P : out PolygonOnTriangulation from Poly;
299 T : out Triangulation from Poly;
300 L : out Location from TopLoc)
302 ---Purpose: Returns in <P>, <T>, <L> a polygon on triangulation, a
303 -- triangulation and a location for the edge <E>.
304 -- <P> and <T> are null if the edge has no
305 -- polygon on triangulation.
307 NullObject from Standard;
309 PolygonOnTriangulation(myclass; E : Edge from TopoDS;
310 P : out PolygonOnTriangulation from Poly;
311 T : out Triangulation from Poly;
312 L : out Location from TopLoc;
314 ---Purpose: Returns in <P>, <T>, <L> a polygon on
315 -- triangulation, a triangulation and a location for
316 -- the edge <E> for the range index. <C> and <S> are
317 -- null if the edge has no polygon on triangulation.
320 NullObject from Standard;
323 -----------------------------------------------------------
324 -- Edge closed on surface
325 -----------------------------------------------------------
327 IsClosed(myclass; E : Edge from TopoDS;
328 F : Face from TopoDS)
331 ---Purpose: Returns True if <E> has two PCurves in the
332 -- parametric space of <F>. i.e. <F> is on a closed
333 -- surface and <E> is on the closing curve.
336 NullObject from Standard;
339 -----------------------------------------------------------
340 -- Edge closed on surface
341 -----------------------------------------------------------
343 IsClosed(myclass; E : Edge from TopoDS;
344 S : Surface from Geom;
345 L : Location from TopLoc)
348 ---Purpose: Returns True if <E> has two PCurves in the
349 -- parametric space of <S>. i.e. <S> is a closed
350 -- surface and <E> is on the closing curve.
353 NullObject from Standard;
355 -----------------------------------------------------------
356 -- Edge closed on triangulation
357 -----------------------------------------------------------
359 IsClosed(myclass; E : Edge from TopoDS;
360 T : Triangulation from Poly)
363 ---Purpose: Returns True if <E> has two arrays of indices in
364 -- the triangulation <T>.
366 NullObject from Standard;
368 -----------------------------------------------------------
370 -----------------------------------------------------------
372 Tolerance(myclass; E : Edge from TopoDS) returns Real
374 ---Purpose: Returns the tolerance for <E>.
376 NullObject from Standard;
378 -----------------------------------------------------------
380 -----------------------------------------------------------
382 SameParameter(myclass; E : Edge from TopoDS) returns Boolean
384 ---Purpose: Returns the SameParameter flag for the edge.
386 NullObject from Standard;
388 SameRange(myclass; E : Edge from TopoDS) returns Boolean
390 ---Purpose: Returns the SameRange flag for the edge.
392 NullObject from Standard;
394 Degenerated(myclass; E : Edge from TopoDS)
397 ---Purpose: Returns True if the edge is degenerated.
399 NullObject from Standard;
401 -------------------------------------------------------
402 -- Edge parameter range
403 -------------------------------------------------------
405 Range(myclass; E : Edge from TopoDS;
406 First, Last : out Real)
407 ---Purpose: Gets the range of the 3d curve.
409 NullObject from Standard; -- If <E> is Null
412 Range(myclass; E : Edge from TopoDS;
413 S : Surface from Geom;
414 L : Location from TopLoc;
415 First, Last : out Real)
416 ---Purpose: Gets the range of the edge on the pcurve on the
419 NullObject from Standard; -- If <E> is Null
422 Range(myclass; E : Edge from TopoDS;
423 F : Face from TopoDS;
424 First, Last : out Real)
425 ---Purpose: Gets the range of the edge on the pcurve on the face.
427 NullObject from Standard; -- If <E> is Null
430 -------------------------------------------------------
433 -- The data structures records a location in UV for the two
434 -- extremities of an edge.
436 -- By default these location are computed from the PCurve.
438 -- They can be updated to ensure their identity on connected edges.
439 -- (See the package BRepTools)
441 -------------------------------------------------------
443 UVPoints(myclass; E : Edge from TopoDS;
444 S : Surface from Geom;
445 L : Location from TopLoc;
446 PFirst, PLast : out Pnt2d from gp)
447 ---Purpose: Gets the UV locations of the extremities of the edge.
449 NullObject from Standard; -- If <E> is Null
452 UVPoints(myclass; E : Edge from TopoDS;
453 F : Face from TopoDS;
454 PFirst, PLast : out Pnt2d from gp)
455 ---Purpose: Gets the UV locations of the extremities of the edge.
457 NullObject from Standard; -- If <E> is Null
459 SetUVPoints(myclass; E : Edge from TopoDS;
460 S : Surface from Geom;
461 L : Location from TopLoc;
462 PFirst, PLast : Pnt2d from gp)
463 ---Purpose: Sets the UV locations of the extremities of the edge.
465 NullObject from Standard; -- If <E> is Null
468 SetUVPoints(myclass; E : Edge from TopoDS;
469 F : Face from TopoDS;
470 PFirst, PLast : Pnt2d from gp)
471 ---Purpose: Sets the UV locations of the extremities of the edge.
473 NullObject from Standard; -- If <E> is Null
475 -----------------------------------------------------------
477 -----------------------------------------------------------
479 HasContinuity(myclass; E : Edge from TopoDS;
480 F1, F2 : Face from TopoDS)
483 ---Purpose: Returns True if the edge is on the surfaces of the
486 NullObject from Standard; -- If the edge or the faces are null.
489 Continuity(myclass; E : Edge from TopoDS;
490 F1, F2 : Face from TopoDS)
491 returns Shape from GeomAbs
493 ---Purpose: Returns the continuity.
495 NullObject from Standard; -- If the edge or the faces are null.
497 HasContinuity(myclass; E : Edge from TopoDS;
498 S1, S2 : Surface from Geom;
499 L1, L2 : Location from TopLoc)
502 ---Purpose: Returns True if the edge is on the surfaces.
504 NullObject from Standard; -- If the edge or the surfaces are null.
507 Continuity(myclass; E : Edge from TopoDS;
508 S1, S2 : Surface from Geom;
509 L1, L2 : Location from TopLoc)
510 returns Shape from GeomAbs
512 ---Purpose: Returns the continuity.
514 NullObject from Standard; -- If the edge or the faces are null.
517 -----------------------------------------------------------
518 -----------------------------------------------------------
520 -----------------------------------------------------------
521 -----------------------------------------------------------
525 -----------------------------------------------------------
527 -----------------------------------------------------------
529 Pnt(myclass; V : Vertex from TopoDS) returns Pnt from gp
531 ---Purpose: Returns the 3d point.
533 NullObject from Standard; -- if <V> is Null or has no geometry.
535 -----------------------------------------------------------
537 -----------------------------------------------------------
539 Tolerance(myclass; V : Vertex from TopoDS) returns Real
541 ---Purpose: Returns the tolerance.
543 NullObject from Standard; -- if <V> is Null or has no geometry.
545 -----------------------------------------------------------
546 -- Vertex parameter on edge
547 -----------------------------------------------------------
549 Parameter(myclass; V : Vertex from TopoDS;
550 E : Edge from TopoDS)
553 ---Purpose: Returns the parameter of <V> on <E>.
555 NullObject from Standard;
559 Parameter(myclass; V : Vertex from TopoDS;
560 E : Edge from TopoDS;
561 F : Face from TopoDS)
564 ---Purpose: Returns the parameters of the vertex on the
565 -- pcurve of the edge on the face.
567 NullObject from Standard;
571 Parameter(myclass; V : Vertex from TopoDS;
572 E : Edge from TopoDS;
573 S : Surface from Geom;
574 L : Location from TopLoc)
577 ---Purpose: Returns the parameters of the vertex on the
578 -- pcurve of the edge on the surface.
580 NullObject from Standard;
583 Parameters(myclass; V : Vertex from TopoDS;
584 F : Face from TopoDS)
585 returns Pnt2d from gp
587 ---Purpose: Returns the parameters of the vertex on the face.
589 NullObject from Standard;