@openglobus/og 0.12.1 → 0.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/dist/@openglobus/og.css +1 -0
  2. package/dist/@openglobus/og.esm.js +21 -0
  3. package/dist/@openglobus/og.esm.js.map +1 -0
  4. package/dist/@openglobus/og.umd.js +21 -0
  5. package/dist/@openglobus/og.umd.js.map +1 -0
  6. package/package.json +2 -2
  7. package/src/og/entity/GeoObjectHandler.js +35 -16
  8. package/src/og/layer/KML.js +19 -12
  9. package/src/og/layer/Layer.js +4 -1
  10. package/src/og/scene/Planet.js +14 -14
  11. package/src/og/shaders/geoObject.js +15 -6
  12. package/types/Clock.d.ts +94 -0
  13. package/types/Deferred.d.ts +6 -0
  14. package/types/Events.d.ts +77 -0
  15. package/types/Extent.d.ts +166 -0
  16. package/types/Globe.d.ts +85 -0
  17. package/types/ImageCanvas.d.ts +123 -0
  18. package/types/Lock.d.ts +12 -0
  19. package/types/LonLat.d.ts +108 -0
  20. package/types/Popup.d.ts +42 -0
  21. package/types/QueueArray.d.ts +19 -0
  22. package/types/Rectangle.d.ts +80 -0
  23. package/types/Stack.d.ts +19 -0
  24. package/types/ajax.d.ts +24 -0
  25. package/types/arial.d.ts +48 -0
  26. package/types/astro/astro.d.ts +38 -0
  27. package/types/astro/earth.d.ts +7 -0
  28. package/types/astro/jd.d.ts +254 -0
  29. package/types/bv/Box.d.ts +30 -0
  30. package/types/bv/Sphere.d.ts +38 -0
  31. package/types/bv/index.d.ts +3 -0
  32. package/types/camera/Camera.d.ts +312 -0
  33. package/types/camera/Frustum.d.ts +133 -0
  34. package/types/camera/PlanetCamera.d.ts +219 -0
  35. package/types/camera/index.d.ts +3 -0
  36. package/types/cons.d.ts +40 -0
  37. package/types/control/CompassButton.d.ts +17 -0
  38. package/types/control/Control.d.ts +104 -0
  39. package/types/control/DebugInfo.d.ts +15 -0
  40. package/types/control/EarthCoordinates.d.ts +47 -0
  41. package/types/control/EarthNavigation.d.ts +43 -0
  42. package/types/control/GeoImageDragControl.d.ts +6 -0
  43. package/types/control/KeyboardNavigation.d.ts +21 -0
  44. package/types/control/LayerSwitcher.d.ts +21 -0
  45. package/types/control/Lighting.d.ts +16 -0
  46. package/types/control/MouseNavigation.d.ts +48 -0
  47. package/types/control/MouseWheelZoomControl.d.ts +45 -0
  48. package/types/control/ScaleControl.d.ts +22 -0
  49. package/types/control/ShowFps.d.ts +11 -0
  50. package/types/control/SimpleNavigation.d.ts +25 -0
  51. package/types/control/Sun.d.ts +50 -0
  52. package/types/control/ToggleWireframe.d.ts +12 -0
  53. package/types/control/TouchNavigation.d.ts +48 -0
  54. package/types/control/ZoomControl.d.ts +27 -0
  55. package/types/control/index.d.ts +18 -0
  56. package/types/ellipsoid/Ellipsoid.d.ts +146 -0
  57. package/types/ellipsoid/index.d.ts +3 -0
  58. package/types/ellipsoid/wgs84.d.ts +6 -0
  59. package/types/entity/BaseBillboard.d.ts +215 -0
  60. package/types/entity/Billboard.d.ts +94 -0
  61. package/types/entity/BillboardHandler.d.ts +79 -0
  62. package/types/entity/Entity.d.ts +348 -0
  63. package/types/entity/EntityCollection.d.ts +317 -0
  64. package/types/entity/GeoObject.d.ts +111 -0
  65. package/types/entity/GeoObjectHandler.d.ts +81 -0
  66. package/types/entity/Geometry.d.ts +74 -0
  67. package/types/entity/GeometryHandler.d.ts +76 -0
  68. package/types/entity/Label.d.ts +189 -0
  69. package/types/entity/LabelHandler.d.ts +31 -0
  70. package/types/entity/LabelWorker.d.ts +11 -0
  71. package/types/entity/PointCloud.d.ts +174 -0
  72. package/types/entity/PointCloudHandler.d.ts +38 -0
  73. package/types/entity/Polyline.d.ts +306 -0
  74. package/types/entity/PolylineHandler.d.ts +18 -0
  75. package/types/entity/Ray.d.ts +124 -0
  76. package/types/entity/RayHandler.d.ts +67 -0
  77. package/types/entity/ShapeHandler.d.ts +22 -0
  78. package/types/entity/Strip.d.ts +119 -0
  79. package/types/entity/StripHandler.d.ts +38 -0
  80. package/types/entity/index.d.ts +8 -0
  81. package/types/index.core.d.ts +65 -0
  82. package/types/index.d.ts +45 -0
  83. package/types/index.webgl.d.ts +7 -0
  84. package/types/input/KeyboardHandler.d.ts +10 -0
  85. package/types/input/MouseHandler.d.ts +5 -0
  86. package/types/input/TouchHandler.d.ts +5 -0
  87. package/types/input/input.d.ts +34 -0
  88. package/types/layer/BaseGeoImage.d.ts +94 -0
  89. package/types/layer/CanvasTiles.d.ts +67 -0
  90. package/types/layer/GeoImage.d.ts +52 -0
  91. package/types/layer/GeoTexture2d.d.ts +8 -0
  92. package/types/layer/GeoVideo.d.ts +55 -0
  93. package/types/layer/KML.d.ts +68 -0
  94. package/types/layer/Layer.d.ts +310 -0
  95. package/types/layer/Material.d.ts +45 -0
  96. package/types/layer/Vector.d.ts +208 -0
  97. package/types/layer/WMS.d.ts +61 -0
  98. package/types/layer/XYZ.d.ts +119 -0
  99. package/types/layer/index.d.ts +10 -0
  100. package/types/light/LightSource.d.ts +178 -0
  101. package/types/math/Line2.d.ts +11 -0
  102. package/types/math/Line3.d.ts +10 -0
  103. package/types/math/Mat3.d.ts +65 -0
  104. package/types/math/Mat4.d.ts +176 -0
  105. package/types/math/Plane.d.ts +18 -0
  106. package/types/math/Quat.d.ts +379 -0
  107. package/types/math/Ray.d.ts +82 -0
  108. package/types/math/Vec2.d.ts +309 -0
  109. package/types/math/Vec3.d.ts +467 -0
  110. package/types/math/Vec4.d.ts +162 -0
  111. package/types/math/coder.d.ts +43 -0
  112. package/types/math/index.d.ts +11 -0
  113. package/types/math.d.ts +261 -0
  114. package/types/mercator.d.ts +92 -0
  115. package/types/proj/EPSG3857.d.ts +6 -0
  116. package/types/proj/EPSG4326.d.ts +6 -0
  117. package/types/proj/Proj.d.ts +42 -0
  118. package/types/quadTree/EntityCollectionNode.d.ts +34 -0
  119. package/types/quadTree/Node.d.ts +60 -0
  120. package/types/quadTree/quadTree.d.ts +40 -0
  121. package/types/renderer/Renderer.d.ts +290 -0
  122. package/types/renderer/RendererEvents.d.ts +237 -0
  123. package/types/res/images.d.ts +3 -0
  124. package/types/scene/Axes.d.ts +11 -0
  125. package/types/scene/BaseNode.d.ts +60 -0
  126. package/types/scene/Planet.d.ts +576 -0
  127. package/types/scene/RenderNode.d.ts +142 -0
  128. package/types/scene/SkyBox.d.ts +10 -0
  129. package/types/scene/index.d.ts +4 -0
  130. package/types/segment/Segment.d.ts +275 -0
  131. package/types/segment/SegmentLonLat.d.ts +17 -0
  132. package/types/segment/Slice.d.ts +10 -0
  133. package/types/segment/segmentHelper.d.ts +13 -0
  134. package/types/shaders/billboard.d.ts +3 -0
  135. package/types/shaders/depth.d.ts +2 -0
  136. package/types/shaders/drawnode.d.ts +7 -0
  137. package/types/shaders/geoObject.d.ts +3 -0
  138. package/types/shaders/label.d.ts +4 -0
  139. package/types/shaders/pointCloud.d.ts +2 -0
  140. package/types/shaders/polyline.d.ts +3 -0
  141. package/types/shaders/ray.d.ts +2 -0
  142. package/types/shaders/screenFrame.d.ts +2 -0
  143. package/types/shaders/shape.d.ts +4 -0
  144. package/types/shaders/skybox.d.ts +2 -0
  145. package/types/shaders/toneMapping.d.ts +2 -0
  146. package/types/shapes/BaseShape.d.ts +250 -0
  147. package/types/shapes/Sphere.d.ts +41 -0
  148. package/types/terrain/BilTerrain.d.ts +7 -0
  149. package/types/terrain/EmptyTerrain.d.ts +73 -0
  150. package/types/terrain/Geoid.d.ts +26 -0
  151. package/types/terrain/GlobusTerrain.d.ts +116 -0
  152. package/types/terrain/MapboxTerrain.d.ts +7 -0
  153. package/types/terrain/index.d.ts +5 -0
  154. package/types/utils/FontAtlas.d.ts +15 -0
  155. package/types/utils/GeoImageCreator.d.ts +30 -0
  156. package/types/utils/ImagesCacheManager.d.ts +10 -0
  157. package/types/utils/Loader.d.ts +25 -0
  158. package/types/utils/NormalMapCreator.d.ts +39 -0
  159. package/types/utils/PlainSegmentWorker.d.ts +10 -0
  160. package/types/utils/TerrainWorker.d.ts +9 -0
  161. package/types/utils/TextureAtlas.d.ts +111 -0
  162. package/types/utils/VectorTileCreator.d.ts +16 -0
  163. package/types/utils/colorTable.d.ts +143 -0
  164. package/types/utils/earcut.d.ts +6 -0
  165. package/types/utils/shared.d.ts +231 -0
  166. package/types/webgl/Framebuffer.d.ts +135 -0
  167. package/types/webgl/Handler.d.ts +417 -0
  168. package/types/webgl/Multisample.d.ts +89 -0
  169. package/types/webgl/Program.d.ts +161 -0
  170. package/types/webgl/ProgramController.d.ts +89 -0
  171. package/types/webgl/callbacks.d.ts +1 -0
  172. package/types/webgl/index.d.ts +6 -0
  173. package/types/webgl/types.d.ts +2 -0
