42cf5bc1 |
1 | // Created on: 1992-06-04 |
2 | // Created by: Jacques GOUSSARD |
3 | // Copyright (c) 1992-1999 Matra Datavision |
4 | // Copyright (c) 1999-2014 OPEN CASCADE SAS |
5 | // |
6 | // This file is part of Open CASCADE Technology software library. |
7 | // |
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. |
13 | // |
14 | // Alternatively, this file may be used under the terms of Open CASCADE |
15 | // commercial license or contractual agreement. |
16 | |
17 | #ifndef _Geom2dInt_TheIntConicCurveOfGInter_HeaderFile |
18 | #define _Geom2dInt_TheIntConicCurveOfGInter_HeaderFile |
19 | |
20 | #include <Standard.hxx> |
21 | #include <Standard_DefineAlloc.hxx> |
22 | #include <Standard_Handle.hxx> |
23 | |
24 | #include <IntRes2d_Intersection.hxx> |
25 | #include <Standard_Real.hxx> |
26 | class IntCurve_IConicTool; |
27 | class Adaptor2d_Curve2d; |
28 | class Geom2dInt_Geom2dCurveTool; |
29 | class Geom2dInt_TheProjPCurOfGInter; |
30 | class Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter; |
31 | class Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter; |
32 | class gp_Lin2d; |
33 | class IntRes2d_Domain; |
34 | class gp_Circ2d; |
35 | class gp_Elips2d; |
36 | class gp_Parab2d; |
37 | class gp_Hypr2d; |
38 | |
39 | |
40 | |
41 | class Geom2dInt_TheIntConicCurveOfGInter : public IntRes2d_Intersection |
42 | { |
43 | public: |
44 | |
45 | DEFINE_STANDARD_ALLOC |
46 | |
47 | |
48 | Geom2dInt_TheIntConicCurveOfGInter(); |
49 | |
50 | Geom2dInt_TheIntConicCurveOfGInter(const gp_Lin2d& L, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
51 | |
52 | Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Circ2d& C, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
53 | |
54 | Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Elips2d& E, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
55 | |
56 | Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Parab2d& Prb, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
57 | |
58 | Standard_EXPORT Geom2dInt_TheIntConicCurveOfGInter(const gp_Hypr2d& H, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
59 | |
60 | void Perform (const gp_Lin2d& L, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
61 | |
62 | void Perform (const gp_Circ2d& C, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
63 | |
64 | void Perform (const gp_Elips2d& E, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
65 | |
66 | void Perform (const gp_Parab2d& Prb, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
67 | |
68 | void Perform (const gp_Hypr2d& H, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
69 | |
70 | |
71 | |
72 | |
73 | protected: |
74 | |
75 | |
76 | |
77 | |
78 | |
79 | private: |
80 | |
81 | |
82 | void Perform (const IntCurve_IConicTool& ICurve, const IntRes2d_Domain& D1, const Adaptor2d_Curve2d& PCurve, const IntRes2d_Domain& D2, const Standard_Real TolConf, const Standard_Real Tol); |
83 | |
84 | |
85 | |
86 | |
87 | }; |
88 | |
89 | #define TheImpTool IntCurve_IConicTool |
90 | #define TheImpTool_hxx <IntCurve_IConicTool.hxx> |
91 | #define ThePCurve Adaptor2d_Curve2d |
92 | #define ThePCurve_hxx <Adaptor2d_Curve2d.hxx> |
93 | #define ThePCurveTool Geom2dInt_Geom2dCurveTool |
94 | #define ThePCurveTool_hxx <Geom2dInt_Geom2dCurveTool.hxx> |
95 | #define TheProjPCur Geom2dInt_TheProjPCurOfGInter |
96 | #define TheProjPCur_hxx <Geom2dInt_TheProjPCurOfGInter.hxx> |
97 | #define IntCurve_TheIntersector Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter |
98 | #define IntCurve_TheIntersector_hxx <Geom2dInt_TheIntersectorOfTheIntConicCurveOfGInter.hxx> |
99 | #define IntCurve_MyImpParToolOfTheIntersector Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter |
100 | #define IntCurve_MyImpParToolOfTheIntersector_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx> |
101 | #define IntCurve_MyImpParToolOfTheIntersector Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter |
102 | #define IntCurve_MyImpParToolOfTheIntersector_hxx <Geom2dInt_MyImpParToolOfTheIntersectorOfTheIntConicCurveOfGInter.hxx> |
103 | #define IntCurve_IntConicCurveGen Geom2dInt_TheIntConicCurveOfGInter |
104 | #define IntCurve_IntConicCurveGen_hxx <Geom2dInt_TheIntConicCurveOfGInter.hxx> |
105 | |
106 | #include <IntCurve_IntConicCurveGen.lxx> |
107 | |
108 | #undef TheImpTool |
109 | #undef TheImpTool_hxx |
110 | #undef ThePCurve |
111 | #undef ThePCurve_hxx |
112 | #undef ThePCurveTool |
113 | #undef ThePCurveTool_hxx |
114 | #undef TheProjPCur |
115 | #undef TheProjPCur_hxx |
116 | #undef IntCurve_TheIntersector |
117 | #undef IntCurve_TheIntersector_hxx |
118 | #undef IntCurve_MyImpParToolOfTheIntersector |
119 | #undef IntCurve_MyImpParToolOfTheIntersector_hxx |
120 | #undef IntCurve_MyImpParToolOfTheIntersector |
121 | #undef IntCurve_MyImpParToolOfTheIntersector_hxx |
122 | #undef IntCurve_IntConicCurveGen |
123 | #undef IntCurve_IntConicCurveGen_hxx |
124 | |
125 | |
126 | |
127 | |
128 | #endif // _Geom2dInt_TheIntConicCurveOfGInter_HeaderFile |