1 -- Created on: 1992-11-19
2 -- Created by: Remi LEQUETTE
3 -- Copyright (c) 1992-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
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.
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.
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.
22 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627
24 class FaceExplorer from BRepClass
26 ---Purpose: Provide an exploration of a BRep Face for the
30 Orientation from TopAbs,
38 Create (F : Face from TopoDS) returns FaceExplorer from BRepClass;
40 Reject(me; P : Pnt2d from gp) returns Boolean
41 ---Purpose: Should return True if the point is outside a
42 -- bounding volume of the face.
45 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627 Begin
46 -- Segment(me; P : Pnt2d from gp;
47 Segment(me: in out; P : Pnt2d from gp;
48 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627 End
49 L : out Lin2d from gp; Par : out Real)
50 ---Purpose: Returns in <L>, <Par> a segment having at least
51 -- one intersection with the face boundary to
52 -- compute intersections.
53 returns Boolean from Standard -- skv OCC12627
56 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627 Begin
57 OtherSegment(me: in out; P : Pnt2d from gp;
58 L : out Lin2d from gp; Par : out Real)
59 ---Purpose: Returns in <L>, <Par> a segment having at least
60 -- one intersection with the face boundary to
61 -- compute intersections. Each call gives another segment.
62 returns Boolean from Standard
65 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627 End
66 InitWires(me : in out)
67 ---Purpose: Starts an exploration of the wires.
70 MoreWires(me) returns Boolean
71 ---Purpose: Returns True if there is a current wire.
77 ---Purpose: Sets the explorer to the next wire.
82 RejectWire(me; L : Lin2d from gp; Par : Real) returns Boolean
83 ---Purpose: Returns True if the wire bounding volume does not
84 -- intersect the segment.
87 InitEdges(me : in out)
88 ---Purpose: Starts an exploration of the edges of the current
92 MoreEdges(me) returns Boolean
93 ---Purpose: Returns True if there is a current edge.
99 ---Purpose: Sets the explorer to the next edge.
104 RejectEdge(me; L : Lin2d from gp; Par : Real) returns Boolean
105 ---Purpose: Returns True if the edge bounding volume does not
106 -- intersect the segment.
109 CurrentEdge(me; E : out Edge from BRepClass;
110 Or : out Orientation from TopAbs)
111 ---Purpose: Current edge in current wire and its orientation.
115 myFace : Face from TopoDS;
116 myWExplorer : Explorer from TopExp;
117 myEExplorer : Explorer from TopExp;
118 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627 Begin
119 myCurEdgeInd: Integer from Standard;
120 myCurEdgePar: Real from Standard;
121 -- Modified by skv - Wed Jul 12 10:05:54 2006 OCC12627 End