@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,37 +1,51 @@
1
- import {EventsHandler, createEvents} from '../Events';
2
- import {Layer} from '../layer/Layer';
3
- import {Control, IControlParams} from "./Control";
4
-
5
- type LayerAnimationEventsList = ["change", "idle", "play", "pause", "stop"];
6
-
7
- const LAYERANIMATION_EVENTS: LayerAnimationEventsList = ["change", "idle", "play", "pause", "stop"];
8
-
9
- interface ILayerAnimationParams extends IControlParams {
10
- layers?: Layer,
11
- playInterval?: number,
12
- frameSize?: number,
13
- repeat?: boolean;
14
- skipTimeout?: number;
15
- }
16
-
1
+ import { createEvents } from '../Events';
2
+ import { Control } from "./Control";
3
+ const LAYERANIMATION_EVENTS = ["change", "idle", "play", "pause", "stop"];
17
4
  export class LayerAnimation extends Control {
18
- public events: EventsHandler<LayerAnimationEventsList>;
19
- protected _layersArr: Layer[];
20
- protected _currentIndex: number;
21
- protected _playInterval: number;
22
- protected _playIntervalHandler: any;
23
- protected _playIndex: number;
24
- protected _frameSize: number;
25
- public repeat: boolean;
26
- public skipTimeout: number;
27
- protected _timeoutStart: number;
28
- protected _currVisibleIndex: number = 0;
29
-
30
- constructor(options: ILayerAnimationParams = {}) {
5
+ constructor(options = {}) {
31
6
  super(options);
7
+ this._currVisibleIndex = 0;
8
+ this._onViewchange = () => {
9
+ this._timeoutStart = performance.now();
10
+ };
11
+ this._onVisibilityChange = (isVisible) => {
12
+ if (!isVisible) {
13
+ this.pause();
14
+ }
15
+ };
16
+ /**
17
+ * Waiting for the current index layer loadend and make it non-transparent,
18
+ * and make prev layer transparent, also check previous frame index to clean up.
19
+ */
20
+ this._onLayerLoadend = (layer) => {
21
+ let currLayer = this._layersArr[this._currentIndex];
22
+ if (currLayer && currLayer.isEqual(layer)) {
23
+ // BRUTE
24
+ let currFrame = this._getFrameIndex(this._currentIndex);
25
+ let from = currFrame * this._frameSize, to = this._currentIndex;
26
+ for (let i = from; i < to; i++) {
27
+ let li = this._layersArr[i];
28
+ li.opacity = 0;
29
+ li.setVisibility(false);
30
+ }
31
+ // * Make CURRENT Layer VISIBLE *
32
+ currLayer.opacity = 1.0;
33
+ let currVisibleLayer = this._layersArr[this._currVisibleIndex];
34
+ if (currVisibleLayer) {
35
+ currVisibleLayer.opacity = 0.0;
36
+ currVisibleLayer.setVisibility(false);
37
+ // If frame is changed - remove it from the planet
38
+ let prevFrame = this._getFrameIndex(this._currVisibleIndex);
39
+ if (this._getFrameIndex(this._currentIndex) !== prevFrame) {
40
+ this._removeFrameFromPlanet(prevFrame);
41
+ }
42
+ }
43
+ this.events.dispatch(this.events.idle, currLayer);
44
+ }
45
+ };
32
46
  this.events = createEvents(LAYERANIMATION_EVENTS);
33
47
  this._name = options.name || `layerAnimation-${this.__id}`;
34
- this._layersArr = options.layers ? ([] as Layer[]).concat(options.layers) : [];
48
+ this._layersArr = options.layers ? [].concat(options.layers) : [];
35
49
  this._currentIndex = -1;
36
50
  this._playInterval = options.playInterval || 120;
37
51
  this._playIntervalHandler = -1;
@@ -41,30 +55,23 @@ export class LayerAnimation extends Control {
41
55
  this.skipTimeout = options.skipTimeout || 5000;
42
56
  this._timeoutStart = 0;
43
57
  }
44
-
45
- protected _onViewchange = () => {
46
- this._timeoutStart = performance.now();
47
- }
48
-
49
- protected _getFramesNum(): number {
58
+ _getFramesNum() {
50
59
  return Math.ceil(this._layersArr.length / this._frameSize);
51
60
  }
52
-
53
- protected _setFrame(frameIndex: number) {
61
+ _setFrame(frameIndex) {
54
62
  for (let i = 0, len = this._getFramesNum(); i < len; i++) {
55
63
  if (i !== frameIndex) {
56
64
  this._removeFrameFromPlanet(i);
57
- } else {
65
+ }
66
+ else {
58
67
  this._appendFrameToPlanet(i);
59
68
  }
60
69
  }
61
70
  }
62
-
63
- protected _getFrameIndex(layerIndex: number): number {
71
+ _getFrameIndex(layerIndex) {
64
72
  return Math.floor(layerIndex / this._frameSize);
65
73
  }
66
-
67
- protected _appendFrameToPlanet(frameIndex: number) {
74
+ _appendFrameToPlanet(frameIndex) {
68
75
  if (this.planet) {
69
76
  let minIndex = frameIndex * this._frameSize;
70
77
  let maxIndex = minIndex + this._frameSize;
@@ -73,8 +80,7 @@ export class LayerAnimation extends Control {
73
80
  }
74
81
  }
75
82
  }
76
-
77
- protected _removeFrameFromPlanet(frameIndex: number) {
83
+ _removeFrameFromPlanet(frameIndex) {
78
84
  if (this.planet) {
79
85
  let minIndex = frameIndex * this._frameSize;
80
86
  let maxIndex = minIndex + this._frameSize;
@@ -85,40 +91,28 @@ export class LayerAnimation extends Control {
85
91
  }
86
92
  }
87
93
  }
88
-
89
- public override oninit() {
94
+ oninit() {
90
95
  super.oninit();
91
96
  this.onactivate();
92
97
  this._initLayers();
93
- this.planet!.events.on("layerloadend", this._onLayerLoadend);
98
+ this.planet.events.on("layerloadend", this._onLayerLoadend);
94
99
  this._setCurrentIndexAsync(0, false, true);
95
100
  }
96
-
97
- public override onactivate() {
101
+ onactivate() {
98
102
  super.onactivate();
99
- this.planet!.camera.events.on("viewchange", this._onViewchange);
100
- this.planet!.renderer!.handler.events.on("visibilitychange", this._onVisibilityChange);
103
+ this.planet.camera.events.on("viewchange", this._onViewchange);
104
+ this.planet.renderer.handler.events.on("visibilitychange", this._onVisibilityChange);
101
105
  }
102
-
103
- public override ondeactivate() {
106
+ ondeactivate() {
104
107
  super.ondeactivate();
105
- this.planet!.camera.events.off("viewchange", this._onViewchange);
106
-
108
+ this.planet.camera.events.off("viewchange", this._onViewchange);
107
109
  for (let i = 0; i < this._layersArr.length; i++) {
108
110
  this._layersArr[i].setVisibility(false);
109
111
  }
110
-
111
- this.planet!.events.off("layerloadend", this._onLayerLoadend);
112
- this.planet!.renderer!.handler.events.off("visibilitychange", this._onVisibilityChange);
112
+ this.planet.events.off("layerloadend", this._onLayerLoadend);
113
+ this.planet.renderer.handler.events.off("visibilitychange", this._onVisibilityChange);
113
114
  }
114
-
115
- protected _onVisibilityChange = (isVisible: boolean) => {
116
- if (!isVisible) {
117
- this.pause();
118
- }
119
- }
120
-
121
- public clear() {
115
+ clear() {
122
116
  this.stop();
123
117
  this._currentIndex = -1;
124
118
  this._currVisibleIndex = -1;
@@ -128,8 +122,7 @@ export class LayerAnimation extends Control {
128
122
  layersToRemove[i].remove();
129
123
  }
130
124
  }
131
-
132
- protected _initLayers() {
125
+ _initLayers() {
133
126
  if (this.planet) {
134
127
  for (let i = 0, len = this._layersArr.length; i < len; i++) {
135
128
  let li = this._layersArr[i];
@@ -140,14 +133,12 @@ export class LayerAnimation extends Control {
140
133
  this._appendFrameToPlanet(0);
141
134
  }
142
135
  }
143
-
144
- public setLayers(layers: Layer[]) {
136
+ setLayers(layers) {
145
137
  this.clear();
146
- this._layersArr = [].concat(layers as any);
138
+ this._layersArr = [].concat(layers);
147
139
  this._initLayers();
148
140
  }
149
-
150
- public appendLayer(layer: Layer) {
141
+ appendLayer(layer) {
151
142
  this._layersArr.push(layer);
152
143
  layer.setVisibility(false);
153
144
  layer.setBaseLayer(false);
@@ -155,21 +146,18 @@ export class LayerAnimation extends Control {
155
146
  //check current frame
156
147
  this.planet?.addLayer(layer);
157
148
  }
158
-
159
149
  /**
160
150
  * warning: Use XYZ.isIdle in requestAnimationFrame(after setVisibility)
161
151
  * @returns Returns true if current layer is idle
162
152
  */
163
- public get isIdle(): boolean {
153
+ get isIdle() {
164
154
  let currLayer = this._layersArr[this._currentIndex];
165
155
  return currLayer && currLayer.isIdle || !currLayer;
166
156
  }
167
-
168
- public get playInterval() {
157
+ get playInterval() {
169
158
  return this._playInterval;
170
159
  }
171
-
172
- public set playInterval(val: number) {
160
+ set playInterval(val) {
173
161
  if (val !== this._playInterval) {
174
162
  this._playInterval = val;
175
163
  if (this.isPlaying) {
@@ -178,52 +166,42 @@ export class LayerAnimation extends Control {
178
166
  }
179
167
  }
180
168
  }
181
-
182
- public get isPlaying(): boolean {
169
+ get isPlaying() {
183
170
  return this._playIntervalHandler !== -1;
184
171
  }
185
-
186
- public get layers(): Layer[] {
172
+ get layers() {
187
173
  return this._layersArr;
188
174
  }
189
-
190
- protected _checkEnd() {
175
+ _checkEnd() {
191
176
  if (this._playIndex > this._layersArr.length) {
192
177
  if (this.repeat) {
193
178
  this._playIndex = 0;
194
- } else {
179
+ }
180
+ else {
195
181
  this.pause();
196
182
  }
197
183
  }
198
184
  }
199
-
200
- public play() {
185
+ play() {
201
186
  if (!this.isPlaying) {
202
-
203
187
  if (this._currentIndex >= this._layersArr.length - 1) {
204
188
  this.stop();
205
189
  }
206
-
207
190
  this._timeoutStart = performance.now();
208
-
209
191
  this._playIntervalHandler = setInterval(() => {
210
192
  this._checkEnd();
211
193
  this._setCurrentIndexAsync(this._playIndex, false, false);
212
-
213
194
  requestAnimationFrame(() => {
214
195
  if (this.isIdle || (performance.now() - this._timeoutStart > this.skipTimeout)) {
215
196
  this._playIndex++;
216
197
  this._timeoutStart = performance.now();
217
198
  }
218
199
  });
219
-
220
200
  }, this._playInterval);
221
-
222
201
  this.events.dispatch(this.events.play);
223
202
  }
224
203
  }
225
-
226
- public stop() {
204
+ stop() {
227
205
  if (this._playIndex > 0) {
228
206
  this._clearInterval();
229
207
  this._playIndex = 0;
@@ -231,121 +209,64 @@ export class LayerAnimation extends Control {
231
209
  this.events.dispatch(this.events.stop);
232
210
  }
233
211
  }
234
-
235
- public pause() {
212
+ pause() {
236
213
  if (this.isPlaying) {
237
214
  this._clearInterval();
238
215
  this.events.dispatch(this.events.pause);
239
216
  }
240
217
  }
241
-
242
- protected _clearInterval() {
218
+ _clearInterval() {
243
219
  clearInterval(this._playIntervalHandler);
244
220
  this._playIntervalHandler = -1;
245
221
  }
246
-
247
- /**
248
- * Waiting for the current index layer loadend and make it non-transparent,
249
- * and make prev layer transparent, also check previous frame index to clean up.
250
- */
251
- private _onLayerLoadend = (layer: Layer) => {
252
-
253
- let currLayer = this._layersArr[this._currentIndex];
254
-
255
- if (currLayer && currLayer.isEqual(layer)) {
256
-
257
- // BRUTE
258
- let currFrame = this._getFrameIndex(this._currentIndex);
259
- let from = currFrame * this._frameSize,
260
- to = this._currentIndex;
261
- for (let i = from; i < to; i++) {
262
- let li = this._layersArr[i];
263
- li.opacity = 0;
264
- li.setVisibility(false);
265
- }
266
-
267
- // * Make CURRENT Layer VISIBLE *
268
- currLayer.opacity = 1.0;
269
-
270
- let currVisibleLayer = this._layersArr[this._currVisibleIndex];
271
- if (currVisibleLayer) {
272
- currVisibleLayer.opacity = 0.0;
273
- currVisibleLayer.setVisibility(false);
274
-
275
- // If frame is changed - remove it from the planet
276
- let prevFrame = this._getFrameIndex(this._currVisibleIndex);
277
- if (this._getFrameIndex(this._currentIndex) !== prevFrame) {
278
- this._removeFrameFromPlanet(prevFrame);
279
- }
280
- }
281
-
282
- this.events.dispatch(this.events.idle, currLayer);
283
- }
284
- }
285
-
286
-
287
222
  /**
288
223
  * Function sets layer index visible.
289
224
  * @param {number} index
290
225
  * @param {boolean} [stopPropagation=false]
291
226
  */
292
- setCurrentIndex(index: number, stopPropagation = false) {
227
+ setCurrentIndex(index, stopPropagation = false) {
293
228
  this._setCurrentIndexAsync(index, true, stopPropagation);
294
229
  }
295
-
296
230
  /**
297
231
  * Function sets layer index visible. If the layer is idle (all visible tiles loaded), sets opacity to one,
298
232
  * otherwise to ZERO it means that when all visible tiles will be loaded the opacity becomes ONE. So, previous
299
233
  * layer remains not transparent (opacity = 1) till current layer is loading.
300
234
  */
301
- protected _setCurrentIndexAsync(index: number, forceVisibility: boolean = false, stopPropagation: boolean = false) {
302
-
235
+ _setCurrentIndexAsync(index, forceVisibility = false, stopPropagation = false) {
303
236
  if (index != this._currentIndex && index >= 0 && index < this._layersArr.length) {
304
-
305
237
  let prevCurrIndex = this._currentIndex;
306
238
  this._currentIndex = index;
307
239
  this._playIndex = index;
308
-
309
240
  let prevCurrFrame = this._getFrameIndex(prevCurrIndex);
310
241
  let currFrame = this._getFrameIndex(this._currentIndex);
311
-
312
- let prevCurrLayer = this._layersArr[prevCurrIndex],
313
- currLayer = this._layersArr[index];
314
-
242
+ let prevCurrLayer = this._layersArr[prevCurrIndex], currLayer = this._layersArr[index];
315
243
  let frameChanged = currFrame != prevCurrFrame;
316
244
  if (frameChanged) {
317
245
  this._appendFrameToPlanet(currFrame);
318
246
  }
319
-
320
247
  if (prevCurrLayer) {
321
248
  if (prevCurrLayer.isIdle) {
322
249
  this._currVisibleIndex = prevCurrIndex;
323
- } else {
250
+ }
251
+ else {
324
252
  prevCurrLayer.opacity = 0;
325
253
  prevCurrLayer.setVisibility(false);
326
254
  }
327
255
  }
328
-
329
256
  if (currLayer) {
330
-
331
257
  currLayer.opacity = 0.0;
332
258
  currLayer.setVisibility(true);
333
-
334
259
  requestAnimationFrame(() => {
335
260
  if (currLayer.isIdle || forceVisibility) {
336
-
337
261
  currLayer.opacity = 1.0;
338
-
339
262
  // If frame is changed - remove it from the planet
340
263
  if (frameChanged) {
341
264
  this._removeFrameFromPlanet(prevCurrFrame);
342
265
  }
343
-
344
266
  if (prevCurrLayer) {
345
267
  prevCurrLayer.opacity = 0.0;
346
268
  prevCurrLayer.setVisibility(false);
347
269
  }
348
-
349
270
  let currVisibleLayer = this._layersArr[this._currVisibleIndex];
350
271
  if (currVisibleLayer) {
351
272
  currVisibleLayer.opacity = 0.0;
@@ -353,7 +274,6 @@ export class LayerAnimation extends Control {
353
274
  }
354
275
  }
355
276
  });
356
-
357
277
  if (!stopPropagation) {
358
278
  this.events.dispatch(this.events.change, this._currentIndex, prevCurrIndex);
359
279
  }
@@ -0,0 +1,21 @@
1
+ import { Control, IControlParams } from "./Control";
2
+ import { Dialog } from "../ui/Dialog";
3
+ import { Layer } from "../layer/Layer";
4
+ import { ToggleButton } from "../ui/ToggleButton";
5
+ interface ILayerSwitcherParams extends IControlParams {
6
+ }
7
+ /**
8
+ * Advanced :) layer switcher, includes base layers, overlays, geo images etc. groups.
9
+ * Double click for zoom, drag-and-drop to change zIndex
10
+ */
11
+ export declare class LayerSwitcher extends Control {
12
+ dialog: Dialog<null>;
13
+ protected _menuBtn: ToggleButton;
14
+ constructor(options?: ILayerSwitcherParams);
15
+ oninit(): void;
16
+ addNewLayer: (layer: Layer) => void;
17
+ removeLayer: (layer: Layer) => void;
18
+ onactivate(): void;
19
+ ondeactivate(): void;
20
+ }
21
+ export {};
@@ -1,12 +1,6 @@
1
- import {Control, IControlParams} from "./Control";
2
- import {Dialog} from "../ui/Dialog";
3
- import {Layer} from "../layer/Layer";
4
- import {ToggleButton} from "../ui/ToggleButton";
5
-
6
- interface ILayerSwitcherParams extends IControlParams {
7
-
8
- }
9
-
1
+ import { Control } from "./Control";
2
+ import { Dialog } from "../ui/Dialog";
3
+ import { ToggleButton } from "../ui/ToggleButton";
10
4
  const ICON_BUTTON_SVG = `<?xml version="1.0" encoding="utf-8"?>
11
5
  <!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->
12
6
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
@@ -14,21 +8,20 @@ const ICON_BUTTON_SVG = `<?xml version="1.0" encoding="utf-8"?>
14
8
  <metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>
15
9
  <g><path d="M500,573.5c-3.2,0-6.5-0.6-9.5-1.9L25,375.6c-9.1-3.8-15-12.7-15-22.6s5.9-18.8,15-22.6l465.5-196c6.1-2.5,12.9-2.5,19,0l465.5,196c9.1,3.8,15,12.7,15,22.6s-5.9,18.8-15,22.6l-465.5,196C506.5,572.9,503.2,573.5,500,573.5L500,573.5z M97.6,353L500,522.4L902.4,353L500,183.6L97.6,353L97.6,353z"/><path d="M500,720.5c-3.2,0-6.5-0.6-9.5-1.9L25,522.6c-12.4-5.2-18.3-19.6-13.1-32.1c5.2-12.5,19.6-18.3,32.1-13.1l456,192l456-192c12.4-5.2,26.9,0.6,32.1,13.1s-0.6,26.9-13.1,32.1l-465.5,196C506.5,719.9,503.2,720.5,500,720.5L500,720.5z"/><path d="M500,867.5c-3.2,0-6.5-0.6-9.5-1.9L25,669.6c-12.4-5.2-18.3-19.6-13.1-32.1c5.2-12.5,19.6-18.3,32.1-13.1l456,192l456-192c12.4-5.2,26.9,0.6,32.1,13.1c5.2,12.5-0.6,26.8-13.1,32.1l-465.5,196C506.5,866.9,503.2,867.5,500,867.5L500,867.5z"/></g>
16
10
  </svg>`;
17
-
18
11
  /**
19
12
  * Advanced :) layer switcher, includes base layers, overlays, geo images etc. groups.
20
13
  * Double click for zoom, drag-and-drop to change zIndex
21
14
  */
22
15
  export class LayerSwitcher extends Control {
23
- public dialog: Dialog<null>;
24
- protected _menuBtn: ToggleButton;
25
-
26
- constructor(options: ILayerSwitcherParams = {}) {
16
+ constructor(options = {}) {
27
17
  super({
28
18
  name: "LayerSwitcher",
29
19
  ...options
30
20
  });
31
-
21
+ this.addNewLayer = (layer) => {
22
+ };
23
+ this.removeLayer = (layer) => {
24
+ };
32
25
  this.dialog = new Dialog({
33
26
  title: "Layer Switcher",
34
27
  top: 15,
@@ -36,41 +29,23 @@ export class LayerSwitcher extends Control {
36
29
  visible: false,
37
30
  width: 200
38
31
  });
39
-
40
32
  this._menuBtn = new ToggleButton({
41
33
  classList: ["og-map-button", "og-layerswitcher_button"],
42
34
  icon: ICON_BUTTON_SVG
43
35
  });
44
36
  }
45
-
46
- override oninit() {
47
-
48
- this.dialog.appendTo(this.planet!.renderer!.div as HTMLElement);
49
-
50
- this.dialog.setPosition((this.planet!.renderer!.div!.clientWidth as number) - this.dialog.width - 67)
51
-
52
- this.dialog.events.on("visibility", (v: boolean) => {
37
+ oninit() {
38
+ this.dialog.appendTo(this.planet.renderer.div);
39
+ this.dialog.setPosition(this.planet.renderer.div.clientWidth - this.dialog.width - 67);
40
+ this.dialog.events.on("visibility", (v) => {
53
41
  this._menuBtn.setActive(v);
54
42
  });
55
-
56
- this.planet!.events.on("layeradd", this.addNewLayer, this)
57
- this.planet!.events.on("layerremove", this.removeLayer, this)
58
- }
59
-
60
- public addNewLayer = (layer: Layer) => {
61
-
62
- }
63
-
64
- public removeLayer = (layer: Layer) => {
65
-
43
+ this.planet.events.on("layeradd", this.addNewLayer, this);
44
+ this.planet.events.on("layerremove", this.removeLayer, this);
66
45
  }
67
-
68
- override onactivate() {
69
-
46
+ onactivate() {
70
47
  }
71
-
72
- override ondeactivate() {
48
+ ondeactivate() {
73
49
  this.dialog.hide();
74
50
  }
75
-
76
51
  }
@@ -0,0 +1,49 @@
1
+ import { Control, IControlParams } from "./Control";
2
+ import { Dialog } from '../ui/Dialog';
3
+ import { Layer } from "../layer/Layer";
4
+ import { Slider } from "../ui/Slider";
5
+ import { ToggleButton } from "../ui/ToggleButton";
6
+ import { View } from '../ui/View';
7
+ interface ILightingParams extends IControlParams {
8
+ }
9
+ /**
10
+ * Helps to set up lighting.
11
+ */
12
+ export declare class Lighting extends Control {
13
+ protected _selectedLayer: Layer | null;
14
+ protected _toggleBtn: ToggleButton;
15
+ protected _dialog: Dialog<null>;
16
+ protected _panel: View<null>;
17
+ protected _atmosphereMaxOpacity: Slider;
18
+ protected _atmosphereMinOpacity: Slider;
19
+ protected _gamma: Slider;
20
+ protected _exposure: Slider;
21
+ protected _night: Slider;
22
+ protected _opacity: Slider;
23
+ protected _diffuse_r: Slider;
24
+ protected _diffuse_g: Slider;
25
+ protected _diffuse_b: Slider;
26
+ protected _ambient_r: Slider;
27
+ protected _ambient_g: Slider;
28
+ protected _ambient_b: Slider;
29
+ protected _specular_r: Slider;
30
+ protected _specular_g: Slider;
31
+ protected _specular_b: Slider;
32
+ protected _shininess: Slider;
33
+ $gamma: HTMLElement | null;
34
+ $exposure: HTMLElement | null;
35
+ $night: HTMLElement | null;
36
+ $opacity: HTMLElement | null;
37
+ $diffuse: HTMLElement | null;
38
+ $ambient: HTMLElement | null;
39
+ $specular: HTMLElement | null;
40
+ $atmosphereOpacity: HTMLElement | null;
41
+ constructor(options?: ILightingParams);
42
+ bindLayer(layer: Layer): void;
43
+ oninit(): void;
44
+ protected _update(): void;
45
+ protected _fetchLayers(): void;
46
+ protected _onLayerAdd(e: Layer): void;
47
+ protected _onLayerRemove(e: Layer): void;
48
+ }
49
+ export {};