4e57c75e |
1 | -- Created by: Peter KURNEV |
2 | -- Copyright (c) 2010-2012 OPEN CASCADE SAS |
3 | -- Copyright (c) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE |
4 | -- Copyright (c) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, |
5 | -- EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS |
6 | -- |
7 | -- The content of this file is subject to the Open CASCADE Technology Public |
8 | -- License Version 6.5 (the "License"). You may not use the content of this file |
9 | -- except in compliance with the License. Please obtain a copy of the License |
10 | -- at http://www.opencascade.org and read it completely before using this file. |
11 | -- |
12 | -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its |
13 | -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. |
14 | -- |
15 | -- The Original Code and all software distributed under the License is |
16 | -- distributed on an "AS IS" basis, without warranty of any kind, and the |
17 | -- Initial Developer hereby disclaims all such warranties, including without |
18 | -- limitation, any warranties of merchantability, fitness for a particular |
19 | -- purpose or non-infringement. Please see the License for the specific terms |
20 | -- and conditions governing the rights and limitations under the License. |
21 | |
22 | class BuilderSolid from BOPAlgo |
23 | inherits BuilderArea from BOPAlgo |
24 | |
25 | ---Purpose: The algorithm to build solids from set of faces |
26 | |
27 | uses |
28 | BaseAllocator from BOPCol |
29 | |
30 | --raises |
31 | |
32 | is |
33 | Create |
34 | returns BuilderSolid from BOPAlgo; |
35 | ---C++: alias "Standard_EXPORT virtual ~BOPAlgo_BuilderSolid();" |
36 | |
37 | |
38 | Create (theAllocator: BaseAllocator from BOPCol) |
39 | returns BuilderSolid from BOPAlgo; |
40 | |
41 | Perform(me:out) |
42 | ---Purpose: Performs the algorithm |
43 | is redefined; |
44 | |
45 | PerformShapesToAvoid(me:out) |
46 | ---Purpose: Collect the faces that |
47 | -- a) are internal |
48 | -- b) are the same and have different orientation |
49 | is redefined protected; |
50 | |
51 | PerformLoops(me:out) |
52 | ---Purpose: Build draft shells |
53 | -- a)myLoops - draft shells that consist of |
54 | -- boundary faces |
55 | -- b)myLoopsInternal - draft shells that contains |
56 | -- inner faces |
57 | is redefined protected; |
58 | |
59 | PerformAreas(me:out) |
60 | ---Purpose: Build draft solids that contains boundary faces |
61 | is redefined protected; |
62 | |
63 | PerformInternalShapes(me:out) |
64 | ---Purpose: Build finalized solids with internal shells |
65 | is redefined protected; |
66 | |
67 | --fields |
68 | |
69 | end BuilderSolid; |