1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 // This file is part of Open CASCADE Technology software library.
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
14 //:pdn 05.01.99: renaming method ...Little to ...Small
15 #include <ShapeExtend.hxx>
16 #include <ShapeExtend_WireData.hxx>
19 //=======================================================================
22 //=======================================================================
24 inline Standard_Boolean ShapeAnalysis_Wire::IsLoaded() const
26 return ! myWire.IsNull() && myWire->NbEdges() >0;
30 //=======================================================================
33 //=======================================================================
35 inline Standard_Boolean ShapeAnalysis_Wire::IsReady() const
37 return IsLoaded() && !myFace.IsNull();
41 //=======================================================================
42 //function : Precision
44 //=======================================================================
46 inline Standard_Real ShapeAnalysis_Wire::Precision() const
52 //=======================================================================
55 //=======================================================================
57 inline const Handle(ShapeExtend_WireData)& ShapeAnalysis_Wire::WireData() const
63 //=======================================================================
66 //=======================================================================
68 inline Standard_Integer ShapeAnalysis_Wire::NbEdges() const
70 return myWire.IsNull() ? 0 : myWire->NbEdges();
74 //=======================================================================
77 //=======================================================================
79 inline const TopoDS_Face& ShapeAnalysis_Wire::Face() const
85 //=======================================================================
88 //=======================================================================
90 inline const Handle(ShapeAnalysis_Surface)& ShapeAnalysis_Wire::Surface() const
96 //=======================================================================
97 //function : StatusOrder
99 //=======================================================================
101 inline Standard_Boolean ShapeAnalysis_Wire::StatusOrder (const ShapeExtend_Status Status) const
103 return ShapeExtend::DecodeStatus ( myStatusOrder, Status );
107 //=======================================================================
108 //function : StatusConnected
110 //=======================================================================
112 inline Standard_Boolean ShapeAnalysis_Wire::StatusConnected (const ShapeExtend_Status Status) const
114 return ShapeExtend::DecodeStatus ( myStatusConnected, Status );
118 //=======================================================================
119 //function : StatusEdgeCurves
121 //=======================================================================
123 inline Standard_Boolean ShapeAnalysis_Wire::StatusEdgeCurves (const ShapeExtend_Status Status) const
125 return ShapeExtend::DecodeStatus ( myStatusEdgeCurves, Status );
129 //=======================================================================
130 //function : StatusDegenerated
132 //=======================================================================
134 inline Standard_Boolean ShapeAnalysis_Wire::StatusDegenerated (const ShapeExtend_Status Status) const
136 return ShapeExtend::DecodeStatus ( myStatusDegenerated, Status );
140 //=======================================================================
141 //function : StatusClosed
143 //=======================================================================
145 inline Standard_Boolean ShapeAnalysis_Wire::StatusClosed (const ShapeExtend_Status Status) const
147 return ShapeExtend::DecodeStatus ( myStatusClosed, Status );
151 //=======================================================================
152 //function : StatusSmall
154 //=======================================================================
156 inline Standard_Boolean ShapeAnalysis_Wire::StatusSmall (const ShapeExtend_Status Status) const
158 return ShapeExtend::DecodeStatus ( myStatusSmall, Status );
162 //=======================================================================
163 //function : StatusSelfIntersection
165 //=======================================================================
167 inline Standard_Boolean ShapeAnalysis_Wire::StatusSelfIntersection (const ShapeExtend_Status Status) const
169 return ShapeExtend::DecodeStatus ( myStatusSelfIntersection, Status );
173 //=======================================================================
174 //function : StatusLacking
176 //=======================================================================
178 inline Standard_Boolean ShapeAnalysis_Wire::StatusLacking (const ShapeExtend_Status Status) const
180 return ShapeExtend::DecodeStatus ( myStatusLacking, Status );
184 //=======================================================================
185 //function : StatusGaps3d
187 //=======================================================================
189 inline Standard_Boolean ShapeAnalysis_Wire::StatusGaps3d(const ShapeExtend_Status Status) const
191 return ShapeExtend::DecodeStatus ( myStatusGaps3d, Status );
195 //=======================================================================
196 //function : StatusGaps2d
198 //=======================================================================
200 inline Standard_Boolean ShapeAnalysis_Wire::StatusGaps2d(const ShapeExtend_Status Status) const
202 return ShapeExtend::DecodeStatus ( myStatusGaps2d, Status );
206 //=======================================================================
207 //function : StatusCurveGaps
209 //=======================================================================
211 inline Standard_Boolean ShapeAnalysis_Wire::StatusCurveGaps(const ShapeExtend_Status Status) const
213 return ShapeExtend::DecodeStatus ( myStatusCurveGaps, Status );
216 //=======================================================================
217 //function : StatusLoop
219 //=======================================================================
221 inline Standard_Boolean ShapeAnalysis_Wire::StatusLoop(const ShapeExtend_Status Status) const
223 return ShapeExtend::DecodeStatus ( myStatusLoop, Status );
226 //=======================================================================
229 //=======================================================================
231 inline Standard_Boolean ShapeAnalysis_Wire::LastCheckStatus (const ShapeExtend_Status Status) const
233 return ShapeExtend::DecodeStatus ( myStatus, Status );
237 //=======================================================================
238 //function : MinDistance3d
240 //=======================================================================
242 inline Standard_Real ShapeAnalysis_Wire::MinDistance3d() const
248 //=======================================================================
249 //function : MinDistance2d
251 //=======================================================================
253 inline Standard_Real ShapeAnalysis_Wire::MinDistance2d() const
259 //=======================================================================
260 //function : MaxDistance3d
262 //=======================================================================
264 inline Standard_Real ShapeAnalysis_Wire::MaxDistance3d() const
270 //=======================================================================
271 //function : MaxDistance2d
273 //=======================================================================
275 inline Standard_Real ShapeAnalysis_Wire::MaxDistance2d() const