summaryrefslogtreecommitdiff
path: root/inc/IntCurve_IntConicCurveGen.gxx
blob: 02581b28035a794ad01864a12f6c782f40c7106c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
// File:	IntCurve_IntConicCurveGen.gxx
// Created:	Wed Jun  3 14:02:17 1992
// Author:	Laurent BUCHARD
//		<lbr@topsn3>

#include IntCurve_TheIntersector_hxx

#include <IntRes2d_Domain.hxx>
#include <IntCurve_IConicTool.hxx>

//--------------------------------------------------------------------------------
IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Circ2d& C,
						      const IntRes2d_Domain& D1,
						      const ThePCurve& PCurve,
						      const IntRes2d_Domain& D2,
						      const Standard_Real TolConf,
						      const Standard_Real Tol) {
  if(!D1.IsClosed()) {
    IntRes2d_Domain D(D1);
    D.SetEquivalentParameters(D1.FirstParameter(),D1.FirstParameter()+PI+PI);
    Perform(IntCurve_IConicTool(C),D,PCurve,D2,TolConf,Tol);
    //-- Standard_ConstructionError::Raise("Domaine incorrect");
  }
  else { 
    Perform(IntCurve_IConicTool(C),D1,PCurve,D2,TolConf,Tol);
  }
}
//--------------------------------------------------------------------------------
IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Elips2d& E,
						      const IntRes2d_Domain& D1,
						      const ThePCurve& PCurve,
						      const IntRes2d_Domain& D2,
						      const Standard_Real TolConf,
						      const Standard_Real Tol) {
  if(!D1.IsClosed()) {
    IntRes2d_Domain D(D1);
    D.SetEquivalentParameters(D1.FirstParameter(),D1.FirstParameter()+PI+PI);
    Perform(IntCurve_IConicTool(E),D,PCurve,D2,TolConf,Tol);
    //-- Standard_ConstructionError::Raise("Domaine incorrect");
  }
  else { 
    Perform(IntCurve_IConicTool(E),D1,PCurve,D2,TolConf,Tol);
  }
}
//--------------------------------------------------------------------------------
IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Parab2d& Prb,
						      const IntRes2d_Domain& D1,
						      const ThePCurve& PCurve,
						      const IntRes2d_Domain& D2,
						      const Standard_Real TolConf,
						      const Standard_Real Tol) {
  
  Perform(IntCurve_IConicTool(Prb),D1,PCurve,D2,TolConf,Tol);
}
//--------------------------------------------------------------------------------
IntCurve_IntConicCurveGen::IntCurve_IntConicCurveGen (const gp_Hypr2d& H,
						      const IntRes2d_Domain& D1,
						      const ThePCurve& PCurve,
						      const IntRes2d_Domain& D2,
						      const Standard_Real TolConf,
						      const Standard_Real Tol) {
  
  Perform(IntCurve_IConicTool(H),D1,PCurve,D2,TolConf,Tol);
}
//--------------------------------------------------------------------------------