@openglobus/og 0.18.0 → 0.18.2

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 (476) hide show
  1. package/README.md +8 -8
  2. package/lib/@openglobus/og.esm.js +2 -0
  3. package/lib/@openglobus/og.esm.js.map +1 -0
  4. package/lib/@openglobus/og.umd.js +2 -0
  5. package/lib/@openglobus/og.umd.js.map +1 -0
  6. package/lib/js/Clock.d.ts +106 -0
  7. package/{src/Clock.ts → lib/js/Clock.js} +31 -126
  8. package/lib/js/Deferred.d.ts +6 -0
  9. package/lib/js/Deferred.js +13 -0
  10. package/lib/js/Events.d.ts +90 -0
  11. package/{src/Events.ts → lib/js/Events.js} +29 -84
  12. package/lib/js/Extent.d.ts +145 -0
  13. package/{src/Extent.ts → lib/js/Extent.js} +74 -120
  14. package/lib/js/Globe.d.ts +132 -0
  15. package/{src/Globe.ts → lib/js/Globe.js} +61 -159
  16. package/lib/js/ImageCanvas.d.ts +128 -0
  17. package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
  18. package/lib/js/Lock.d.ts +15 -0
  19. package/{src/Lock.ts → lib/js/Lock.js} +7 -21
  20. package/lib/js/LonLat.d.ts +128 -0
  21. package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
  22. package/lib/js/Object3d.d.ts +49 -0
  23. package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
  24. package/lib/js/Popup.d.ts +46 -0
  25. package/{src/Popup.ts → lib/js/Popup.js} +42 -110
  26. package/lib/js/QueueArray.d.ts +16 -0
  27. package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
  28. package/lib/js/Rectangle.d.ts +76 -0
  29. package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
  30. package/lib/js/Stack.d.ts +20 -0
  31. package/{src/Stack.ts → lib/js/Stack.js} +13 -29
  32. package/lib/js/astro/astro.d.ts +39 -0
  33. package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
  34. package/lib/js/astro/earth.d.ts +8 -0
  35. package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
  36. package/lib/js/astro/jd.d.ts +234 -0
  37. package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
  38. package/lib/js/astro/orbit.d.ts +5 -0
  39. package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
  40. package/lib/js/astro/rotation.d.ts +2 -0
  41. package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
  42. package/lib/js/bv/Box.d.ts +32 -0
  43. package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
  44. package/lib/js/bv/Sphere.d.ts +37 -0
  45. package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
  46. package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
  47. package/lib/js/bv/index.js +3 -0
  48. package/lib/js/camera/Camera.d.ts +314 -0
  49. package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
  50. package/lib/js/camera/Frustum.d.ts +139 -0
  51. package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
  52. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  53. package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
  54. package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
  55. package/lib/js/camera/index.js +3 -0
  56. package/lib/js/cons.d.ts +40 -0
  57. package/{src/cons.ts → lib/js/cons.js} +10 -22
  58. package/lib/js/control/Atmosphere.d.ts +16 -0
  59. package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
  60. package/lib/js/control/CompassButton.d.ts +16 -0
  61. package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
  62. package/lib/js/control/Control.d.ts +100 -0
  63. package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
  64. package/lib/js/control/DebugInfo.d.ts +25 -0
  65. package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
  66. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  67. package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
  68. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  69. package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
  70. package/lib/js/control/EarthNavigation.d.ts +50 -0
  71. package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
  72. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  73. package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
  74. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  75. package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
  76. package/lib/js/control/LayerAnimation.d.ts +71 -0
  77. package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
  78. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  79. package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
  80. package/lib/js/control/Lighting.d.ts +49 -0
  81. package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
  82. package/lib/js/control/MouseNavigation.d.ts +62 -0
  83. package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
  84. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  85. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  86. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  87. package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
  88. package/lib/js/control/ScaleControl.d.ts +24 -0
  89. package/lib/js/control/ScaleControl.js +91 -0
  90. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  91. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  92. package/lib/js/control/ShowFps.d.ts +9 -0
  93. package/lib/js/control/ShowFps.js +20 -0
  94. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  95. package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
  96. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  97. package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
  98. package/lib/js/control/Sun.d.ts +33 -0
  99. package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
  100. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  101. package/lib/js/control/ToggleWireframe.js +28 -0
  102. package/lib/js/control/TouchNavigation.d.ts +52 -0
  103. package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
  104. package/lib/js/control/ZoomControl.d.ts +27 -0
  105. package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
  106. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  107. package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
  108. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  109. package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
  110. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  111. package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
  112. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  113. package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
  114. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  115. package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
  116. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  117. package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
  118. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  119. package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
  120. package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
  121. package/lib/js/control/index.js +28 -0
  122. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  123. package/lib/js/control/ruler/Ruler.js +23 -0
  124. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  125. package/lib/js/control/ruler/RulerScene.js +324 -0
  126. package/lib/js/control/selection/Selection.d.ts +55 -0
  127. package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
  128. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  129. package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
  130. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  131. package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
  132. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  133. package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
  134. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  135. package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
  136. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  137. package/lib/js/control/timeline/timelineUtils.js +112 -0
  138. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  139. package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
  140. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  141. package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
  142. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  143. package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
  144. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  145. package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +85 -267
  146. package/lib/js/ellipsoid/index.d.ts +3 -0
  147. package/lib/js/ellipsoid/index.js +3 -0
  148. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  149. package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
  150. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  151. package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
  152. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  153. package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
  154. package/lib/js/entity/Billboard.d.ts +113 -0
  155. package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
  156. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  157. package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
  158. package/lib/js/entity/Entity.d.ts +354 -0
  159. package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +102 -374
  160. package/lib/js/entity/EntityCollection.d.ts +363 -0
  161. package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +57 -359
  162. package/lib/js/entity/GeoObject.d.ts +138 -0
  163. package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
  164. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  165. package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
  166. package/lib/js/entity/Geometry.d.ts +111 -0
  167. package/lib/js/entity/Geometry.js +283 -0
  168. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  169. package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
  170. package/lib/js/entity/Label.d.ts +207 -0
  171. package/{src/entity/Label.ts → lib/js/entity/Label.js} +63 -165
  172. package/lib/js/entity/LabelHandler.d.ts +65 -0
  173. package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
  174. package/lib/js/entity/LabelWorker.d.ts +15 -0
  175. package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
  176. package/lib/js/entity/PointCloud.d.ts +179 -0
  177. package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
  178. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  179. package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
  180. package/lib/js/entity/Polyline.d.ts +337 -0
  181. package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
  182. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  183. package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
  184. package/lib/js/entity/Ray.d.ts +133 -0
  185. package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
  186. package/lib/js/entity/RayHandler.d.ts +70 -0
  187. package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
  188. package/lib/js/entity/Strip.d.ts +127 -0
  189. package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
  190. package/lib/js/entity/StripHandler.d.ts +42 -0
  191. package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
  192. package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
  193. package/lib/js/entity/index.js +11 -0
  194. package/lib/js/index.d.ts +33 -0
  195. package/lib/js/index.js +33 -0
  196. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  197. package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
  198. package/lib/js/input/MouseHandler.d.ts +16 -0
  199. package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
  200. package/lib/js/input/TouchHandler.d.ts +11 -0
  201. package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
  202. package/lib/js/input/input.d.ts +3 -0
  203. package/{src/input/input.ts → lib/js/input/input.js} +1 -1
  204. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  205. package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
  206. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  207. package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
  208. package/lib/js/layer/GeoImage.d.ts +61 -0
  209. package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
  210. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  211. package/lib/js/layer/GeoTexture2d.js +37 -0
  212. package/lib/js/layer/GeoVideo.d.ts +68 -0
  213. package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
  214. package/lib/js/layer/KML.d.ts +72 -0
  215. package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
  216. package/lib/js/layer/Layer.d.ts +401 -0
  217. package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
  218. package/lib/js/layer/Material.d.ts +34 -0
  219. package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
  220. package/lib/js/layer/Vector.d.ts +243 -0
  221. package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +155 -426
  222. package/lib/js/layer/WMS.d.ts +75 -0
  223. package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
  224. package/lib/js/layer/XYZ.d.ts +149 -0
  225. package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
  226. package/lib/js/layer/index.d.ts +11 -0
  227. package/lib/js/layer/index.js +11 -0
  228. package/lib/js/light/LightSource.d.ts +174 -0
  229. package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
  230. package/lib/js/math/Line2.d.ts +11 -0
  231. package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
  232. package/lib/js/math/Line3.d.ts +28 -0
  233. package/lib/js/math/Line3.js +85 -0
  234. package/lib/js/math/Mat3.d.ts +77 -0
  235. package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
  236. package/lib/js/math/Mat4.d.ts +195 -0
  237. package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
  238. package/lib/js/math/Plane.d.ts +20 -0
  239. package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
  240. package/lib/js/math/Quat.d.ts +373 -0
  241. package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
  242. package/lib/js/math/Ray.d.ts +76 -0
  243. package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
  244. package/lib/js/math/Vec2.d.ts +310 -0
  245. package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
  246. package/lib/js/math/Vec3.d.ts +472 -0
  247. package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
  248. package/lib/js/math/Vec4.d.ts +163 -0
  249. package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
  250. package/lib/js/math/coder.d.ts +51 -0
  251. package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
  252. package/lib/js/math/index.d.ts +11 -0
  253. package/lib/js/math/index.js +11 -0
  254. package/lib/js/math.d.ts +266 -0
  255. package/{src/math.ts → lib/js/math.js} +37 -85
  256. package/lib/js/mercator.d.ts +92 -0
  257. package/{src/mercator.ts → lib/js/mercator.js} +13 -37
  258. package/lib/js/proj/EPSG3857.d.ts +9 -0
  259. package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
  260. package/lib/js/proj/EPSG4326.d.ts +9 -0
  261. package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
  262. package/lib/js/proj/Proj.d.ts +43 -0
  263. package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
  264. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  265. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  266. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  267. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  268. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  269. package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
  270. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  271. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  272. package/lib/js/quadTree/Node.d.ts +61 -0
  273. package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
  274. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  275. package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
  276. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  277. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  278. package/lib/js/quadTree/index.d.ts +12 -0
  279. package/lib/js/quadTree/index.js +12 -0
  280. package/lib/js/quadTree/quadTree.d.ts +40 -0
  281. package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
  282. package/lib/js/renderer/Renderer.d.ts +320 -0
  283. package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +265 -622
  284. package/lib/js/renderer/RendererEvents.d.ts +239 -0
  285. package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +158 -472
  286. package/lib/js/scene/Axes.d.ts +12 -0
  287. package/lib/js/scene/Axes.js +59 -0
  288. package/lib/js/scene/BaseNode.d.ts +61 -0
  289. package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
  290. package/lib/js/scene/Planet.d.ts +623 -0
  291. package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +257 -937
  292. package/lib/js/scene/RenderNode.d.ts +150 -0
  293. package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
  294. package/lib/js/scene/SkyBox.d.ts +13 -0
  295. package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
  296. package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
  297. package/lib/js/scene/index.js +5 -0
  298. package/lib/js/segment/Segment.d.ts +278 -0
  299. package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
  300. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  301. package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
  302. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  303. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  304. package/lib/js/segment/Slice.d.ts +13 -0
  305. package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
  306. package/lib/js/segment/segmentHelper.d.ts +18 -0
  307. package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
  308. package/lib/js/shaders/atmos.d.ts +4 -0
  309. package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
  310. package/lib/js/shaders/billboard.d.ts +3 -0
  311. package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
  312. package/lib/js/shaders/bloom.d.ts +2 -0
  313. package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
  314. package/lib/js/shaders/blur.d.ts +3 -0
  315. package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
  316. package/lib/js/shaders/depth.d.ts +2 -0
  317. package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
  318. package/lib/js/shaders/drawnode.d.ts +8 -0
  319. package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
  320. package/lib/js/shaders/geoObject.d.ts +3 -0
  321. package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
  322. package/lib/js/shaders/label.d.ts +4 -0
  323. package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
  324. package/lib/js/shaders/lumFilter.d.ts +2 -0
  325. package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
  326. package/lib/js/shaders/pickingMask.d.ts +2 -0
  327. package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
  328. package/lib/js/shaders/pointCloud.d.ts +2 -0
  329. package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
  330. package/lib/js/shaders/polyline.d.ts +3 -0
  331. package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
  332. package/lib/js/shaders/ray.d.ts +2 -0
  333. package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
  334. package/lib/js/shaders/screenFrame.d.ts +2 -0
  335. package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
  336. package/lib/js/shaders/skybox.d.ts +2 -0
  337. package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
  338. package/lib/js/shaders/toneMapping.d.ts +2 -0
  339. package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
  340. package/lib/js/shaders/utils.d.ts +1 -0
  341. package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
  342. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  343. package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
  344. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  345. package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
  346. package/lib/js/terrain/Geoid.d.ts +33 -0
  347. package/lib/js/terrain/Geoid.js +191 -0
  348. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  349. package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +84 -241
  350. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  351. package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
  352. package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
  353. package/lib/js/terrain/index.js +5 -0
  354. package/lib/js/ui/Button.d.ts +32 -0
  355. package/lib/js/ui/Button.js +78 -0
  356. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  357. package/lib/js/ui/ButtonGroup.js +41 -0
  358. package/lib/js/ui/Dialog.d.ts +55 -0
  359. package/lib/js/ui/Dialog.js +173 -0
  360. package/lib/js/ui/Slider.d.ts +38 -0
  361. package/lib/js/ui/Slider.js +129 -0
  362. package/lib/js/ui/ToggleButton.d.ts +20 -0
  363. package/lib/js/ui/ToggleButton.js +42 -0
  364. package/lib/js/ui/View.d.ts +37 -0
  365. package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
  366. package/lib/js/ui/icons.d.ts +1 -0
  367. package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
  368. package/lib/js/utils/BaseWorker.d.ts +14 -0
  369. package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
  370. package/lib/js/utils/FontAtlas.d.ts +82 -0
  371. package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +46 -182
  372. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  373. package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
  374. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  375. package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
  376. package/lib/js/utils/Loader.d.ts +63 -0
  377. package/lib/js/utils/Loader.js +156 -0
  378. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  379. package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
  380. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  381. package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
  382. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  383. package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
  384. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  385. package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
  386. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  387. package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
  388. package/lib/js/utils/colorTable.d.ts +3 -0
  389. package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
  390. package/lib/js/utils/earcut.d.ts +7 -0
  391. package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
  392. package/lib/js/utils/objParser.d.ts +24 -0
  393. package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
  394. package/lib/js/utils/shared.d.ts +267 -0
  395. package/{src/utils/shared.ts → lib/js/utils/shared.js} +185 -342
  396. package/lib/js/utils/units.d.ts +16 -0
  397. package/lib/js/utils/units.js +61 -0
  398. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  399. package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
  400. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  401. package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
  402. package/lib/js/webgl/Handler.d.ts +473 -0
  403. package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
  404. package/lib/js/webgl/Multisample.d.ts +27 -0
  405. package/lib/js/webgl/Multisample.js +77 -0
  406. package/lib/js/webgl/Program.d.ts +159 -0
  407. package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
  408. package/lib/js/webgl/ProgramController.d.ts +86 -0
  409. package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
  410. package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
  411. package/lib/js/webgl/index.js +6 -0
  412. package/lib/js/webgl/types.d.ts +9 -0
  413. package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
  414. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  415. package/lib/js/webgl/variableHandlers.js +78 -0
  416. package/package.json +23 -34
  417. package/dist/@openglobus/og.esm.js +0 -2
  418. package/dist/@openglobus/og.esm.js.map +0 -1
  419. package/dist/@openglobus/og.umd.js +0 -2
  420. package/dist/@openglobus/og.umd.js.map +0 -1
  421. package/src/Deferred.ts +0 -17
  422. package/src/control/MouseWheelZoomControl.ts +0 -269
  423. package/src/control/ScaleControl.ts +0 -131
  424. package/src/control/SegmentBoundVisualization.ts +0 -50
  425. package/src/control/ShowFps.ts +0 -28
  426. package/src/control/ToggleWireframe.ts +0 -35
  427. package/src/control/ruler/Ruler.ts +0 -35
  428. package/src/control/ruler/RulerScene.ts +0 -437
  429. package/src/control/timeline/timelineUtils.ts +0 -133
  430. package/src/ellipsoid/index.ts +0 -4
  431. package/src/entity/Geometry.ts +0 -486
  432. package/src/index.ts +0 -173
  433. package/src/layer/GeoTexture2d.ts +0 -56
  434. package/src/layer/index.ts +0 -12
  435. package/src/math/Line3.ts +0 -162
  436. package/src/math/index.ts +0 -26
  437. package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
  438. package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
  439. package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
  440. package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
  441. package/src/quadTree/index.ts +0 -14
  442. package/src/scene/Axes.ts +0 -78
  443. package/src/segment/SegmentLonLatWgs84.ts +0 -33
  444. package/src/terrain/Geoid.ts +0 -273
  445. package/src/ui/Button.ts +0 -121
  446. package/src/ui/ButtonGroup.ts +0 -63
  447. package/src/ui/Dialog.ts +0 -244
  448. package/src/ui/Slider.ts +0 -188
  449. package/src/ui/ToggleButton.ts +0 -68
  450. package/src/utils/Loader.ts +0 -247
  451. package/src/utils/units.ts +0 -78
  452. package/src/webgl/Multisample.ts +0 -153
  453. package/src/webgl/variableHandlers.ts +0 -114
  454. /package/{dist → lib}/@openglobus/og.css +0 -0
  455. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
  456. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
  457. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  458. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
  459. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
  460. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  461. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
  462. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
  463. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  464. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
  465. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
  466. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  467. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
  468. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
  469. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  470. /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
  471. /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
  472. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
  473. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
  474. /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
  475. /package/{dist → lib}/@openglobus/res/night.png +0 -0
  476. /package/{dist → lib}/@openglobus/res/spec.png +0 -0
