7fd59977 |
1 | -- File: BRepAlgo_FaceRestrictor.cdl |
2 | -- Created: Fri Sep 1 10:45:57 1995 |
3 | -- Author: Yves FRICAUD |
4 | -- <yfr@nonox> |
5 | ---Copyright: Matra Datavision 1995 |
6 | |
7 | |
8 | class FaceRestrictor from BRepAlgo |
9 | |
10 | ---Purpose: Builds all the faces limited with a set of non |
11 | -- jointing and planars wires. if |
12 | -- <ControlOrientation> is false The Wires must have |
13 | -- correct orientations. Sinon orientation des wires |
14 | -- de telle sorte que les faces ne soient pas infinies |
15 | -- et qu'elles soient disjointes. |
16 | |
17 | uses |
18 | Wire from TopoDS, |
19 | Face from TopoDS, |
20 | ListOfShape from TopTools, |
21 | DataMapOfShapeListOfShape from TopTools |
22 | is |
23 | |
24 | Create returns FaceRestrictor from BRepAlgo; |
25 | |
26 | Init (me : in out; |
27 | F : Face from TopoDS; |
28 | Proj : Boolean from Standard = Standard_False; |
29 | ControlOrientation : Boolean from Standard = Standard_False) |
30 | ---Purpose: the surface of <F> will be the the surface of each new |
31 | -- faces built. |
32 | -- <Proj> is used to update pcurves on edges if necessary. |
33 | -- See Add(). |
34 | is static; |
35 | |
36 | Add( me : in out; |
37 | W : in out Wire from TopoDS) |
38 | ---Purpose: Add the wire <W> to the set of wires. |
39 | -- |
40 | -- Warning: |
41 | -- The Wires must be closed. |
42 | -- |
43 | -- The edges of <W> can be modified if they have not pcurves |
44 | -- on the surface <S> of <F>. In this case |
45 | -- if <Proj> is false the first pcurve of the edge |
46 | -- is positionned on <S>. |
47 | -- if <Proj> is True ,the Pcurve On <S> is the |
48 | -- projection of the curve 3d on <F>. |
49 | is static; |
50 | |
51 | Clear(me : in out) |
52 | ---Purpose: Removes all the Wires |
53 | is static; |
54 | |
55 | Perform( me : in out) |
56 | ---Purpose: Evaluate all the faces limited by the set of Wires. |
57 | is static; |
58 | |
59 | IsDone( me) |
60 | returns Boolean from Standard |
61 | is static; |
62 | |
63 | More( me) |
64 | returns Boolean from Standard |
65 | is static; |
66 | |
67 | Next( me : in out) |
68 | is static; |
69 | |
70 | Current(me) |
71 | returns Face from TopoDS |
72 | is static; |
73 | |
74 | PerformWithCorrection( me : in out) |
75 | ---Purpose: Evaluate all the faces limited by the set of Wires. |
76 | is static private; |
77 | |
78 | fields |
79 | |
80 | myDone : Boolean from Standard; |
81 | modeProj : Boolean from Standard; |
82 | myFace : Face from TopoDS; |
83 | wires : ListOfShape from TopTools; |
84 | faces : ListOfShape from TopTools; |
85 | |
86 | myCorrection : Boolean from Standard; |
87 | keyIsIn : DataMapOfShapeListOfShape from TopTools; |
88 | keyContains : DataMapOfShapeListOfShape from TopTools; |
89 | |
90 | end FaceRestrictor; |
91 | |