7fd59977 |
1 | -- File: Prs3d_Projector.cdl |
2 | -- Created: Fri Mar 19 09:51:20 1993 |
3 | -- Author: Jean-Louis FRENKEL |
4 | -- <jlf@phylox> |
5 | ---Copyright: Matra Datavision 1993 |
6 | |
7 | |
8 | class Projector from Prs3d inherits TShared from MMgt |
9 | |
10 | ---Purpose: A projector object. |
11 | -- This object defines the parameters of a view for a |
12 | -- visualization algorithm. It is, for example, used by the |
13 | -- hidden line removal algorithms. |
14 | |
15 | uses |
16 | Projector from HLRAlgo, |
17 | Length from Quantity |
18 | is |
19 | |
20 | Create(Pr: Projector from HLRAlgo) |
21 | returns mutable Projector from Prs3d; |
22 | |
23 | |
24 | Create ( Pers: Boolean from Standard; |
25 | Focus: Length from Quantity; |
26 | DX, DY, DZ: Length from Quantity; -- Projection Vector |
27 | XAt, YAt , ZAt: Length from Quantity; -- View Point |
28 | XUp, YUp, ZUp: Length from Quantity) -- High Point Direction |
29 | returns mutable Projector from Prs3d; |
30 | --- Purpose: Constructs a projector framework from the following parameters |
31 | -- - Pers is true if the view is a perspective view and |
32 | -- false if it is an axonometric one; |
33 | -- - Focus is the focal length if a perspective view is defined; |
34 | -- - DX, DY and DZ are the coordinates of the |
35 | -- projection vector; |
36 | -- - XAt, YAt and ZAt are the coordinates of the view point; |
37 | -- - XUp, YUp and ZUp are the coordinates of the |
38 | -- vertical direction vector. |
39 | |
40 | Projector(me) returns Projector from HLRAlgo |
41 | is static; |
42 | ---Purpose: Returns a projector object for use in a hidden line removal algorithm. |
43 | |
44 | fields |
45 | MyProjector: Projector from HLRAlgo; |
46 | end Projector; |