Integration of OCCT 6.5.0 from SVN
[occt.git] / src / Select3D / Select3D_Projector.cdl
CommitLineData
7fd59977 1-- File: Select3D_Projector.cdl
2-- Created: Thu Mar 12 13:32:28 1992
3-- Author: Christophe MARION
4-- <cma@sdsun2> copie quasi exacte de HLRAlgo_Projector
5---Copyright: Matra Datavision 1992
6
7class Projector from Select3D
8 ---Purpose: A framework to define 3D projectors.
9uses
10 Real from Standard,
11 Boolean from Standard,
12 Trsf from gp,
13 GTrsf from gp,
14 Lin from gp,
15 Pnt from gp,
16 Vec from gp,
17 Ax2 from gp,
18 Vec2d from gp,
19 Pnt2d from gp,
20 Box from Bnd,
21 View from V3d
22
23raises
24 NoSuchObject from Standard
25
26is
27
28 Create(aView:View from V3d) returns Projector from Select3D;
29 --- Purpose: Constructs the 3D projector object defined by the 3D view aView.
30 Create returns Projector from Select3D;
31
32 Create(CS : Ax2 from gp)
33 ---Purpose: Creates an axonometric projector. <CS> is the
34 -- viewing coordinate system.
35 returns Projector from Select3D;
36
37 Create(CS : Ax2 from gp;
38 Focus : Real from Standard)
39 ---Purpose: Creates a perspective projector. <CS> is the
40 -- viewing coordinate system.
41 returns Projector from Select3D;
42
43 Create(T : Trsf from gp;
44 Persp : Boolean from Standard;
45 Focus : Real from Standard)
46 ---Purpose: build a Projector with automatic minmax directions.
47 returns Projector from Select3D;
48
49 Create(T : Trsf from gp;
50 Persp : Boolean from Standard;
51 Focus : Real from Standard;
52 v1,v2,v3 : Vec2d from gp)
53 ---Purpose: build a Projector with given minmax directions.
54 returns Projector from Select3D;
55
56 Create(GT : GTrsf from gp;
57 Persp : Boolean from Standard;
58 Focus : Real from Standard)
59 ---Purpose: build a Projector with automatic minmax directions.
60 returns Projector from Select3D;
61
62 Delete(me:out) is virtual;
63 ---C++: alias "Standard_EXPORT virtual ~Select3D_Projector(){Delete() ; }"
64
65 Set (me: in out ;
66 T : Trsf from gp;
67 Persp : Boolean from Standard;
68 Focus : Real from Standard)
69 is static;
70
71
72 SetView(me:in out ; V : View from V3d);
73 ---Purpose: Sets the 3D view V used at the time of construction.
74
75 View(me) returns any View from V3d;
76 ---Purpose: Returns the 3D view used at the time of construction.
77 ---C++: return const&
78 ---C++: inline
79
80
81 Directions(me; D1 , D2 , D3 : out Vec2d from gp)
82 ---C++: inline
83 is virtual;
84
85 Scaled(me : in out; On : Boolean from Standard = Standard_False)
86 ---Purpose: to compute with the given scale and translation.
87 is virtual;
88
89 Perspective(me) returns Boolean
90 ---Purpose: Returns True if there is a perspective transformation.
91 ---C++: inline
92 is virtual;
93
94 Transformation(me) returns GTrsf from gp
95 ---Purpose: Returns the active transformation.
96 ---C++: inline
97 ---C++: return const &
98 is virtual;
99
100 InvertedTransformation(me) returns GTrsf from gp
101 ---Purpose: Returns the active inverted transformation.
102 ---C++: inline
103 ---C++: return const &
104 is virtual;
105
106 FullTransformation(me) returns Trsf from gp
107 ---Purpose: Returns the original transformation.
108 ---C++: inline
109 ---C++: return const &
110 is virtual;
111
112 Focus(me) returns Real from Standard
113 ---Purpose: Returns the focal length.
114 ---C++: inline
115 raises
116 NoSuchObject from Standard -- if there is no perspective
117 is virtual;
118
119 Transform(me; D : in out Vec from gp)
120 ---C++: inline
121 is virtual;
122
123 Transform(me; Pnt : in out Pnt from gp)
124 ---C++: inline
125 is virtual;
126
127 Project(me; P : Pnt from gp;
128 Pout : out Pnt2d from gp)
129 ---Purpose: Transform and apply perspective if needed.
130 is virtual;
131
132 Project(me; P : Pnt from gp;
133 X,Y,Z : out Real from Standard)
134 ---Purpose: Transform and apply perspective if needed.
135 is static;
136
137 Project(me; P : Pnt from gp;
138 D1 : Vec from gp;
139 Pout : out Pnt2d from gp;
140 D1out : out Vec2d from gp)
141 ---Purpose: Transform and apply perspective if needed.
142 is virtual;
143
144 BoxAdd(me; P : Pnt2d from gp;
145 B : out Box from Bnd)
146 ---Purpose: Adds to the box <B> the min-max of the point <P>.
147 is virtual;
148
149 Shoot(me; X , Y : Real from Standard)
150 returns Lin from gp
151 ---Purpose: return a line going through the eye towards the
152 -- 2d point <X,Y>.
153 is virtual;
154
155 SetDirection(me: in out)
156 is static private;
157
158 Transform(me; P : in out Pnt from gp;
159 T : GTrsf from gp)
160 ---C++: inline
161 is virtual;
162
163 Transform(me; D : in out Lin from gp;
164 T : GTrsf from gp)
165 ---C++: inline
166 is virtual;
167
168fields
169 myType : Integer from Standard;
170
171 myPersp : Boolean from Standard is protected;
172 myFocus : Real from Standard is protected;
173 myScaledTrsf : Trsf from gp is protected;
174 myGTrsf : GTrsf from gp is protected;
175 myInvTrsf : GTrsf from gp is protected;
176 myD1 : Vec2d from gp is protected;
177 myD2 : Vec2d from gp is protected;
178 myD3 : Vec2d from gp is protected;
179
180
181 myView : View from V3d;
182
183end Projector;