@@ -1,249 +1,45 @@
1
- import {Events, EventsHandler, EventCallback} from "../Events";
2
- import {input} from "../input/input";
3
- import {KeyboardHandler} from "../input/KeyboardHandler";
4
- import {MouseHandler, MouseHandlerEvent, MouseEventExt} from "../input/MouseHandler";
5
- import {Renderer} from "./Renderer";
6
- import {TouchEventExt, TouchHandler} from "../input/TouchHandler";
7
- import {Vec2} from "../math/Vec2";
8
- import {NumberArray3, Vec3} from "../math/Vec3";
9
-
10
- export type RendererEventsHandler = RendererEvents & EventsHandler<RendererEventsType>;
11
-
12
- export function createRendererEvents(renderer: Renderer) {
1
+ import { Events } from "../Events";
2
+ import { input } from "../input/input";
3
+ import { KeyboardHandler } from "../input/KeyboardHandler";
4
+ import { MouseHandler } from "../input/MouseHandler";
5
+ import { TouchHandler } from "../input/TouchHandler";
6
+ import { Vec2 } from "../math/Vec2";
7
+ import { Vec3 } from "../math/Vec3";
8
+ export function createRendererEvents(renderer) {
13
9
  return new RendererEvents(renderer);
14
10
  }
15
-
16
- export type RendererEventsType = [
17
- "draw",
18
- "postdraw",
19
- "resize",
20
- "resizeend",
21
- "mouseenter",
22
- "mouseleave",
23
- "mousemove",
24
- "mousestop",
25
- "lclick",
26
- "rclick",
27
- "mclick",
28
- "ldblclick",
29
- "rdblclick",
30
- "mdblclick",
31
- "lup",
32
- "rup",
33
- "mup",
34
- "ldown",
35
- "rdown",
36
- "mdown",
37
- "lhold",
38
- "rhold",
39
- "mhold",
40
- "mousewheel",
41
- "touchstart",
42
- "touchend",
43
- "touchcancel",
44
- "touchmove",
45
- "doubletouch",
46
- "touchleave",
47
- "touchenter"
48
- ];
49
-
50
- export interface IBaseInputState {
51
- /** Current screen mouse X position. */
52
- clientX: number;
53
- /** Current screen mouse Y position. */
54
- clientY: number;
55
- /** Current screen mouse position. */
56
- pos: Vec2;
57
- /** Current touch X - coordinate. */
58
- x: number;
59
- /** Current touch Y - coordinate. */
60
- y: number;
61
- /** Current touch X - coordinate from 0 to 1 */
62
- nx: number;
63
- /** Current touch Y - coordinate from 0 to 1 */
64
- ny: number;
65
- /** Previous touch X coordinate. */
66
- prev_x: number;
67
- /** Previous touch Y coordinate. */
68
- prev_y: number,
69
- /** Screen touch position world direction. */
70
- direction: Vec3;
71
- /** Current touched(picking) object. */
72
- pickingObject: any | null;
73
- /** Renderer instance. */
74
- renderer: Renderer;
75
- /** Touching is moving now. */
76
- moving: boolean;
77
- }
78
-
79
- export interface IMouseState extends IBaseInputState {
80
- /** Left mouse button has stopped pushing down right now.*/
81
- leftButtonUp: boolean;
82
- /** Right mouse button has stopped pushing down right now.*/
83
- rightButtonUp: boolean;
84
- /** Middle mouse button has stopped pushing down right now.*/
85
- middleButtonUp: boolean;
86
- /** Left mouse button has pushed now.*/
87
- leftButtonDown: boolean;
88
- /** Right mouse button has pushed now.*/
89
- rightButtonDown: boolean;
90
- /** Middle mouse button has pushed now.*/
91
- middleButtonDown: boolean;
92
- /** Left mouse button is pushing.*/
93
- leftButtonHold: boolean;
94
- /** Right mouse button is pushing.*/
95
- rightButtonHold: boolean;
96
- /** Middle mouse button is pushing.*/
97
- middleButtonHold: boolean;
98
- /** Left mouse button has clicked twice now.*/
99
- leftButtonDoubleClick: boolean;
100
- /** Right mouse button has clicked twice now.*/
101
- rightButtonDoubleClick: boolean;
102
- /** Middle mouse button has clicked twice now.*/
103
- middleButtonDoubleClick: boolean;
104
- /** Left mouse button has clicked now. */
105
- leftButtonClick: boolean;
106
- /** Right mouse button has clicked now. */
107
- rightButtonClick: boolean;
108
- /** Middle mouse button has clicked now. */
109
- middleButtonClick: boolean;
110
- /** Mouse has just stopped now. */
111
- justStopped: boolean;
112
- /** Mose double click delay response time.*/
113
- doubleClickDelay: number;
114
- /** Mose click delay response time.*/
115
- clickDelay: number;
116
- /** Mouse wheel. */
117
- wheelDelta: number;
118
- /** JavaScript mouse system event message. */
119
- sys: MouseEvent | null;
120
- }
121
-
122
- export interface ITouchState extends IBaseInputState {
123
- /** Touch has ended right now.*/
124
- touchEnd: boolean;
125
- /** Touch has started right now.*/
126
- touchStart: boolean;
127
- /** Touch canceled.*/
128
- touchCancel: boolean;
129
- /** Touched twice.*/
130
- doubleTouch: boolean;
131
- /** Double touching responce delay.*/
132
- doubleTouchDelay: number;
133
- /** Double touching responce radius in screen pixels.*/
134
- doubleTouchRadius: number;
135
- /** JavaScript mouse system event message. */
136
- sys: TouchEventExt | null;
137
- }
138
-
139
11
  const LB_M = 0b0001;
140
12
  const RB_M = 0b0010;
141
13
  const MB_M = 0b0100;
142
-
143
14
  let __skipFrames__ = 0;
144
15
  const MAX_SKIP_FRAMES_ON_BLACK = 15;
145
-
146
- const ISBLACK = (c: NumberArray3 | Uint8Array): boolean => !(c[0] || c[1] || c[2]);
147
- const NOTBLACK = (c: NumberArray3 | Uint8Array): boolean => !!(c[0] || c[1] || c[2]);
148
-
16
+ const ISBLACK = (c) => !(c[0] || c[1] || c[2]);
17
+ const NOTBLACK = (c) => !!(c[0] || c[1] || c[2]);
149
18
  /**
150
19
  * Stores current picking rgb color.
151
20
  * @type {Array.<number>} - (exactly 3 entries)
152
21
  */
153
22
  let _currPickingColor = new Uint8Array(4);
154
23
  let _tempCurrPickingColor = new Uint8Array(4);
155
-
156
24
  /**
157
25
  * Stores previous picked rgb color.
158
26
  * @type {Array.<number>} - (exactly 3 entries)
159
27
  */
160
28
  let _prevPickingColor = new Uint8Array(4);
161
-
162
29
  /**
163
30
  * Renderer events handler.
164
31
  * @class
165
32
  * @param {Renderer} renderer - Renderer object, events that works for.
166
33
  */
167
- class RendererEvents extends Events<RendererEventsType> implements RendererEventsHandler {
168
- /**
169
- * Assigned renderer.
170
- * @public
171
- * @type {Renderer}
172
- */
173
- public renderer: Renderer;
174
-
175
- /**
176
- * Low level touch events handler.
177
- * @protected
178
- * @type {TouchHandler}
179
- */
180
- protected _touchHandler: TouchHandler;
181
-
182
- /**
183
- * Low level mouse events handler.
184
- * @protected
185
- * @type {MouseHandler}
186
- */
187
- protected _mouseHandler: MouseHandler;
188
-
189
- /**
190
- * Low level keyboard events handler.
191
- * @protected
192
- * @type {KeyboardHandler}
193
- */
194
- protected _keyboardHandler: KeyboardHandler;
195
-
196
- protected _active: boolean;
197
-
198
- public clickRadius: number;
199
-
200
- /**
201
- * Current mouse state.
202
- * @public
203
- * @type {IMouseState}
204
- */
205
- public mouseState: IMouseState;
206
-
207
- /**
208
- * Current touch state.
209
- * @public
210
- * @type {ITouchState}
211
- */
212
- public touchState: ITouchState;
213
-
214
- protected _dblTchCoords: Vec2;
215
- protected _oneTouchStart: boolean;
216
- protected _dblTchBegins: number;
217
- protected _mousestopThread: any | null;
218
- protected _ldblClkBegins: number;
219
- protected _rdblClkBegins: number;
220
- protected _mdblClkBegins: number;
221
- protected _lClkBegins: number;
222
- protected _rClkBegins: number;
223
- protected _mClkBegins: number;
224
- protected _lclickX: number;
225
- protected _lclickY: number;
226
- protected _rclickX: number;
227
- protected _rclickY: number;
228
- protected _mclickX: number;
229
- protected _mclickY: number;
230
-
231
- constructor(renderer: Renderer) {
232
-
34
+ class RendererEvents extends Events {
35
+ constructor(renderer) {
233
36
  super(RENDERER_EVENTS);
234
-
235
37
  this.renderer = renderer;
236
-
237
- this._touchHandler = new TouchHandler(renderer.handler.canvas!);
238
-
239
- this._mouseHandler = new MouseHandler(renderer.handler.canvas!);
240
-
38
+ this._touchHandler = new TouchHandler(renderer.handler.canvas);
39
+ this._mouseHandler = new MouseHandler(renderer.handler.canvas);
241
40
  this._keyboardHandler = new KeyboardHandler();
242
-
243
41
  this._active = true;
244
-
245
42
  this.clickRadius = 15;
246
-
247
43
  this.mouseState = {
248
44
  clientX: 0,
249
45
  clientY: 0,
@@ -279,7 +75,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
279
75
  pickingObject: null,
280
76
  renderer: renderer
281
77
  };
282
-
283
78
  this.touchState = {
284
79
  moving: false,
285
80
  touchEnd: false,
@@ -302,7 +97,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
302
97
  pickingObject: null,
303
98
  renderer: renderer
304
99
  };
305
-
100
+ this._isMouseInside = false;
101
+ this._entityPickingEventsActive = true;
306
102
  this._dblTchCoords = new Vec2();
307
103
  this._oneTouchStart = false;
308
104
  this._dblTchBegins = 0;
@@ -320,327 +116,278 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
320
116
  this._mclickX = 0;
321
117
  this._mclickY = 0;
322
118
  }
323
-
324
- public pointerEvent(): boolean {
325
- let ms = this.mouseState,
326
- ts = this.touchState;
327
- return (
328
- ms.moving ||
119
+ pointerEvent() {
120
+ let ms = this.mouseState, ts = this.touchState;
121
+ return (ms.moving ||
329
122
  ms.justStopped ||
330
123
  ts.moving ||
331
124
  ts.touchStart ||
332
125
  ts.touchEnd ||
333
- ms.wheelDelta !== 0
334
- )
126
+ ms.wheelDelta !== 0);
335
127
  }
336
-
337
- public get active(): boolean {
128
+ get active() {
338
129
  return this._active;
339
130
  }
340
-
341
- public set active(isActive: boolean) {
131
+ set active(isActive) {
342
132
  this._active = isActive;
343
133
  this._keyboardHandler.setActivity(isActive);
344
134
  }
345
-
346
135
  /**
347
136
  * Used in render node frame.
348
137
  * @public
349
138
  */
350
- public handleEvents() {
139
+ handleEvents() {
351
140
  if (this._active) {
352
- this.mouseState.direction = this.renderer.activeCamera!.unproject(
353
- this.mouseState.x,
354
- this.mouseState.y
355
- );
141
+ this.mouseState.direction = this.renderer.activeCamera.unproject(this.mouseState.x, this.mouseState.y);
356
142
  //
357
143
  // TODO: Replace in some other place with a thought that we do
358
144
  // not need to make unproject when we do not make touching
359
- this.touchState.direction = this.renderer.activeCamera!.unproject(
360
- this.touchState.x,
361
- this.touchState.y
362
- );
363
-
145
+ this.touchState.direction = this.renderer.activeCamera.unproject(this.touchState.x, this.touchState.y);
364
146
  this._keyboardHandler.handleEvents();
365
147
  this.handleMouseEvents();
366
148
  this.handleTouchEvents();
367
149
  this.entityPickingEvents();
368
150
  }
369
151
  }
370
-
371
- public override on(name: string, p0: EventCallback | number, p1?: number | EventCallback, p2?: any, keyPriority?: number) {
152
+ on(name, p0, p1, p2, keyPriority) {
372
153
  if (name === "keypress" || name === "charkeypress" || name === "keyfree") {
373
- this._keyboardHandler.addEvent(name, p0 as number, p1 as EventCallback, p2, keyPriority);
374
- } else {
375
- super.on(name, p0 as EventCallback, p1, p2);
154
+ this._keyboardHandler.addEvent(name, p0, p1, p2, keyPriority);
155
+ }
156
+ else {
157
+ super.on(name, p0, p1, p2);
376
158
  }
377
159
  }
378
-
379
- public override off(name: string, p1?: EventCallback | number | null, p2?: EventCallback) {
160
+ off(name, p1, p2) {
380
161
  if (name === "keypress" || name === "charkeypress" || name === "keyfree") {
381
- this._keyboardHandler.removeEvent(name, p1 as number, p2 as EventCallback);
382
- } else {
383
- super.off(name, p1 as EventCallback);
162
+ this._keyboardHandler.removeEvent(name, p1, p2);
163
+ }
164
+ else {
165
+ super.off(name, p1);
384
166
  }
385
167
  }
386
-
387
168
  /**
388
169
  * Check key is pressed.
389
170
  * @public
390
171
  * @param {number} keyCode - Key code
391
172
  * @return {boolean}
392
173
  */
393
- public isKeyPressed(keyCode: number): boolean {
174
+ isKeyPressed(keyCode) {
394
175
  return this._keyboardHandler.isKeyPressed(keyCode);
395
176
  }
396
-
397
- public releaseKeys() {
177
+ releaseKeys() {
398
178
  this._keyboardHandler.releaseKeys();
399
179
  }
400
-
401
180
  /**
402
181
  * Renderer events initialization.
403
182
  * @public
404
183
  */
405
- public initialize() {
184
+ initialize() {
406
185
  this._mouseHandler.setEvent("mouseup", this, this.onMouseUp);
407
186
  this._mouseHandler.setEvent("mousemove", this, this.onMouseMove);
408
187
  this._mouseHandler.setEvent("mousedown", this, this.onMouseDown);
409
188
  this._mouseHandler.setEvent("mousewheel", this, this.onMouseWheel);
410
189
  this._mouseHandler.setEvent("mouseleave", this, this.onMouseLeave);
411
190
  this._mouseHandler.setEvent("mouseenter", this, this.onMouseEnter);
412
-
413
191
  this._touchHandler.setEvent("touchstart", this, this.onTouchStart);
414
192
  this._touchHandler.setEvent("touchend", this, this.onTouchEnd);
415
193
  this._touchHandler.setEvent("touchcancel", this, this.onTouchCancel);
416
194
  this._touchHandler.setEvent("touchmove", this, this.onTouchMove);
417
195
  }
418
-
419
196
  /**
420
197
  * @protected
421
198
  */
422
- protected onMouseWheel(event: MouseEventExt) {
199
+ onMouseWheel(event) {
423
200
  this.mouseState.sys = event;
424
201
  this.mouseState.wheelDelta = event.wheelDelta || 0;
425
202
  }
426
-
427
- public updateButtonsStates(buttons: number) {
203
+ updateButtonsStates(buttons) {
428
204
  let ms = this.mouseState;
429
205
  if ((buttons & LB_M) && ms.leftButtonDown) {
430
206
  ms.leftButtonDown = true;
431
- } else {
207
+ }
208
+ else {
432
209
  ms.leftButtonHold = false;
433
210
  ms.leftButtonDown = false;
434
211
  }
435
-
436
212
  if ((buttons & RB_M) && ms.rightButtonDown) {
437
213
  ms.rightButtonDown = true;
438
- } else {
214
+ }
215
+ else {
439
216
  ms.rightButtonHold = false;
440
217
  ms.rightButtonDown = false;
441
218
  }
442
-
443
219
  if ((buttons & MB_M) && ms.middleButtonDown) {
444
220
  ms.middleButtonDown = true;
445
- } else {
221
+ }
222
+ else {
446
223
  ms.middleButtonHold = false;
447
224
  ms.middleButtonDown = false;
448
225
  }
449
226
  }
450
-
451
- protected onMouseMove(sys: MouseEvent, event?: MouseHandlerEvent) {
227
+ onMouseMove(sys, event) {
452
228
  let ms = this.mouseState;
453
229
  this.updateButtonsStates(sys.buttons);
454
230
  ms.sys = sys;
455
-
456
- let ex = event!.clientX,
457
- ey = event!.clientY,
458
- r = this.clickRadius;
459
-
231
+ let ex = event.clientX, ey = event.clientY, r = this.clickRadius;
460
232
  if (Math.abs(this._lclickX - ex) >= r && Math.abs(this._lclickY - ey) >= r) {
461
233
  this._ldblClkBegins = 0;
462
234
  this._lClkBegins = 0;
463
235
  }
464
-
465
236
  if (Math.abs(this._rclickX - ex) >= r && Math.abs(this._rclickY - ey) >= r) {
466
237
  this._rdblClkBegins = 0;
467
238
  this._rClkBegins = 0;
468
239
  }
469
-
470
240
  if (Math.abs(this._mclickX - ex) >= r && Math.abs(this._mclickY - ey) >= r) {
471
241
  this._mdblClkBegins = 0;
472
242
  this._mClkBegins = 0;
473
243
  }
474
-
475
- if (ms.clientX === event!.clientX && ms.clientY === event!.clientY) {
244
+ if (ms.clientX === event.clientX && ms.clientY === event.clientY) {
476
245
  return;
477
246
  }
478
-
479
- ms.clientX = event!.clientX;
480
- ms.clientY = event!.clientY;
481
-
247
+ ms.clientX = event.clientX;
248
+ ms.clientY = event.clientY;
482
249
  let h = this.renderer.handler;
483
-
484
- ms.pos.x = ms.x = event!.clientX * h.pixelRatio;
485
- ms.pos.y = ms.y = event!.clientY * h.pixelRatio;
486
-
487
- ms.nx = ms.x / h.canvas!.width;
488
- ms.ny = ms.y / h.canvas!.height;
489
-
250
+ ms.pos.x = ms.x = event.clientX * h.pixelRatio;
251
+ ms.pos.y = ms.y = event.clientY * h.pixelRatio;
252
+ ms.nx = ms.x / h.canvas.width;
253
+ ms.ny = ms.y / h.canvas.height;
490
254
  ms.moving = true;
491
-
492
255
  //dispatch stop mouse event
493
256
  clearTimeout(this._mousestopThread);
494
257
  this._mousestopThread = setTimeout(function () {
495
258
  ms.justStopped = true;
496
259
  }, 100);
497
260
  }
498
-
499
- protected onMouseLeave(sys: MouseEvent) {
261
+ onMouseLeave(sys) {
262
+ this._isMouseInside = false;
500
263
  this.mouseState.sys = sys;
501
- this.dispatch((this as RendererEventsHandler).mouseleave, this.mouseState);
264
+ this.dispatch(this.mouseleave, this.mouseState);
502
265
  }
503
-
504
- protected onMouseEnter(sys: MouseEvent) {
266
+ onMouseEnter(sys) {
267
+ this._isMouseInside = true;
505
268
  this.mouseState.sys = sys;
506
- this.dispatch((this as RendererEventsHandler).mouseenter, this.mouseState);
269
+ this.dispatch(this.mouseenter, this.mouseState);
507
270
  }
508
-
509
- protected onMouseDown(sys: MouseEvent, event?: MouseHandlerEvent) {
510
- if (event!.button === input.MB_LEFT) {
271
+ onMouseDown(sys, event) {
272
+ if (event.button === input.MB_LEFT) {
511
273
  this._lClkBegins = window.performance.now();
512
- this._lclickX = event!.clientX;
513
- this._lclickY = event!.clientY;
274
+ this._lclickX = event.clientX;
275
+ this._lclickY = event.clientY;
514
276
  this.mouseState.sys = sys;
515
277
  this.mouseState.leftButtonDown = true;
516
- } else if (event!.button === input.MB_RIGHT) {
278
+ }
279
+ else if (event.button === input.MB_RIGHT) {
517
280
  this._rClkBegins = window.performance.now();
518
- this._rclickX = event!.clientX;
519
- this._rclickY = event!.clientY;
281
+ this._rclickX = event.clientX;
282
+ this._rclickY = event.clientY;
520
283
  this.mouseState.sys = sys;
521
284
  this.mouseState.rightButtonDown = true;
522
- } else if (event!.button === input.MB_MIDDLE) {
285
+ }
286
+ else if (event.button === input.MB_MIDDLE) {
523
287
  this._mClkBegins = window.performance.now();
524
- this._mclickX = event!.clientX;
525
- this._mclickY = event!.clientY;
288
+ this._mclickX = event.clientX;
289
+ this._mclickY = event.clientY;
526
290
  this.mouseState.sys = sys;
527
291
  this.mouseState.middleButtonDown = true;
528
292
  }
529
293
  }
530
-
531
- protected onMouseUp(sys: MouseEvent, event?: MouseHandlerEvent) {
294
+ onMouseUp(sys, event) {
532
295
  let ms = this.mouseState;
533
296
  ms.sys = sys;
534
297
  let t = window.performance.now();
535
-
536
- if (event!.button === input.MB_LEFT) {
298
+ if (event.button === input.MB_LEFT) {
537
299
  ms.leftButtonDown = false;
538
300
  ms.leftButtonUp = true;
539
-
540
- if (
541
- Math.abs(this._lclickX - event!.clientX) < this.clickRadius &&
542
- Math.abs(this._lclickY - event!.clientY) < this.clickRadius &&
543
- t - this._lClkBegins <= ms.clickDelay
544
- ) {
301
+ if (Math.abs(this._lclickX - event.clientX) < this.clickRadius &&
302
+ Math.abs(this._lclickY - event.clientY) < this.clickRadius &&
303
+ t - this._lClkBegins <= ms.clickDelay) {
545
304
  if (this._ldblClkBegins) {
546
305
  let deltatime = window.performance.now() - this._ldblClkBegins;
547
306
  if (deltatime <= ms.doubleClickDelay) {
548
307
  ms.leftButtonDoubleClick = true;
549
308
  }
550
309
  this._ldblClkBegins = 0;
551
- } else {
310
+ }
311
+ else {
552
312
  this._ldblClkBegins = window.performance.now();
553
313
  }
554
-
555
314
  ms.leftButtonClick = true;
556
315
  this._lClkBegins = 0;
557
316
  }
558
- } else if (event!.button === input.MB_RIGHT) {
317
+ }
318
+ else if (event.button === input.MB_RIGHT) {
559
319
  ms.rightButtonDown = false;
560
320
  ms.rightButtonUp = true;
561
-
562
- if (
563
- Math.abs(this._rclickX - event!.clientX) < this.clickRadius &&
564
- Math.abs(this._rclickY - event!.clientY) < this.clickRadius &&
565
- t - this._rClkBegins <= ms.clickDelay
566
- ) {
321
+ if (Math.abs(this._rclickX - event.clientX) < this.clickRadius &&
322
+ Math.abs(this._rclickY - event.clientY) < this.clickRadius &&
323
+ t - this._rClkBegins <= ms.clickDelay) {
567
324
  if (this._rdblClkBegins) {
568
325
  let deltatime = window.performance.now() - this._rdblClkBegins;
569
326
  if (deltatime <= ms.doubleClickDelay) {
570
327
  ms.rightButtonDoubleClick = true;
571
328
  }
572
329
  this._rdblClkBegins = 0;
573
- } else {
330
+ }
331
+ else {
574
332
  this._rdblClkBegins = window.performance.now();
575
333
  }
576
-
577
334
  ms.rightButtonClick = true;
578
335
  this._rClkBegins = 0;
579
336
  }
580
- } else if (event!.button === input.MB_MIDDLE) {
337
+ }
338
+ else if (event.button === input.MB_MIDDLE) {
581
339
  ms.middleButtonDown = false;
582
340
  ms.middleButtonUp = true;
583
-
584
- if (
585
- Math.abs(this._mclickX - event!.clientX) < this.clickRadius &&
586
- Math.abs(this._mclickY - event!.clientY) < this.clickRadius &&
587
- t - this._mClkBegins <= ms.clickDelay
588
- ) {
341
+ if (Math.abs(this._mclickX - event.clientX) < this.clickRadius &&
342
+ Math.abs(this._mclickY - event.clientY) < this.clickRadius &&
343
+ t - this._mClkBegins <= ms.clickDelay) {
589
344
  if (this._mdblClkBegins) {
590
345
  let deltatime = window.performance.now() - this._mdblClkBegins;
591
346
  if (deltatime <= ms.doubleClickDelay) {
592
347
  ms.middleButtonDoubleClick = true;
593
348
  }
594
349
  this._mdblClkBegins = 0;
595
- } else {
350
+ }
351
+ else {
596
352
  this._mdblClkBegins = window.performance.now();
597
353
  }
598
-
599
354
  ms.middleButtonClick = true;
600
355
  this._mClkBegins = 0;
601
356
  }
602
357
  }
603
358
  }
604
-
605
- protected onTouchStart(event: TouchEventExt) {
359
+ onTouchStart(event) {
606
360
  let ts = this.touchState;
607
361
  ts.sys = event;
608
-
609
- ts.clientX = event.touches.item(0)!.clientX - event.offsetLeft;
610
- ts.clientY = event.touches.item(0)!.clientY - event.offsetTop;
611
-
362
+ ts.clientX = event.touches.item(0).clientX - event.offsetLeft;
363
+ ts.clientY = event.touches.item(0).clientY - event.offsetTop;
612
364
  let h = this.renderer.handler;
613
-
614
365
  ts.pos.x = ts.x = ts.clientX * h.pixelRatio;
615
366
  ts.pos.y = ts.y = ts.clientY * h.pixelRatio;
616
-
617
- ts.nx = ts.x / h.canvas!.width;
618
- ts.ny = ts.y / h.canvas!.height;
367
+ ts.nx = ts.x / h.canvas.width;
368
+ ts.ny = ts.y / h.canvas.height;
619
369
  ts.prev_x = ts.x;
620
370
  ts.prev_y = ts.y;
621
371
  ts.touchStart = true;
622
-
623
372
  if (event.touches.length === 1) {
624
373
  this._dblTchCoords.x = ts.x;
625
374
  this._dblTchCoords.y = ts.y;
626
375
  this._oneTouchStart = true;
627
- } else {
376
+ }
377
+ else {
628
378
  this._oneTouchStart = false;
629
379
  }
630
380
  }
631
-
632
381
  /**
633
382
  * @protected
634
383
  */
635
- protected onTouchEnd(event: TouchEventExt) {
384
+ onTouchEnd(event) {
636
385
  let ts = this.touchState;
637
386
  ts.sys = event;
638
387
  ts.touchEnd = true;
639
-
640
388
  if (event.touches.length === 0) {
641
389
  ts.prev_x = ts.x;
642
390
  ts.prev_y = ts.y;
643
-
644
391
  if (this._oneTouchStart) {
645
392
  if (this._dblTchBegins) {
646
393
  let deltatime = window.performance.now() - this._dblTchBegins;
@@ -654,83 +401,80 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
654
401
  }
655
402
  }
656
403
  }
657
-
658
- protected onTouchCancel(event: TouchEventExt) {
404
+ onTouchCancel(event) {
659
405
  let ts = this.touchState;
660
406
  ts.sys = event;
661
407
  ts.touchCancel = true;
662
408
  }
663
-
664
- protected onTouchMove(event: TouchEventExt) {
409
+ onTouchMove(event) {
665
410
  let ts = this.touchState;
666
-
667
- ts.clientX = event.touches.item(0)!.clientX - event.offsetLeft;
668
- ts.clientY = event.touches.item(0)!.clientY - event.offsetTop;
669
-
411
+ ts.clientX = event.touches.item(0).clientX - event.offsetLeft;
412
+ ts.clientY = event.touches.item(0).clientY - event.offsetTop;
670
413
  let h = this.renderer.handler;
671
-
672
414
  ts.x = ts.clientX * h.pixelRatio;
673
415
  ts.y = ts.clientY * h.pixelRatio;
674
-
675
- ts.nx = ts.x / h.canvas!.width;
676
- ts.ny = ts.y / h.canvas!.height;
677
-
416
+ ts.nx = ts.x / h.canvas.width;
417
+ ts.ny = ts.y / h.canvas.height;
678
418
  ts.sys = event;
679
419
  ts.moving = true;
680
-
681
- let dX = ts.x - ts.prev_x
682
- let dY = ts.y - ts.prev_y
420
+ let dX = ts.x - ts.prev_x;
421
+ let dY = ts.y - ts.prev_y;
683
422
  if (Math.abs(dX) > 9 || Math.abs(dY) > 9) {
684
423
  this._dblTchBegins = 0;
685
424
  this._oneTouchStart = false;
686
425
  }
687
426
  }
688
-
689
- protected entityPickingEvents() {
690
- let ts = this.touchState,
691
- ms = this.mouseState;
692
-
693
- if (!(ms.leftButtonHold || ms.rightButtonHold || ms.middleButtonHold)) {
694
-
427
+ entityPickingEvents() {
428
+ let ts = this.touchState, ms = this.mouseState;
429
+ // Triggers mouseleave when mouse goes outside the viewport
430
+ if (this._isMouseInside !== this._entityPickingEventsActive) {
431
+ this._entityPickingEventsActive = this._isMouseInside;
432
+ if (!this._entityPickingEventsActive) {
433
+ let r = this.renderer;
434
+ let c = _currPickingColor;
435
+ let co = r.getPickingObjectArr(c);
436
+ if (co) {
437
+ let pe = co.rendererEvents;
438
+ ms.pickingObject = co;
439
+ pe && pe.dispatch(pe.mouseleave, ms);
440
+ ts.pickingObject = co;
441
+ pe && pe.dispatch(pe.touchleave, ts);
442
+ }
443
+ _currPickingColor[0] = _currPickingColor[1] = _currPickingColor[2] = _currPickingColor[3] =
444
+ _prevPickingColor[0] = _prevPickingColor[1] = _prevPickingColor[2] = _prevPickingColor[3] =
445
+ _tempCurrPickingColor[0] = _tempCurrPickingColor[1] = _tempCurrPickingColor[2] = _tempCurrPickingColor[3] = 0.0;
446
+ }
447
+ }
448
+ if (this._isMouseInside && !(ms.leftButtonHold || ms.rightButtonHold || ms.middleButtonHold)) {
695
449
  let r = this.renderer;
696
- let c = _currPickingColor,
697
- p = _prevPickingColor,
698
- t = _tempCurrPickingColor;
699
-
450
+ let c = _currPickingColor, p = _prevPickingColor, t = _tempCurrPickingColor;
700
451
  if (ts.x || ts.y) {
701
452
  r.readPickingColor(ts.nx, 1 - ts.ny, t);
702
- } else {
453
+ }
454
+ else {
703
455
  r.readPickingColor(ms.nx, 1 - ms.ny, t);
704
456
  }
705
-
706
457
  // current is black
707
458
  if (ISBLACK(t) && __skipFrames__++ < MAX_SKIP_FRAMES_ON_BLACK) {
708
459
  return;
709
460
  }
710
461
  __skipFrames__ = 0;
711
-
712
462
  p[0] = c[0];
713
463
  p[1] = c[1];
714
464
  p[2] = c[2];
715
-
716
465
  c[0] = t[0];
717
466
  c[1] = t[1];
718
467
  c[2] = t[2];
719
-
720
468
  ms.pickingObject = null;
721
469
  ts.pickingObject = null;
722
-
723
- let co = r.getPickingObjectArr<any>(c);
724
-
470
+ let co = r.getPickingObjectArr(c);
725
471
  ms.pickingObject = co;
726
472
  ts.pickingObject = co;
727
-
728
473
  //object is changed
729
474
  if (c[0] !== p[0] || c[1] !== p[1] || c[2] !== p[2]) {
730
-
731
475
  //current is black
732
476
  if (ISBLACK(c)) {
733
- let po = r.getPickingObjectArr<any>(p);
477
+ let po = r.getPickingObjectArr(p);
734
478
  if (po) {
735
479
  let pe = po.rendererEvents;
736
480
  ms.pickingObject = po;
@@ -738,12 +482,12 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
738
482
  ts.pickingObject = po;
739
483
  pe && pe.dispatch(pe.touchleave, ts);
740
484
  }
741
- } else {
485
+ }
486
+ else {
742
487
  //current ia not black
743
-
744
488
  //previous is not black
745
489
  if (NOTBLACK(p)) {
746
- let po = r.getPickingObjectArr<any>(p);
490
+ let po = r.getPickingObjectArr(p);
747
491
  if (po) {
748
492
  let pe = po.rendererEvents;
749
493
  ms.pickingObject = po;
@@ -752,7 +496,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
752
496
  pe && pe.dispatch(pe.touchleave, ts);
753
497
  }
754
498
  }
755
-
756
499
  if (co) {
757
500
  let ce = co.rendererEvents;
758
501
  ms.pickingObject = co;
@@ -764,13 +507,10 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
764
507
  }
765
508
  }
766
509
  }
767
-
768
- protected handleMouseEvents() {
769
- let _this = this as RendererEventsHandler;
510
+ handleMouseEvents() {
511
+ let _this = this;
770
512
  let ms = this.mouseState;
771
- let po = ms.pickingObject,
772
- pe = null;
773
-
513
+ let po = ms.pickingObject, pe = null;
774
514
  if (ms.leftButtonClick) {
775
515
  if (po) {
776
516
  pe = po.rendererEvents;
@@ -779,7 +519,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
779
519
  this.dispatch(_this.lclick, ms);
780
520
  ms.leftButtonClick = false;
781
521
  }
782
-
783
522
  if (ms.rightButtonClick) {
784
523
  if (po) {
785
524
  pe = po.rendererEvents;
@@ -788,7 +527,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
788
527
  this.dispatch(_this.rclick, ms);
789
528
  ms.rightButtonClick = false;
790
529
  }
791
-
792
530
  if (ms.middleButtonClick) {
793
531
  if (po) {
794
532
  pe = po.rendererEvents;
@@ -797,7 +535,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
797
535
  this.dispatch(_this.mclick, ms);
798
536
  ms.middleButtonClick = false;
799
537
  }
800
-
801
538
  if (ms.leftButtonDown) {
802
539
  if (ms.leftButtonHold) {
803
540
  if (po) {
@@ -805,7 +542,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
805
542
  pe && pe.dispatch(pe.lhold, ms);
806
543
  }
807
544
  this.dispatch(_this.lhold, ms);
808
- } else {
545
+ }
546
+ else {
809
547
  ms.leftButtonHold = true;
810
548
  if (po) {
811
549
  pe = po.rendererEvents;
@@ -814,7 +552,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
814
552
  this.dispatch(_this.ldown, ms);
815
553
  }
816
554
  }
817
-
818
555
  if (ms.rightButtonDown) {
819
556
  if (ms.rightButtonHold) {
820
557
  if (po) {
@@ -822,7 +559,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
822
559
  pe && pe.dispatch(pe.rhold, ms);
823
560
  }
824
561
  this.dispatch(_this.rhold, ms);
825
- } else {
562
+ }
563
+ else {
826
564
  ms.rightButtonHold = true;
827
565
  if (po) {
828
566
  pe = po.rendererEvents;
@@ -831,7 +569,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
831
569
  this.dispatch(_this.rdown, ms);
832
570
  }
833
571
  }
834
-
835
572
  if (ms.middleButtonDown) {
836
573
  if (ms.middleButtonHold) {
837
574
  if (po) {
@@ -839,7 +576,8 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
839
576
  pe && pe.dispatch(pe.mhold, ms);
840
577
  }
841
578
  this.dispatch(_this.mhold, ms);
842
- } else {
579
+ }
580
+ else {
843
581
  ms.middleButtonHold = true;
844
582
  if (po) {
845
583
  pe = po.rendererEvents;
@@ -848,7 +586,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
848
586
  this.dispatch(_this.mdown, ms);
849
587
  }
850
588
  }
851
-
852
589
  if (ms.leftButtonUp) {
853
590
  if (po) {
854
591
  pe = po.rendererEvents;
@@ -858,7 +595,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
858
595
  ms.leftButtonUp = false;
859
596
  ms.leftButtonHold = false;
860
597
  }
861
-
862
598
  if (ms.rightButtonUp) {
863
599
  if (po) {
864
600
  pe = po.rendererEvents;
@@ -868,7 +604,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
868
604
  ms.rightButtonUp = false;
869
605
  ms.rightButtonHold = false;
870
606
  }
871
-
872
607
  if (ms.middleButtonUp) {
873
608
  if (po) {
874
609
  pe = po.rendererEvents;
@@ -878,7 +613,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
878
613
  ms.middleButtonUp = false;
879
614
  ms.middleButtonHold = false;
880
615
  }
881
-
882
616
  if (ms.leftButtonDoubleClick) {
883
617
  if (po) {
884
618
  pe = po.rendererEvents;
@@ -887,7 +621,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
887
621
  this.dispatch(_this.ldblclick, ms);
888
622
  ms.leftButtonDoubleClick = false;
889
623
  }
890
-
891
624
  if (ms.rightButtonDoubleClick) {
892
625
  if (po) {
893
626
  pe = po.rendererEvents;
@@ -896,7 +629,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
896
629
  this.dispatch(_this.rdblclick, ms);
897
630
  ms.rightButtonDoubleClick = false;
898
631
  }
899
-
900
632
  if (ms.middleButtonDoubleClick) {
901
633
  if (po) {
902
634
  pe = po.rendererEvents;
@@ -905,7 +637,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
905
637
  this.dispatch(_this.mdblclick, ms);
906
638
  ms.middleButtonDoubleClick = false;
907
639
  }
908
-
909
640
  if (ms.wheelDelta) {
910
641
  if (po) {
911
642
  pe = po.rendererEvents;
@@ -913,7 +644,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
913
644
  }
914
645
  this.dispatch(_this.mousewheel, ms);
915
646
  }
916
-
917
647
  if (ms.moving) {
918
648
  if (po) {
919
649
  pe = po.rendererEvents;
@@ -923,36 +653,27 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
923
653
  ms.prev_x = ms.x;
924
654
  ms.prev_y = ms.y;
925
655
  }
926
-
927
656
  if (ms.justStopped) {
928
657
  this.dispatch(_this.mousestop, ms);
929
658
  }
930
659
  }
931
-
932
660
  /**
933
661
  * @protected
934
662
  */
935
- protected handleTouchEvents() {
936
- let _this = this as RendererEventsHandler;
937
-
663
+ handleTouchEvents() {
664
+ let _this = this;
938
665
  let ts = this.touchState;
939
-
940
- let tpo = ts.pickingObject,
941
- tpe = null;
942
-
666
+ let tpo = ts.pickingObject, tpe = null;
943
667
  if (ts.touchCancel) {
944
668
  this.dispatch(_this.touchcancel, ts);
945
669
  ts.touchCancel = false;
946
670
  }
947
-
948
671
  if (ts.touchStart) {
949
672
  let r = this.renderer;
950
-
951
- r.pickingFramebuffer!.activate();
952
- r.pickingFramebuffer!.readPixels(_currPickingColor, ts.nx, 1.0 - ts.ny, 1);
953
- r.pickingFramebuffer!.deactivate();
954
-
955
- let co = r.getPickingObjectArr<any>(_currPickingColor);
673
+ r.pickingFramebuffer.activate();
674
+ r.pickingFramebuffer.readPixels(_currPickingColor, ts.nx, 1.0 - ts.ny, 1);
675
+ r.pickingFramebuffer.deactivate();
676
+ let co = r.getPickingObjectArr(_currPickingColor);
956
677
  tpo = ts.pickingObject = co;
957
678
  if (tpo) {
958
679
  tpe = tpo.rendererEvents;
@@ -961,7 +682,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
961
682
  this.dispatch(_this.touchstart, ts);
962
683
  ts.touchStart = false;
963
684
  }
964
-
965
685
  if (ts.doubleTouch) {
966
686
  if (tpo) {
967
687
  tpe = tpo.rendererEvents;
@@ -970,7 +690,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
970
690
  this.dispatch(_this.doubletouch, ts);
971
691
  ts.doubleTouch = false;
972
692
  }
973
-
974
693
  if (ts.touchEnd) {
975
694
  if (tpo) {
976
695
  tpe = tpo.rendererEvents;
@@ -981,7 +700,6 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
981
700
  ts.y = 0;
982
701
  ts.touchEnd = false;
983
702
  }
984
-
985
703
  if (ts.moving) {
986
704
  if (tpo) {
987
705
  tpe = tpo.rendererEvents;
@@ -993,193 +711,161 @@ class RendererEvents extends Events<RendererEventsType> implements RendererEvent
993
711
  }
994
712
  }
995
713
  }
996
-
997
- const RENDERER_EVENTS: RendererEventsType = [
714
+ const RENDERER_EVENTS = [
998
715
  /**
999
716
  * Triggered before scene frame is rendered(before render nodes).
1000
717
  * @event og.RendererEvents#draw
1001
718
  */
1002
719
  "draw",
1003
-
1004
720
  /**
1005
721
  * Triggered after scene frame is rendered(after render nodes).
1006
722
  * @event og.RendererEvents#postdraw
1007
723
  */
1008
724
  "postdraw",
1009
-
1010
725
  /**
1011
726
  * Triggered when screen is resized.
1012
727
  * @event og.RendererEvents#resize
1013
728
  */
1014
729
  "resize",
1015
-
1016
730
  /**
1017
731
  * Triggered when screen is resized.
1018
732
  * @event og.RendererEvents#resizeend
1019
733
  */
1020
734
  "resizeend",
1021
-
1022
735
  /**
1023
736
  * Mouse enters the work screen
1024
737
  * @event og.RendererEvents#mouseenter
1025
738
  */
1026
739
  "mouseenter",
1027
-
1028
740
  /**
1029
741
  * Mouse leaves the work screen
1030
742
  * @event og.RendererEvents#mouseleave
1031
743
  */
1032
744
  "mouseleave",
1033
-
1034
745
  /**
1035
746
  * Mouse is moving.
1036
747
  * @event og.RendererEvents#mousemove
1037
748
  */
1038
749
  "mousemove",
1039
-
1040
750
  /**
1041
751
  * Mouse is just stopped.
1042
752
  * @event og.RendererEvents#mousestop
1043
753
  */
1044
754
  "mousestop",
1045
-
1046
755
  /**
1047
756
  * Mouse left button clicked.
1048
757
  * @event og.RendererEvents#lclick
1049
758
  */
1050
759
  "lclick",
1051
-
1052
760
  /**
1053
761
  * Mouse right button clicked.
1054
762
  * @event og.RendererEvents#rclick
1055
763
  */
1056
764
  "rclick",
1057
-
1058
765
  /**
1059
766
  * Mouse middle button clicked.
1060
767
  * @event og.RendererEvents#mclick
1061
768
  */
1062
769
  "mclick",
1063
-
1064
770
  /**
1065
771
  * Mouse left button double click.
1066
772
  * @event og.RendererEvents#ldblclick
1067
773
  */
1068
774
  "ldblclick",
1069
-
1070
775
  /**
1071
776
  * Mouse right button double click.
1072
777
  * @event og.RendererEvents#rdblclick
1073
778
  */
1074
779
  "rdblclick",
1075
-
1076
780
  /**
1077
781
  * Mouse middle button double click.
1078
782
  * @event og.RendererEvents#mdblclick
1079
783
  */
1080
784
  "mdblclick",
1081
-
1082
785
  /**
1083
786
  * Mouse left button up(stop pressing).
1084
787
  * @event og.RendererEvents#lup
1085
788
  */
1086
789
  "lup",
1087
-
1088
790
  /**
1089
791
  * Mouse right button up(stop pressing).
1090
792
  * @event og.RendererEvents#rup
1091
793
  */
1092
794
  "rup",
1093
-
1094
795
  /**
1095
796
  * Mouse middle button up(stop pressing).
1096
797
  * @event og.RendererEvents#mup
1097
798
  */
1098
799
  "mup",
1099
-
1100
800
  /**
1101
801
  * Mouse left button is just pressed down(start pressing).
1102
802
  * @event og.RendererEvents#ldown
1103
803
  */
1104
804
  "ldown",
1105
-
1106
805
  /**
1107
806
  * Mouse right button is just pressed down(start pressing).
1108
807
  * @event og.RendererEvents#rdown
1109
808
  */
1110
809
  "rdown",
1111
-
1112
810
  /**
1113
811
  * Mouse middle button is just pressed down(start pressing).
1114
812
  * @event og.RendererEvents#mdown
1115
813
  */
1116
814
  "mdown",
1117
-
1118
815
  /**
1119
816
  * Mouse left button is pressing.
1120
817
  * @event og.RendererEvents#lhold
1121
818
  */
1122
819
  "lhold",
1123
-
1124
820
  /**
1125
821
  * Mouse right button is pressing.
1126
822
  * @event og.RendererEvents#rhold
1127
823
  */
1128
824
  "rhold",
1129
-
1130
825
  /**
1131
826
  * Mouse middle button is pressing.
1132
827
  * @event og.RendererEvents#mhold
1133
828
  */
1134
829
  "mhold",
1135
-
1136
830
  /**
1137
831
  * Mouse wheel is rotated.
1138
832
  * @event og.RendererEvents#mousewheel
1139
833
  */
1140
834
  "mousewheel",
1141
-
1142
835
  /**
1143
836
  * Triggered when touching starts.
1144
837
  * @event og.RendererEvents#touchstart
1145
838
  */
1146
839
  "touchstart",
1147
-
1148
840
  /**
1149
841
  * Triggered when touching ends.
1150
842
  * @event og.RendererEvents#touchend
1151
843
  */
1152
844
  "touchend",
1153
-
1154
845
  /**
1155
846
  * Triggered when touching cancel.
1156
847
  * @event og.RendererEvents#touchcancel
1157
848
  */
1158
849
  "touchcancel",
1159
-
1160
850
  /**
1161
851
  * Triggered when touch is move.
1162
852
  * @event og.RendererEvents#touchmove
1163
853
  */
1164
854
  "touchmove",
1165
-
1166
855
  /**
1167
856
  * Triggered when double touch.
1168
857
  * @event og.RendererEvents#doubletouch
1169
858
  */
1170
859
  "doubletouch",
1171
-
1172
860
  /**
1173
861
  * Triggered when touch leaves picked object.
1174
862
  * @event og.RendererEvents#touchleave
1175
863
  */
1176
864
  "touchleave",
1177
-
1178
865
  /**
1179
866
  * Triggered when touch enter picking object.
1180
867
  * @event og.RendererEvents#touchenter
1181
868
  */
1182
869
  "touchenter"
1183
870
  ];
1184
-
1185
- export {RendererEvents};
871
+ export { RendererEvents };