7fd59977 |
1 | -- File: PConic.cdl |
2 | -- Created: Wed Mar 4 14:28:50 1992 |
3 | -- Author: Laurent BUCHARD |
4 | -- <lbr@phobox> |
5 | ---Copyright: Matra Datavision 1992 |
6 | |
7 | |
8 | class PConic from IntCurve |
9 | |
10 | ---Purpose: This class represents a conic from gp as a |
11 | -- parametric curve ( in order to be used by the |
12 | -- class PConicTool from IntCurve). |
13 | |
14 | ---Level: Internal |
15 | |
16 | uses Elips2d from gp, |
17 | Lin2d from gp, |
18 | Circ2d from gp, |
19 | Parab2d from gp, |
20 | Hypr2d from gp, |
21 | Ax22d from gp, |
22 | CurveType from GeomAbs |
23 | |
24 | is |
25 | |
26 | Create(PC: PConic from IntCurve) returns PConic from IntCurve; |
27 | |
28 | Create(E: Elips2d from gp) returns PConic from IntCurve; |
29 | |
30 | Create(C: Circ2d from gp) returns PConic from IntCurve; |
31 | |
32 | Create(P: Parab2d from gp) returns PConic from IntCurve; |
33 | |
34 | Create(H: Hypr2d from gp) returns PConic from IntCurve; |
35 | |
36 | Create(L: Lin2d from gp) returns PConic from IntCurve; |
37 | |
38 | |
39 | SetEpsX(me: in out; EpsDist: Real from Standard) is static; |
40 | ---Purpose: EpsX is a internal tolerance used in math |
41 | -- algorithms, usually about 1e-10 |
42 | -- (See FunctionAllRoots for more details) |
43 | |
44 | SetAccuracy(me: in out; Nb: Integer from Standard) is static; |
45 | ---Purpose: Accuracy is the number of samples used to |
46 | -- approximate the parametric curve on its domain. |
47 | |
48 | Accuracy(me) |
49 | ---C++: inline |
50 | returns Integer from Standard is static; |
51 | |
52 | EpsX(me) |
53 | ---C++: inline |
54 | returns Real from Standard is static; |
55 | |
56 | TypeCurve(me) |
57 | ---Purpose: The Conics are manipulated as objects which only |
58 | -- depend on three parameters : Axis and two Real from Standards. |
59 | -- Type Curve is used to select the correct Conic. |
60 | ---C++: inline |
61 | returns CurveType from GeomAbs |
62 | is static; |
63 | |
64 | Axis2(me) |
65 | ---C++: inline |
66 | ---C++: return const & |
67 | returns Ax22d from gp |
68 | is static; |
69 | |
70 | Param1(me) |
71 | ---C++: inline |
72 | returns Real from Standard is static; |
73 | |
74 | Param2(me) |
75 | ---C++: inline |
76 | returns Real from Standard is static; |
77 | |
78 | fields |
79 | |
80 | axe : Ax22d from gp; |
81 | prm1 : Real from Standard; |
82 | prm2 : Real from Standard; |
83 | |
84 | TheEpsX : Real from Standard; |
85 | TheAccuracy : Integer from Standard; |
86 | type : CurveType from GeomAbs; |
87 | |
88 | end PConic; |
89 | |
90 | |
91 | |
92 | |
93 | |