0022751: Issues around Prs3d_TextAspect::Print()
[occt.git] / src / V3d / V3d_PositionLight.cdl
CommitLineData
7fd59977 1-- File: PositionLight.cdl
2-- Created: Fri Nov 21 17:49:00 1997
3-- Author: ZOV
4-- ZOV - Mars 30 1998
5---Copyright: Matra Datavision 1992
6
7
8deferred class PositionLight from V3d
9
10
11inherits Light from V3d
12
13 ---Purpose: Base class for Positional, Spot and Directional Light classes
14
15uses
16
17 Viewer from V3d,
18 Coordinate from V3d,
19 View from V3d,
20 TypeOfRepresentation from V3d,
21 TypeOfPickLight from V3d,
22 NameOfColor from Quantity,
23 Coefficient from Quantity,
24 Parameter from Quantity,
25 Structure from Graphic3d,
26 Vertex from Graphic3d,
27 Group from Graphic3d
28
29raises BadValue from Viewer
30
31is
32
33 Initialize( VM : mutable Viewer ) ;
34
35 --------------------------------------------------------
36 ---Category: Methods to modify the Attributes of the Light
37 --------------------------------------------------------
38
39 SetPosition ( me : mutable; X,Y,Z : Coordinate ) is deferred;
40 ---Level: Public
41 ---Purpose: Defines the position of the light source. Should be redefined!
42
43 SetTarget (me : mutable; X,Y,Z : Coordinate);
44 ---Level: Public
45 ---Purpose: Defines the target of the light (the center
46 -- of the sphere)
47
48 SetRadius ( me : mutable; Radius : Parameter) raises BadValue from Viewer is static;
49 ---Level: Public
50 ---Purpose: Define the radius.
51 ---Warning: raises BadValue from Viewer if the radius is <= 0 or if the light is directional
52
53 OnHideFace (me : mutable; aView : View from V3d);
54 ---Level: Public
55 ---Purpose: Calculate the position of the light, on the hide face
56 -- of the picking sphere.
57
58 OnSeeFace (me : mutable; aView : View from V3d);
59 ---Level: Public
60 ---Purpose: Calculate the position of the light, on the seen face
61 -- of the picking sphere.
62
63 Tracking (me : mutable; aView : View from V3d;
64 WathPick : TypeOfPickLight from V3d;
65 Xpix,Ypix : Integer from Standard) is static;
66 ---Level: Public
67 ---Purpose: Tracking the light position, or the light space,
68 -- or the radius of the light space, that depends of
69 -- initial picking "WhatPick" (see the pick method).
70 -- If WhatPick is SPACELIGHT, then the parameters
71 -- Xpix, Ypix are the coordinates of a translation vector.
72
73 ---------------------------------------------------
74 ---Category: Displaying methods
75 ---------------------------------------------------
76
77 Display(me: mutable; aView: View from V3d; Representation : TypeOfRepresentation = V3d_SIMPLE)
78 is virtual;
79 ---Level: Public
80 ---Purpose: Display the graphic structure of light source
81 -- in the choosen view. We have three type of representation
82 -- - SIMPLE : Only the light source is displayed.
83 -- - PARTIAL : The light source and the light space are
84 -- displayed.
85 -- - COMPLETE : The light source, the light space and the
86 -- radius of light space are displayed.
87 -- We can choose the "SAMELAST" as parameter of representation
88 -- In this case the graphic structure representation will be
89 -- the last displayed.
90
91 Erase(me: mutable) is static;
92 ---Level: Public
93 ---Purpose: Erase the graphic structure of light source.
94
95 ---------------------------------------------------
96 ---Category: Inquire methods
97 ---------------------------------------------------
98
7fd59977 99 Radius (me ) returns Parameter is static;
100 ---Level: Public
101 ---Purpose: Returns the radius of the picking sphere.
102
103 SeeOrHide (me; aView: View from V3d) returns Boolean is static;
104 ---Level: Public
105 ---Purpose: Returns the visibility status
106 -- If True the source is visible.
107 -- If False it's hidden.
108
109 Position ( me; X,Y,Z : out Coordinate ) is deferred;
110 ---Level: Public
111 ---Purpose : Returns the position of the light source.
112
113 Target ( me; X,Y,Z : out Coordinate) is static;
114 ---Level: Public
115 ---Purpose: Returns the position of the target of the light source.
116
117 -----------------------------------------
118 ---Category: Private or Protected methods
119 -----------------------------------------
120
121 Symbol ( me ; gsymbol : mutable Group from Graphic3d ;
122 aView : View from V3d ) is deferred private;
123 ---Level: Internal
124 ---Purpose: Defines representation of the light source.
125
126
127
128fields
129
130 MyTarget: Vertex from Graphic3d is protected;
131 MyTypeOfRepresentation: TypeOfRepresentation from V3d is protected;
132
133end PositionalLight;
134
135