0033661: Data Exchange, Step Import - Tessellated GDTs are not imported
[occt.git] / src / IntCurve / IntCurve_IntConicCurveGen.gxx
1 // Created on: 1992-06-03
2 // Created by: Laurent BUCHARD
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 #include IntCurve_TheIntersector_hxx
18
19 #include <IntRes2d_Domain.hxx>
20 #include <IntCurve_IConicTool.hxx>
21
22 //--------------------------------------------------------------------------------
23 IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Circ2d& C,
24                                                       const IntRes2d_Domain& D1,
25                                                       const ThePCurve& PCurve,
26                                                       const IntRes2d_Domain& D2,
27                                                       const Standard_Real TolConf,
28                                                       const Standard_Real Tol) {
29   if(!D1.IsClosed()) {
30     IntRes2d_Domain D(D1);
31     D.SetEquivalentParameters(D1.FirstParameter(),D1.FirstParameter()+M_PI+M_PI);
32     Perform(IntCurve_IConicTool(C),D,PCurve,D2,TolConf,Tol);
33     //-- throw Standard_ConstructionError("Domaine incorrect");
34   }
35   else { 
36     Perform(IntCurve_IConicTool(C),D1,PCurve,D2,TolConf,Tol);
37   }
38 }
39 //--------------------------------------------------------------------------------
40 IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Elips2d& E,
41                                                       const IntRes2d_Domain& D1,
42                                                       const ThePCurve& PCurve,
43                                                       const IntRes2d_Domain& D2,
44                                                       const Standard_Real TolConf,
45                                                       const Standard_Real Tol) {
46   if(!D1.IsClosed()) {
47     IntRes2d_Domain D(D1);
48     D.SetEquivalentParameters(D1.FirstParameter(),D1.FirstParameter()+M_PI+M_PI);
49     Perform(IntCurve_IConicTool(E),D,PCurve,D2,TolConf,Tol);
50     //-- throw Standard_ConstructionError("Domaine incorrect");
51   }
52   else { 
53     Perform(IntCurve_IConicTool(E),D1,PCurve,D2,TolConf,Tol);
54   }
55 }
56 //--------------------------------------------------------------------------------
57 IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Parab2d& Prb,
58                                                       const IntRes2d_Domain& D1,
59                                                       const ThePCurve& PCurve,
60                                                       const IntRes2d_Domain& D2,
61                                                       const Standard_Real TolConf,
62                                                       const Standard_Real Tol) {
63   
64   Perform(IntCurve_IConicTool(Prb),D1,PCurve,D2,TolConf,Tol);
65 }
66 //--------------------------------------------------------------------------------
67 IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Hypr2d& H,
68                                                       const IntRes2d_Domain& D1,
69                                                       const ThePCurve& PCurve,
70                                                       const IntRes2d_Domain& D2,
71                                                       const Standard_Real TolConf,
72                                                       const Standard_Real Tol) {
73   
74   Perform(IntCurve_IConicTool(H),D1,PCurve,D2,TolConf,Tol);
75 }
76 //--------------------------------------------------------------------------------
77
78