b311480e |
1 | -- Created on: 1998-07-21 |
2 | -- Created by: data exchange team |
3 | -- Copyright (c) 1998-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
8 | -- This library is free software; you can redistribute it and/or modify it under |
9 | -- the terms of the GNU Lesser General Public License version 2.1 as published |
973c2be1 |
10 | -- by the Free Software Foundation, with special exception defined in the file |
11 | -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT |
12 | -- distribution for complete text of the license and disclaimer of any warranty. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | package ShapeExtend |
18 | |
19 | ---Purpose: This package provides general tools and data structures common |
20 | -- for other packages in SHAPEWORKS and extending CAS.CADE |
21 | -- structures. |
22 | -- The following items are provided by this package: |
23 | -- - enumeration Status used for coding status flags in methods |
24 | -- inside the SHAPEWORKS |
25 | -- - enumeration Parametrisation used for setting global parametrisation |
26 | -- on the composite surface |
27 | -- - class CompositeSurface representing a composite surface |
28 | -- made of a grid of surface patches |
29 | -- - class WireData representing a wire in the form of ordered |
30 | -- list of edges |
31 | -- - class MsgRegistrator for attaching messages to the objects |
32 | -- - tools for exploring the shapes |
33 | -- - tools for creating new shapes. |
34 | uses |
35 | |
36 | TCollection, |
37 | gp, |
38 | Geom, |
39 | GeomAbs, |
40 | TColStd, |
41 | TColGeom, |
42 | TopAbs, |
43 | TopoDS, |
44 | TopTools, |
45 | Message |
46 | |
47 | is |
48 | |
49 | enumeration Status is |
50 | ---Purpose: This enumeration is used in |
51 | -- ShapeHealing toolkit for representing flags in the |
52 | -- return statuses of class methods. |
53 | -- The status is a field of the class which is set by one or |
54 | -- several methods of that class. |
55 | -- It is used for reporting about errors and other situations |
56 | -- encountered during execution of the method. |
57 | -- There are defined 8 values for DONE and 8 for FAIL flags: |
58 | -- ShapeExtend_DONE1 ... ShapeExtend_DONE8, |
59 | -- ShapeExtend_FAIL1 ... ShapeExtend_FAIL8 |
60 | -- and also enumerations for representing combinations of flags: |
61 | -- ShapeExtend_OK - no flags at all, |
62 | -- ShapeExtend_DONE - any of flags DONEi, |
63 | -- ShapeExtend_FAIL - any of flags FAILi. |
64 | -- The class that uses statuses provides a method(s) which |
65 | -- answers whether the flag corresponding to a given |
66 | -- enumerative value is (are) set: |
67 | -- Standard_Boolean Status(const ShapeExtend_Status test); |
68 | -- Note that status can have several flags set simultaneously. |
69 | -- Status(ShapeExtend_OK) gives True when no flags are set. |
70 | OK, -- Nothing done, everything OK |
71 | DONE1, -- Something was done, case 1 |
72 | DONE2, -- Something was done, case 2 |
73 | DONE3, -- Something was done, case 3 |
74 | DONE4, -- Something was done, case 4 |
75 | DONE5, -- Something was done, case 5 |
76 | DONE6, -- Something was done, case 6 |
77 | DONE7, -- Something was done, case 7 |
78 | DONE8, -- Something was done, case 8 |
79 | DONE, -- Something was done (any of DONE#) |
80 | FAIL1, -- The method failed, case 1 |
81 | FAIL2, -- The method failed, case 2 |
82 | FAIL3, -- The method failed, case 3 |
83 | FAIL4, -- The method failed, case 4 |
84 | FAIL5, -- The method failed, case 5 |
85 | FAIL6, -- The method failed, case 6 |
86 | FAIL7, -- The method failed, case 7 |
87 | FAIL8, -- The method failed, case 8 |
88 | FAIL -- The mathod failed (any of FAIL# occured) |
89 | end Status; |
90 | |
91 | enumeration Parametrisation is |
92 | ---Purpose: Defines kind of global parametrisation on the composite surface |
93 | Natural, -- each patch of the 1st row and column adds its range, Ui+1 = Ui + URange(i,1), etc. |
94 | Uniform, -- each patch gives range 1.: Ui = i-1, Vj = j-1 |
95 | Unitary -- uniform parametrisation with global range [0,1] |
96 | end Parametrisation; |
97 | |
98 | deferred class ComplexCurve; |
99 | |
100 | class CompositeSurface; |
7fd59977 |
101 | |
102 | class WireData; |
ff8178ef |
103 | |
7fd59977 |
104 | class BasicMsgRegistrator; |
ff8178ef |
105 | |
7fd59977 |
106 | class MsgRegistrator; |
ff8178ef |
107 | |
7fd59977 |
108 | class Explorer; |
ff8178ef |
109 | |
df8d3970 |
110 | imported DataMapOfShapeListOfMsg; |
111 | |
112 | imported DataMapIteratorOfDataMapOfShapeListOfMsg; |
113 | |
114 | imported DataMapOfTransientListOfMsg; |
7fd59977 |
115 | |
df8d3970 |
116 | imported DataMapIteratorOfDataMapOfTransientListOfMsg; |
7fd59977 |
117 | |
118 | Init; |
119 | ---Purpose: Inits using of ShapeExtend. |
120 | -- Currently, loads messages output by ShapeHealing algorithms. |
121 | |
122 | EncodeStatus ( status: Status from ShapeExtend ) returns Integer; |
123 | ---Purpose: Encodes status (enumeration) to a bit flag |
124 | |
125 | DecodeStatus ( flag: Integer; status: Status from ShapeExtend ) returns Boolean; |
126 | ---Purpose: Tells if a bit flag contains bit corresponding to enumerated status |
127 | |
128 | end ShapeExtend; |