b311480e |
1 | -- Created on: 1993-08-11 |
2 | -- Created by: Remi LEQUETTE |
3 | -- Copyright (c) 1993-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
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 |
973c2be1 |
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. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | class Plane from ProjLib inherits Projector from ProjLib |
18 | |
19 | ---Purpose: Projects elementary curves on a plane. |
20 | |
21 | uses |
22 | CurveType from GeomAbs, |
23 | Pln from gp, |
24 | Lin from gp, |
25 | Circ from gp, |
26 | Elips from gp, |
27 | Parab from gp, |
28 | Hypr from gp, |
29 | Lin2d from gp, |
30 | Circ2d from gp, |
31 | Elips2d from gp, |
32 | Parab2d from gp, |
33 | Hypr2d from gp |
34 | |
35 | raises |
36 | NoSuchObject from Standard |
37 | |
38 | is |
39 | |
40 | Create returns Plane from ProjLib; |
41 | ---Purpose: Undefined projection. |
42 | |
43 | Create(Pl : Pln from gp) returns Plane from ProjLib; |
44 | ---Purpose: Projection on the plane <Pl>. |
45 | |
46 | Create(Pl : Pln from gp; |
47 | L : Lin from gp) returns Plane from ProjLib; |
48 | ---Purpose: Projection of the line <L> on the plane <Pl>. |
49 | |
50 | Create(Pl : Pln from gp; |
51 | C : Circ from gp) returns Plane from ProjLib; |
52 | ---Purpose: Projection of the circle <C> on the plane <Pl>. |
53 | |
54 | Create(Pl : Pln from gp; |
55 | E : Elips from gp) returns Plane from ProjLib; |
56 | ---Purpose: Projection of the ellipse <E> on the plane <Pl>. |
57 | |
58 | Create(Pl : Pln from gp; |
59 | P : Parab from gp) returns Plane from ProjLib; |
60 | ---Purpose: Projection of the parabola <P> on the plane <Pl>. |
61 | |
62 | Create(Pl : Pln from gp; |
63 | H : Hypr from gp) returns Plane from ProjLib; |
64 | ---Purpose: Projection of the hyperbola <H> on the plane <Pl>. |
65 | |
66 | |
67 | Init(me : in out; |
68 | Pl : Pln from gp) |
69 | is static; |
70 | |
71 | Project(me : in out; |
72 | L : Lin from gp) |
73 | is redefined; |
74 | |
75 | Project(me : in out; |
76 | C : Circ from gp) |
77 | is redefined; |
78 | |
79 | Project(me : in out; |
80 | E : Elips from gp) |
81 | is redefined; |
82 | |
83 | Project(me : in out; |
84 | P : Parab from gp) |
85 | is redefined; |
86 | |
87 | Project(me : in out; |
88 | H : Hypr from gp) |
89 | is redefined; |
90 | |
91 | |
92 | fields |
93 | |
94 | myPlane : Pln from gp; |
95 | |
96 | end Plane; |
97 | |
98 | |
99 | |