@openglobus/og 0.11.2 → 0.11.7

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