1 // Created on: 1995-07-25
2 // Created by: Modelistation
3 // Copyright (c) 1995-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
6 // This file is part of Open CASCADE Technology software library.
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
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.
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
17 #include<Precision.hxx>
19 //----------------------------------------------------------------------
20 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen () :
21 param1inf(-Precision::Infinite()),
22 param1sup(Precision::Infinite()),
23 param2inf(-Precision::Infinite()),
24 param2sup(Precision::Infinite())
27 //----------------------------------------------------------------------
28 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen(const TheCurve& C,
29 const Standard_Real TolConf,
30 const Standard_Real Tol) :
31 param1inf(-Precision::Infinite()),
32 param1sup(Precision::Infinite()),
33 param2inf(-Precision::Infinite()),
34 param2sup(Precision::Infinite())
36 Perform(C,TolConf,Tol);
38 //----------------------------------------------------------------------
39 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen(const TheCurve& C,
40 const IntRes2d_Domain& D,
41 const Standard_Real TolConf,
42 const Standard_Real Tol) :
43 param1inf(-Precision::Infinite()),
44 param1sup(Precision::Infinite()),
45 param2inf(-Precision::Infinite()),
46 param2sup(Precision::Infinite())
48 Perform(C,D,TolConf,Tol);
50 //----------------------------------------------------------------------
51 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen(const TheCurve& C1,
53 const Standard_Real TolConf,
54 const Standard_Real Tol) :
55 param1inf(-Precision::Infinite()),
56 param1sup(Precision::Infinite()),
57 param2inf(-Precision::Infinite()),
58 param2sup(Precision::Infinite())
60 Perform(C1,C2,TolConf,Tol);
62 //----------------------------------------------------------------------
63 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen (const TheCurve& C1,
64 const IntRes2d_Domain& D1,
66 const Standard_Real TolConf,
67 const Standard_Real Tol) :
68 param1inf(-Precision::Infinite()),
69 param1sup(Precision::Infinite()),
70 param2inf(-Precision::Infinite()),
71 param2sup(Precision::Infinite())
73 Perform(C1,D1,C2,TolConf,Tol);
75 //----------------------------------------------------------------------
76 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen (const TheCurve& C1,
78 const IntRes2d_Domain& D2,
79 const Standard_Real TolConf,
80 const Standard_Real Tol) :
81 param1inf(-Precision::Infinite()),
82 param1sup(Precision::Infinite()),
83 param2inf(-Precision::Infinite()),
84 param2sup(Precision::Infinite())
86 Perform(C1,C2,D2,TolConf,Tol);
88 //----------------------------------------------------------------------
89 inline IntCurve_IntCurveCurveGen::IntCurve_IntCurveCurveGen (const TheCurve& C1,
90 const IntRes2d_Domain& D1,
92 const IntRes2d_Domain& D2,
93 const Standard_Real TolConf,
94 const Standard_Real Tol) :
95 param1inf(-Precision::Infinite()),
96 param1sup(Precision::Infinite()),
97 param2inf(-Precision::Infinite()),
98 param2sup(Precision::Infinite())
100 Perform(C1,D1,C2,D2,TolConf,Tol);
102 //---------------------------------------------------------------------
103 inline void IntCurve_IntCurveCurveGen::Perform(const TheCurve& C1,
105 const Standard_Real TolConf,
106 const Standard_Real Tol) {
107 Standard_Real TolDomain = Tol;
108 if(TolConf>TolDomain) { TolDomain = TolConf; }
109 Perform(C1,ComputeDomain(C1,TolDomain),C2,ComputeDomain(C2,TolDomain),TolConf,Tol);
111 //----------------------------------------------------------------------
112 inline void IntCurve_IntCurveCurveGen::Perform(const TheCurve& C1,
113 const IntRes2d_Domain& D1,
115 const Standard_Real TolConf,
116 const Standard_Real Tol) {
117 Standard_Real TolDomain = Tol;
118 if(TolConf>TolDomain) { TolDomain = TolConf; }
119 Perform(C1,D1,C2,ComputeDomain(C2,TolDomain),TolConf,Tol);
121 //----------------------------------------------------------------------
122 inline void IntCurve_IntCurveCurveGen::Perform(const TheCurve& C1,
124 const IntRes2d_Domain& D2,
125 const Standard_Real TolConf,
126 const Standard_Real Tol) {
127 Standard_Real TolDomain = Tol;
128 if(TolConf>TolDomain) { TolDomain = TolConf; }
129 Perform(C1,ComputeDomain(C1,TolDomain),C2,D2,TolConf,Tol);