b311480e |
1 | -- Created on: 1993-07-21 |
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 | deferred class MakeShape from BRepLib inherits Command from BRepLib |
24 | |
25 | ---Purpose: This is the root class for all shape |
26 | -- constructions. It stores the result. |
27 | -- |
28 | -- It provides deferred methods to trace the history |
29 | -- of sub-shapes. |
30 | |
31 | uses |
32 | Shape from TopoDS, |
33 | Face from TopoDS, |
34 | Edge from TopoDS, |
35 | ShapeModification from BRepLib, |
36 | ListOfShape from TopTools |
37 | |
38 | |
39 | raises |
40 | NotDone from StdFail |
41 | |
42 | is |
43 | Initialize; |
44 | |
45 | Build(me : in out); |
46 | ---Purpose: This is called by Shape(). It does nothing but |
47 | -- may be redefined. |
48 | ---Level: Public |
49 | |
50 | Shape(me) returns Shape from TopoDS |
51 | ---C++: return const & |
52 | ---C++: alias "Standard_EXPORT operator TopoDS_Shape() const;" |
53 | ---Level: Public |
54 | raises |
55 | NotDone from StdFail |
56 | is static; |
57 | |
58 | |
59 | ----------------------------------------------------------- |
60 | --- the following methods do nothing and must be redefined |
61 | --- for faces creations. |
62 | |
63 | FaceStatus(me; F: Face from TopoDS) |
64 | ---Purpose: returns the status of the Face after |
65 | -- the shape creation. |
66 | ---Level: Public |
67 | returns ShapeModification from BRepLib |
68 | is virtual; |
69 | |
70 | |
71 | HasDescendants(me; F: Face from TopoDS) |
72 | ---Purpose: Returns True if the Face generates new topology. |
73 | ---Level: Public |
74 | returns Boolean from Standard |
75 | is virtual; |
76 | |
77 | |
78 | DescendantFaces(me: in out; F: Face from TopoDS) |
79 | ---Purpose: returns the list of generated Faces. |
80 | ---C++: return const & |
81 | ---Level: Public |
82 | returns ListOfShape from TopTools |
83 | is virtual; |
84 | |
85 | |
86 | NbSurfaces(me) |
87 | ---Purpose: returns the number of surfaces |
88 | -- after the shape creation. |
89 | ---Level: Public |
90 | returns Integer from Standard |
91 | is virtual; |
92 | |
93 | |
94 | NewFaces(me: in out; I: Integer from Standard) |
95 | ---Purpose: Return the faces created for surface I. |
96 | ---C++: return const & |
97 | ---Level: Public |
98 | returns ListOfShape from TopTools |
99 | is virtual; |
100 | |
101 | |
102 | FacesFromEdges(me: in out; E: Edge from TopoDS) |
103 | ---Purpose: returns a list of the created faces |
104 | -- from the edge <E>. |
105 | ---C++: return const & |
106 | ---Level: Public |
107 | returns ListOfShape from TopTools |
108 | is virtual; |
109 | |
110 | |
111 | fields |
112 | |
113 | myShape : Shape from TopoDS is protected; |
114 | myGenFaces: ListOfShape from TopTools is protected; |
115 | myNewFaces: ListOfShape from TopTools is protected; |
116 | myEdgFaces: ListOfShape from TopTools is protected; |
117 | |
118 | end MakeShape; |