0023952: Improving thread-safety of intersections, approximations and other modeling...
[occt.git] / src / IntWalk / IntWalk_IWalking.lxx
CommitLineData
b311480e 1// Copyright (c) 1995-1999 Matra Datavision
2// Copyright (c) 1999-2012 OPEN CASCADE SAS
3//
4// The content of this file is subject to the Open CASCADE Technology Public
5// License Version 6.5 (the "License"). You may not use the content of this file
6// except in compliance with the License. Please obtain a copy of the License
7// at http://www.opencascade.org and read it completely before using this file.
8//
9// The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
10// main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
11//
12// The Original Code and all software distributed under the License is
13// distributed on an "AS IS" basis, without warranty of any kind, and the
14// Initial Developer hereby disclaims all such warranties, including without
15// limitation, any warranties of merchantability, fitness for a particular
16// purpose or non-infringement. Please see the License for the specific terms
17// and conditions governing the rights and limitations under the License.
18
7fd59977 19#include <StdFail_NotDone.hxx>
20
21#include IntWalk_TheIWLine_hxx
22
23inline void IntWalk_IWalking::SetTolerance(const Standard_Real Epsilon,
24 const Standard_Real Deflection,
25 const Standard_Real Increment )
26{
27 fleche = Deflection;
28 pas = Increment;
29 epsilon = Epsilon*Epsilon;
30}
31
32
33inline Standard_Boolean IntWalk_IWalking::IsDone() const
34{
35 return done;
36}
37
38inline Standard_Integer IntWalk_IWalking::NbLines() const
39{
40 if(!done) StdFail_NotDone::Raise();
41 return lines.Length();
42}
43
44inline const Handle(IntWalk_TheIWLine)& IntWalk_IWalking::Value
45 (const Standard_Integer Index) const
46{
47 if(!done) StdFail_NotDone::Raise();
48 return lines.Value(Index);
49}
50
51inline Standard_Integer IntWalk_IWalking::NbSinglePnts() const
52{
53 if(!done) StdFail_NotDone::Raise();
54 return seqSingle.Length();
55}
56
57inline const ThePointOfPath& IntWalk_IWalking::SinglePnt
58 (const Standard_Integer Index) const
59{
60 if(!done) StdFail_NotDone::Raise();
61 return seqSingle.Value(Index);
62}
63
64
65
66