0025455: fixshape works at the second attempt
[occt.git] / src / ShapeFix / ShapeFix_Shape.cdl
CommitLineData
b311480e 1-- Created on: 1998-08-12
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
17class Shape from ShapeFix inherits Root from ShapeFix
18
19 ---Purpose: Fixing shape in general
20
21uses
22
23 Shape from TopoDS,
24 Solid from ShapeFix,
25 Shell from ShapeFix,
26 Face from ShapeFix,
27 Wire from ShapeFix,
28 Edge from ShapeFix,
29 Status from ShapeExtend,
30 MapOfShape from TopTools,
b485ee79
KD
31 BasicMsgRegistrator from ShapeExtend,
32 ProgressIndicator from Message
33
7fd59977 34is
35
36 Create returns Shape from ShapeFix;
37 ---Purpose: Empty Constructor
38
39 Create (shape: Shape from TopoDS)
40 returns Shape from ShapeFix;
41 ---Purpose: Initislises by shape.
42
43 Init (me: mutable; shape: Shape from TopoDS);
44 ---Purpose: Initislises by shape.
45
b485ee79
KD
46 Perform (me : mutable;
47 theProgress : ProgressIndicator from Message = 0) returns Boolean;
7fd59977 48 ---Purpose: Iterates on sub- shape and performs fixes
49
b485ee79
KD
50 SameParameter (me : mutable;
51 shape : Shape from TopoDS;
52 enforce : Boolean;
53 theProgress : ProgressIndicator from Message = 0) is protected;
54 ---Purpose: Fixes same parameterization problem on the passed shape
55 -- by updating tolerances of the corresponding topological
56 -- entitites.
7fd59977 57
58 Shape (me) returns Shape from TopoDS;
59 ---Purpose: Returns resulting shape
60
61 FixSolidTool (me) returns Solid from ShapeFix;
62 ---Purpose: Returns tool for fixing solids.
63 ---C++:inline
64
65 FixShellTool (me) returns Shell from ShapeFix;
66 ---Purpose: Returns tool for fixing shells.
67 ---C++:inline
68
69 FixFaceTool (me) returns Face from ShapeFix;
70 ---Purpose: Returns tool for fixing faces.
71 ---C++:inline
72
73 FixWireTool (me) returns Wire from ShapeFix;
74 ---Purpose: Returns tool for fixing wires.
75 ---C++:inline
76
77 FixEdgeTool (me) returns Edge from ShapeFix;
78 ---Purpose: Returns tool for fixing edges.
79 ---C++:inline
80
81 Status (me; status : Status from ShapeExtend) returns Boolean;
82 ---Purpose: Returns the status of the last Fix.
83 -- This can be a combination of the following flags:
84 -- ShapeExtend_DONE1: some free edges were fixed
85 -- ShapeExtend_DONE2: some free wires were fixed
86 -- ShapeExtend_DONE3: some free faces were fixed
87 -- ShapeExtend_DONE4: some free shells were fixed
88 -- ShapeExtend_DONE5: some free solids were fixed
89 -- ShapeExtend_DONE6: shapes in compound(s) were fixed
90
91 SetMsgRegistrator (me: mutable; msgreg: BasicMsgRegistrator from ShapeExtend) is redefined;
92 ---Purpose: Sets message registrator
93
94 SetPrecision (me: mutable; preci: Real) is redefined;
95 ---Purpose: Sets basic precision value (also to FixSolidTool)
96
97 SetMinTolerance (me: mutable; mintol: Real) is redefined;
98 ---Purpose: Sets minimal allowed tolerance (also to FixSolidTool)
99
100 SetMaxTolerance (me: mutable; maxtol: Real) is redefined;
101 ---Purpose: Sets maximal allowed tolerance (also to FixSolidTool)
102
103 FixSolidMode (me: mutable) returns Integer;
104 ---C++: return &
105 ---C++: inline
106 ---Purpose: Returns (modifiable) the mode for applying fixes of
107 -- ShapeFix_Solid, by default True.
108
109 FixFreeShellMode (me: mutable) returns Integer;
110 ---C++: return &
111 ---C++: inline
112 ---Purpose: Returns (modifiable) the mode for applying fixes of
113 -- ShapeFix_Shell, by default True.
114
115 FixFreeFaceMode (me: mutable) returns Integer;
116 ---C++: return &
117 ---C++: inline
118 ---Purpose: Returns (modifiable) the mode for applying fixes of
119 -- ShapeFix_Face, by default True.
120
121 FixFreeWireMode (me: mutable) returns Integer;
122 ---C++: return &
123 ---C++: inline
124 ---Purpose: Returns (modifiable) the mode for applying fixes of
125 -- ShapeFix_Wire, by default True.
126
127 FixSameParameterMode (me: mutable) returns Integer;
128 ---C++: return &
129 ---C++: inline
130 ---Purpose: Returns (modifiable) the mode for applying
131 -- ShapeFix::SameParameter after all fixes, by default True.
132
133 FixVertexPositionMode (me: mutable) returns Integer;
134 ---C++: return &
135 ---C++: inline
136 ---Purpose: Returns (modifiable) the mode for applying
137 -- ShapeFix::FixVertexPosition before all fixes, by default False.
34e923b5 138
139 FixVertexTolMode (me: mutable) returns Integer;
140 ---C++: return &
141 ---C++: inline
142 ---Purpose: Returns (modifiable) the mode for fixing tolerances of vertices on whole shape
143 -- after performing all fixes
7fd59977 144fields
145
146 myResult : Shape from TopoDS is protected;
147 myFixSolid : Solid from ShapeFix is protected;
148 myMapFixingShape : MapOfShape from TopTools is protected;
149
150 myFixSolidMode : Integer is protected;
151 myFixShellMode : Integer is protected;
152 myFixFaceMode : Integer is protected;
153 myFixWireMode : Integer is protected;
154 myFixSameParameterMode : Integer is protected;
155 myFixVertexPositionMode : Integer is protected;
34e923b5 156 myFixVertexTolMode : Integer is protected;
7fd59977 157 myStatus : Integer is protected;
158
159end Shape;