@@ -0,0 +1,290 @@
1
+ /**
2
+ * Represents high level WebGL context interface that starts WebGL handler working in real time.
3
+ * @class
4
+ * @param {Handler} handler - WebGL handler context.
5
+ * @param {Object} [params] - Renderer parameters:
6
+ * @fires og.RendererEvents#draw
7
+ * @fires og.RendererEvents#resize
8
+ * @fires og.RendererEvents#mousemove
9
+ * @fires og.RendererEvents#mousestop
10
+ * @fires og.RendererEvents#lclick
11
+ * @fires og.RendererEvents#rclick
12
+ * @fires og.RendererEvents#mclick
13
+ * @fires og.RendererEvents#ldblclick
14
+ * @fires og.RendererEvents#rdblclick
15
+ * @fires og.RendererEvents#mdblclick
16
+ * @fires og.RendererEvents#lup
17
+ * @fires og.RendererEvents#rup
18
+ * @fires og.RendererEvents#mup
19
+ * @fires og.RendererEvents#ldown
20
+ * @fires og.RendererEvents#rdown
21
+ * @fires og.RendererEvents#mdown
22
+ * @fires og.RendererEvents#lhold
23
+ * @fires og.RendererEvents#rhold
24
+ * @fires og.RendererEvents#mhold
25
+ * @fires og.RendererEvents#mousewheel
26
+ * @fires og.RendererEvents#touchstart
27
+ * @fires og.RendererEvents#touchend
28
+ * @fires og.RendererEvents#touchcancel
29
+ * @fires og.RendererEvents#touchmove
30
+ * @fires og.RendererEvents#doubletouch
31
+ * @fires og.RendererEvents#touchleave
32
+ * @fires og.RendererEvents#touchenter
33
+ */
34
+ export class Renderer {
35
+ constructor(handler: any, params: any);
36
+ /**
37
+ * Div element with WebGL canvas.
38
+ * @public
39
+ * @type {object}
40
+ */
41
+ public div: object;
42
+ /**
43
+ * WebGL handler context.
44
+ * @public
45
+ * @type {Handler}
46
+ */
47
+ public handler: Handler;
48
+ exposure: number;
49
+ gamma: number;
50
+ whitepoint: number;
51
+ brightThreshold: number;
52
+ backgroundColor: any;
53
+ /**
54
+ * Render nodes drawing queue.
55
+ * @private
56
+ * @type {Array.<scene.RenderNode>}
57
+ */
58
+ private _renderNodesArr;
59
+ /**
60
+ * Render nodes store for the comfortable access by the node name.
61
+ * @public
62
+ * @type {Object.<og.scene.RenderNode>}
63
+ */
64
+ public renderNodes: any;
65
+ /**
66
+ * Current active camera.
67
+ * @public
68
+ * @type {Camera}
69
+ */
70
+ public activeCamera: Camera;
71
+ /**
72
+ * Renderer events. Represents interface for setting events like mousemove, draw, keypress etc.
73
+ * @public
74
+ * @type {RendererEvents}
75
+ */
76
+ public events: RendererEvents;
77
+ /**
78
+ * OpenGlobus controls array.
79
+ * @public
80
+ * @type {Object}
81
+ */
82
+ public controls: any;
83
+ /**
84
+ * Provides exchange between controls.
85
+ * @public
86
+ * @type {Object}
87
+ */
88
+ public controlsBag: any;
89
+ /**
90
+ * Hash table for drawing objects.
91
+ * @public
92
+ * @type {Object}
93
+ */
94
+ public colorObjects: any;
95
+ /**
96
+ * Color picking objects rendering queue.
97
+ * @type {Array.<Renderer~pickingCallback>}
98
+ */
99
+ _pickingCallbacks: Array<Renderer>;
100
+ /**
101
+ * Picking objects(labels and billboards) framebuffer.
102
+ * @public
103
+ * @type {Framebuffer}
104
+ */
105
+ public pickingFramebuffer: Framebuffer;
106
+ /**
107
+ * Depth objects rendering queue.
108
+ * @type {Array.<Renderer~depthCallback>}
109
+ */
110
+ _depthCallbacks: Array<Renderer>;
111
+ depthFramebuffer: Framebuffer;
112
+ _msaa: any;
113
+ _internalFormat: string;
114
+ _format: string;
115
+ _type: string;
116
+ sceneFramebuffer: Framebuffer | Multisample;
117
+ blitFramebuffer: Framebuffer;
118
+ toneMappingFramebuffer: Framebuffer;
119
+ /**
120
+ * Stores current picking rgb color.
121
+ * @private
122
+ * @type {Array.<number>} - (exactly 3 entries)
123
+ */
124
+ private _currPickingColor;
125
+ /**
126
+ * Stores previous picked rgb color.
127
+ * @private
128
+ * @type {Array.<number>} - (exactly 3 entries)
129
+ */
130
+ private _prevPickingColor;
131
+ _tempPickingColor_: Uint8Array;
132
+ _initialized: boolean;
133
+ /**
134
+ * Texture atlas for the billboards images. One atlas per node.
135
+ * @protected
136
+ * @type {utils.TextureAtlas}
137
+ */
138
+ protected billboardsTextureAtlas: utils.TextureAtlas;
139
+ /**
140
+ * Texture font atlas for the font families and styles. One atlas per node.
141
+ * @public
142
+ * @type {utils.FontAtlas}
143
+ */
144
+ public fontAtlas: utils.FontAtlas;
145
+ _entityCollections: any[];
146
+ _currentOutput: string;
147
+ labelWorker: LabelWorker;
148
+ /**
149
+ * Sets renderer events activity.
150
+ * @param {Boolean} activity - Events activity.
151
+ */
152
+ setEventsActivity(activity: boolean): void;
153
+ addDepthCallback(sender: any, callback: any): number;
154
+ removeDepthCallback(id: any): void;
155
+ /**
156
+ * Adds picking rendering callback function.
157
+ * @param {object} sender - Callback context.
158
+ * @param {Renderer~pickingCallback} callback - Rendering callback.
159
+ * @returns {Number} Handler id
160
+ */
161
+ addPickingCallback(sender: object, callback: any): number;
162
+ /**
163
+ * Removes picking rendering callback function.
164
+ * @param {Number} id - Handler id to remove.
165
+ */
166
+ removePickingCallback(id: number): void;
167
+ getPickingObjectByColor(r: any, g: any, b: any): any;
168
+ /**
169
+ * Assign picking color to the object.
170
+ * @public
171
+ * @param {Object} obj - Object that pressume to be picked.
172
+ */
173
+ public assignPickingColor(obj: any): void;
174
+ /**
175
+ * Removes picking color from object.
176
+ * @public
177
+ * @param {Object} obj - Object to remove picking color.
178
+ */
179
+ public clearPickingColor(obj: any): void;
180
+ /**
181
+ * Get the client width.
182
+ * @public
183
+ * @returns {number} -
184
+ */
185
+ public getWidth(): number;
186
+ /**
187
+ * Get the client height.
188
+ * @public
189
+ * @returns {number} -
190
+ */
191
+ public getHeight(): number;
192
+ /**
193
+ * Get center of the screen
194
+ * @public
195
+ * @returns {math.Vec2} -
196
+ */
197
+ public getCenter(): math.Vec2;
198
+ /**
199
+ * Add the given control to the renderer.
200
+ * @param {control.Control} control - Control.
201
+ */
202
+ addControl(control: control.Control): void;
203
+ /**
204
+ * Add the given controls array to the planet node.
205
+ * @param {Array.<control.Control>} cArr - Control array.
206
+ */
207
+ addControls(cArr: Array<control.Control>): void;
208
+ /**
209
+ * Remove control from the renderer.
210
+ * @param {control.Control} control - Control.
211
+ */
212
+ removeControl(control: control.Control): void;
213
+ /**
214
+ * Renderer initialization.
215
+ * @public
216
+ */
217
+ public initialize(): void;
218
+ screenDepthFramebuffer: Framebuffer;
219
+ _fnScreenFrame: () => void;
220
+ screenTexture: {
221
+ screen: any;
222
+ picking: any;
223
+ depth: any;
224
+ frustum?: undefined;
225
+ } | {
226
+ screen: any;
227
+ picking: any;
228
+ depth: any;
229
+ frustum: any;
230
+ };
231
+ _screenFrameCornersBuffer: any;
232
+ outputTexture: any;
233
+ setCurrentScreen(screenName: any): void;
234
+ resize(): void;
235
+ removeNode(renderNode: any): void;
236
+ /**
237
+ * Adds render node to the renderer.
238
+ * @public
239
+ * @param {RenderNode} renderNode - Render node.
240
+ */
241
+ public addNode(renderNode: RenderNode): void;
242
+ /**
243
+ * Adds render node to the renderer before specific node.
244
+ * @public
245
+ * @param {RenderNode} renderNode - Render node.
246
+ */
247
+ public addNodeBefore(renderNode: RenderNode, renderNodeBefore: any): void;
248
+ /**
249
+ * Adds render nodes array to the renderer.
250
+ * @public
251
+ * @param {Array.<scene.RenderNode>} nodesArr - Render nodes array.
252
+ */
253
+ public addNodes(nodesArr: Array<scene.RenderNode>): void;
254
+ getMaxMSAA(internalFormat: any): any;
255
+ getMSAA(): any;
256
+ /**
257
+ * TODO: replace with cahce frendly linked list by bilboardHandler, label handler etc.
258
+ */
259
+ enqueueEntityCollectionsToDraw(ecArr: any): void;
260
+ /**
261
+ * Draws entity collections.
262
+ * @public
263
+ * @param {Array<og.EntityCollection>} ec - Entity collection array.
264
+ */
265
+ public _drawEntityCollections(): void;
266
+ /**
267
+ * Draw nodes.
268
+ * @public
269
+ */
270
+ public draw(): void;
271
+ _screenFrameMSAA(): void;
272
+ _screenFrameNoMSAA(): void;
273
+ /**
274
+ * Draw picking objects framebuffer.
275
+ * @private
276
+ */
277
+ private _drawPickingBuffer;
278
+ _drawDepthBuffer(): void;
279
+ _readPickingColor(): void;
280
+ /**
281
+ * Function starts rendering.
282
+ * @public
283
+ */
284
+ public start(): void;
285
+ }
286
+ import { Camera } from "../camera/Camera.js";
287
+ import { RendererEvents } from "./RendererEvents.js";
288
+ import { Framebuffer } from "../webgl/index.js";
289
+ import { Multisample } from "../webgl/index.js";
290
+ import { LabelWorker } from "../entity/LabelWorker.js";
@@ -0,0 +1,237 @@
1
+ /**
2
+ * Renderer events handler.
3
+ * @class
4
+ * @param {Renderer} renderer - Renderer object, events that works for.
5
+ */
6
+ export class RendererEvents extends Events {
7
+ constructor(renderer: any);
8
+ /**
9
+ * Assigned renderer.
10
+ * @public
11
+ * @type {Renderer}
12
+ */
13
+ public renderer: Renderer;
14
+ /**
15
+ * Low level touch events handler.
16
+ * @private
17
+ * @type {input.TouchHandler}
18
+ */
19
+ private _touchHandler;
20
+ /**
21
+ * Low level mouse events handler.
22
+ * @private
23
+ * @type {input.MouseHandler}
24
+ */
25
+ private _mouseHandler;
26
+ /**
27
+ * Low level keyboard events handler.
28
+ * @private
29
+ * @type {input.KeyboardHandler}
30
+ */
31
+ private _keyboardHandler;
32
+ _active: boolean;
33
+ clickRadius: number;
34
+ /**
35
+ * Current mouse state.
36
+ * @public
37
+ * @enum {Object}
38
+ */
39
+ public mouseState: {
40
+ anyEvent: () => boolean;
41
+ /** Current screen mouse X position. */
42
+ clientX: number;
43
+ /** Current screen mouse Y position. */
44
+ clientY: number;
45
+ /** Current viewport mouse X position. */
46
+ x: number;
47
+ /** Current viewport mouse Y position. */
48
+ y: number;
49
+ /** Current mouse X position from 0 to 1 */
50
+ nx: number;
51
+ /** Current mouse Y position from 0 to 1 */
52
+ ny: number;
53
+ /** Previous mouse X position. */
54
+ prev_x: number;
55
+ /** Previous mouse Y position. */
56
+ prev_y: number;
57
+ /** Screen mouse position world direction. */
58
+ direction: Vec3;
59
+ /** Left mouse button has stopped pushing down right now.*/
60
+ leftButtonUp: boolean;
61
+ /** Right mouse button has stopped pushing down right now.*/
62
+ rightButtonUp: boolean;
63
+ /** Middle mouse button has stopped pushing down right now.*/
64
+ middleButtonUp: boolean;
65
+ /** Left mouse button has pushed now.*/
66
+ leftButtonDown: boolean;
67
+ /** Right mouse button has pushed now.*/
68
+ rightButtonDown: boolean;
69
+ /** Middle mouse button has pushed now.*/
70
+ middleButtonDown: boolean;
71
+ /** Left mouse button is pushing.*/
72
+ leftButtonHold: boolean;
73
+ /** Right mouse button is pushing.*/
74
+ rightButtonHold: boolean;
75
+ /** Middle mouse button is pushing.*/
76
+ middleButtonHold: boolean;
77
+ /** Left mouse button has clicked twice now.*/
78
+ leftButtonDoubleClick: boolean;
79
+ /** Right mouse button has clicked twice now.*/
80
+ rightButtonDoubleClick: boolean;
81
+ /** Middle mouse button has clicked twice now.*/
82
+ middleButtonDoubleClick: boolean;
83
+ /** Left mouse button has clicked now. */
84
+ leftButtonClick: boolean;
85
+ /** Right mouse button has clicked now. */
86
+ rightButtonClick: boolean;
87
+ /** Middle mouse button has clicked now. */
88
+ middleButtonClick: boolean;
89
+ /** Mouse is moving now. */
90
+ moving: boolean;
91
+ /** Mouse has just stopped now. */
92
+ justStopped: boolean;
93
+ /** Mose double click delay response time.*/
94
+ doubleClickDelay: number;
95
+ /** Mose click delay response time.*/
96
+ clickDelay: number;
97
+ /** Mouse wheel. */
98
+ wheelDelta: number;
99
+ /** JavaScript mouse system event message. */
100
+ sys: any;
101
+ /** Current picking object. */
102
+ pickingObject: any;
103
+ /** Renderer instanve. */
104
+ renderer: any;
105
+ };
106
+ /**
107
+ * Current touch state.
108
+ * @public
109
+ * @enum {Object}
110
+ */
111
+ public touchState: {
112
+ /** Touching is moving now. */
113
+ moving: boolean;
114
+ /** Touch has ended right now.*/
115
+ touchEnd: boolean;
116
+ /** Touch has started right now.*/
117
+ touchStart: boolean;
118
+ /** Touch canceled.*/
119
+ touchCancel: boolean;
120
+ /** Touched twice.*/
121
+ doubleTouch: boolean;
122
+ /** Double touching responce delay.*/
123
+ doubleTouchDelay: number;
124
+ /** Double touching responce radius in screen pixels.*/
125
+ doubleTouchRadius: number;
126
+ /** Current touch X - coordinate. */
127
+ x: number;
128
+ /** Current touch Y - coordinate. */
129
+ y: number;
130
+ /** Current touch X - coordinate from 0 to 1 */
131
+ nx: number;
132
+ /** Current touch Y - coordinate from 0 to 1 */
133
+ ny: number;
134
+ /** Previous touch X coordinate. */
135
+ prev_x: number;
136
+ /** Previous touch Y coordinate. */
137
+ prev_y: number;
138
+ /** JavaScript touching system event message. */
139
+ sys: any;
140
+ /** Current touched(picking) object. */
141
+ pickingObject: any;
142
+ /** Renderer instanve. */
143
+ renderer: any;
144
+ };
145
+ _dblTchCoords: Vec2;
146
+ _oneTouchStart: boolean;
147
+ _dblTchBegins: number;
148
+ /**
149
+ * @type {number}
150
+ */
151
+ _mousestopThread: number;
152
+ _ldblClkBegins: number;
153
+ _rdblClkBegins: number;
154
+ _mdblClkBegins: number;
155
+ _lClkBegins: number;
156
+ _rClkBegins: number;
157
+ _mClkBegins: number;
158
+ _lclickX: number;
159
+ _lclickY: number;
160
+ _rclickX: number;
161
+ _rclickY: number;
162
+ _mclickX: number;
163
+ _mclickY: number;
164
+ set active(arg: boolean);
165
+ get active(): boolean;
166
+ /**
167
+ * Used in render node frame.
168
+ * @public
169
+ */
170
+ public handleEvents(): void;
171
+ /**
172
+ * Check key is pressed.
173
+ * @public
174
+ * @param {number} keyCode - Key code
175
+ * @return {boolean}
176
+ */
177
+ public isKeyPressed(keyCode: number): boolean;
178
+ releaseKeys(): void;
179
+ /**
180
+ * Renderer events initialization.
181
+ * @public
182
+ */
183
+ public initialize(): void;
184
+ /**
185
+ * @private
186
+ */
187
+ private onMouseWheel;
188
+ /**
189
+ * @protected
190
+ */
191
+ protected updateButtonsStates(buttons: any): void;
192
+ /**
193
+ * @private
194
+ */
195
+ private onMouseMove;
196
+ onMouseLeave(event: any): void;
197
+ onMouseEnter(event: any): void;
198
+ /**
199
+ * @private
200
+ */
201
+ private onMouseDown;
202
+ /**
203
+ * @private
204
+ */
205
+ private onMouseUp;
206
+ /**
207
+ * @private
208
+ */
209
+ private onTouchStart;
210
+ /**
211
+ * @private
212
+ */
213
+ private onTouchEnd;
214
+ /**
215
+ * @private
216
+ */
217
+ private onTouchCancel;
218
+ /**
219
+ * @private
220
+ */
221
+ private onTouchMove;
222
+ /**
223
+ * @private
224
+ */
225
+ private entityPickingEvents;
226
+ /**
227
+ * @private
228
+ */
229
+ private handleMouseEvents;
230
+ /**
231
+ * @private
232
+ */
233
+ private handleTouchEvents;
234
+ }
235
+ import { Events } from "../Events.js";
236
+ import { Vec3 } from "../math/Vec3.js";
237
+ import { Vec2 } from "../math/Vec2.js";