@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,15 +1,7 @@
1
- import {Billboard, IBillboardParams} from "../entity/Billboard";
2
- import {Entity} from "../entity/Entity";
3
- import {Extent} from "../Extent";
4
- import {LonLat} from "../LonLat";
5
- import {Vector, IVectorParams} from "./Vector";
6
- import {NumberArray3} from "../math/Vec3";
7
-
8
- interface IKMLParams extends IVectorParams {
9
- color?: string;
10
- billboard?: IBillboardParams;
11
- }
12
-
1
+ import { Entity } from "../entity/Entity";
2
+ import { Extent } from "../Extent";
3
+ import { LonLat } from "../LonLat";
4
+ import { Vector } from "./Vector";
13
5
  /**
14
6
  * Layer to render KMLs files
15
7
  * @class
@@ -18,92 +10,74 @@ interface IKMLParams extends IVectorParams {
18
10
  * @param {*} [options]
19
11
  */
20
12
  export class KML extends Vector {
21
-
22
- protected _color: string;
23
- protected _billboard: IBillboardParams;
24
-
25
- constructor(name: string, options: IKMLParams = {}) {
13
+ constructor(name, options = {}) {
26
14
  super(name, options);
27
15
  this._billboard = options.billboard || {
28
16
  src: "https://openglobus.org/examples/billboards/carrot.png"
29
17
  };
30
-
31
18
  this._color = options.color || "#6689db";
32
19
  }
33
-
34
- public override get instanceName() {
20
+ get instanceName() {
35
21
  return "KML";
36
22
  }
37
-
38
- protected _extractCoordonatesFromKml(xmlDoc: XMLDocument) {
23
+ _extractCoordonatesFromKml(xmlDoc) {
39
24
  const raw = Array.from(xmlDoc.getElementsByTagName("coordinates"));
40
- const rawText = raw.map(item => item.textContent!.trim());
41
- const coordinates = rawText.map(item =>
42
- item
43
- .replace(/\n/g, " ")
44
- .replace(/\t/g, " ")
45
- .replace(/ +/g, " ")
46
- .split(" ")
47
- .map((co) => co.split(",").map(parseFloat))
48
- );
25
+ const rawText = raw.map(item => item.textContent.trim());
26
+ const coordinates = rawText.map(item => item
27
+ .replace(/\n/g, " ")
28
+ .replace(/\t/g, " ")
29
+ .replace(/ +/g, " ")
30
+ .split(" ")
31
+ .map((co) => co.split(",").map(parseFloat)));
49
32
  return coordinates;
50
33
  }
51
-
52
- protected _AGBRtoRGBA(agbr: string): string | undefined {
53
- if (!agbr || agbr.length != 8) return;
54
-
34
+ _AGBRtoRGBA(agbr) {
35
+ if (!agbr || agbr.length != 8)
36
+ return;
55
37
  const a = parseInt(agbr.slice(0, 2), 16) / 255;
56
38
  const b = parseInt(agbr.slice(2, 4), 16);
57
39
  const g = parseInt(agbr.slice(4, 6), 16);
58
40
  const r = parseInt(agbr.slice(6, 8), 16);
59
-
60
41
  return `rgba(${r},${g},${b},${a})`;
61
42
  }
62
-
63
43
  /**
64
44
  * @protected
65
45
  returns array of longitude, latitude, altitude (altitude optional)
66
46
  */
67
- protected _parseKMLcoordinates(coords: Element): number[][] {
47
+ _parseKMLcoordinates(coords) {
68
48
  const coordinates = coords.innerHTML.trim()
69
49
  .replace(/\n/g, ' ')
70
50
  .replace(/\t/g, ' ')
71
51
  .replace(/ +/g, ' ')
72
52
  .split(" ")
73
- .map((co) => co.split(",").map(parseFloat))
74
-
53
+ .map((co) => co.split(",").map(parseFloat));
75
54
  return coordinates;
76
55
  }
77
-
78
- protected _kmlPlacemarkToEntity(placemark: Element | undefined | null, extent: Extent): Entity | undefined {
79
- if (!placemark) return;
80
-
81
- const nameTags: Element[] = Array.from(placemark.getElementsByTagName("name"))
82
- const name: string = nameTags && nameTags.length > 0 ? nameTags[0].innerHTML.trim() : '';
83
-
84
- const {iconHeading, iconURL, iconColor, lineWidth, lineColor} = this._extractStyle(placemark);
85
-
56
+ _kmlPlacemarkToEntity(placemark, extent) {
57
+ if (!placemark)
58
+ return;
59
+ const nameTags = Array.from(placemark.getElementsByTagName("name"));
60
+ const name = nameTags && nameTags.length > 0 ? nameTags[0].innerHTML.trim() : '';
61
+ const { iconHeading, iconURL, iconColor, lineWidth, lineColor } = this._extractStyle(placemark);
86
62
  // TODO handle MultiGeometry
87
-
88
- const lonLats: LonLat[] = [];
63
+ const lonLats = [];
89
64
  for (const coord of placemark.getElementsByTagName("coordinates")) {
90
- const coordinates = this._parseKMLcoordinates(coord) || [[0, 0, 0]]
91
-
65
+ const coordinates = this._parseKMLcoordinates(coord) || [[0, 0, 0]];
92
66
  for (const lonlatalt of coordinates) {
93
- const [lon, lat, alt] = lonlatalt
94
-
67
+ const [lon, lat, alt] = lonlatalt;
95
68
  lonLats.push(new LonLat(lon, lat, alt));
96
-
97
- if (lon < extent.southWest.lon) extent.southWest.lon = lon;
98
- if (lat < extent.southWest.lat) extent.southWest.lat = lat;
99
- if (lon > extent.northEast.lon) extent.northEast.lon = lon;
100
- if (lat > extent.northEast.lat) extent.northEast.lat = lat;
69
+ if (lon < extent.southWest.lon)
70
+ extent.southWest.lon = lon;
71
+ if (lat < extent.southWest.lat)
72
+ extent.southWest.lat = lat;
73
+ if (lon > extent.northEast.lon)
74
+ extent.northEast.lon = lon;
75
+ if (lat > extent.northEast.lat)
76
+ extent.northEast.lat = lat;
101
77
  }
102
78
  }
103
-
104
79
  if (lonLats.length === 1) {
105
80
  const hdgrad = iconHeading * 0.01745329; // radians
106
-
107
81
  return new Entity({
108
82
  name,
109
83
  lonlat: lonLats[0],
@@ -118,8 +92,8 @@ export class KML extends Vector {
118
92
  heading: iconHeading
119
93
  }
120
94
  });
121
-
122
- } else {
95
+ }
96
+ else {
123
97
  return new Entity({
124
98
  polyline: {
125
99
  pathLonLat: [lonLats],
@@ -130,14 +104,12 @@ export class KML extends Vector {
130
104
  });
131
105
  }
132
106
  }
133
-
134
- protected _extractStyle(placemark: Element): any {
107
+ _extractStyle(placemark) {
135
108
  let iconColor;
136
109
  let iconHeading;
137
110
  let iconURL;
138
111
  let lineColor;
139
112
  let lineWidth;
140
-
141
113
  const style = placemark.getElementsByTagName("Style")[0];
142
114
  if (style) {
143
115
  let iconstyle = style.getElementsByTagName("IconStyle")[0];
@@ -145,14 +117,12 @@ export class KML extends Vector {
145
117
  let color = iconstyle.getElementsByTagName("color")[0];
146
118
  if (color)
147
119
  iconColor = this._AGBRtoRGBA(color.innerHTML.trim());
148
-
149
120
  let heading = iconstyle.getElementsByTagName("heading")[0];
150
121
  if (heading) {
151
122
  const hdg = parseFloat(heading.innerHTML.trim());
152
123
  if (hdg >= 0 && hdg <= 360)
153
124
  iconHeading = hdg % 360;
154
125
  }
155
-
156
126
  let icon = iconstyle.getElementsByTagName("Icon")[0];
157
127
  if (icon) {
158
128
  let href = icon.getElementsByTagName("href")[0];
@@ -161,7 +131,6 @@ export class KML extends Vector {
161
131
  }
162
132
  }
163
133
  }
164
-
165
134
  let linestyle = style.getElementsByTagName("LineStyle")[0];
166
135
  if (linestyle) {
167
136
  let color = linestyle.getElementsByTagName("color")[0];
@@ -172,39 +141,35 @@ export class KML extends Vector {
172
141
  lineWidth = parseFloat(width.innerHTML.trim());
173
142
  }
174
143
  }
175
-
176
- if (!iconColor) iconColor = "#FFFFFF"
177
- if (!iconHeading) iconHeading = 0
178
- if (!iconURL) iconURL = "https://openglobus.org/examples/billboards/carrot.png"
179
-
180
- if (!lineColor) lineColor = "#FFFFFF"
181
- if (!lineWidth) lineWidth = 1
182
-
183
- return {iconHeading, iconURL, iconColor, lineWidth, lineColor};
144
+ if (!iconColor)
145
+ iconColor = "#FFFFFF";
146
+ if (!iconHeading)
147
+ iconHeading = 0;
148
+ if (!iconURL)
149
+ iconURL = "https://openglobus.org/examples/billboards/carrot.png";
150
+ if (!lineColor)
151
+ lineColor = "#FFFFFF";
152
+ if (!lineWidth)
153
+ lineWidth = 1;
154
+ return { iconHeading, iconURL, iconColor, lineWidth, lineColor };
184
155
  }
185
-
186
- protected _parseKML(xml: XMLDocument, extent: Extent, entities?: Entity[]): Entity[] {
156
+ _parseKML(xml, extent, entities) {
187
157
  if (!entities)
188
158
  entities = [];
189
-
190
159
  if (xml.documentElement.nodeName !== "kml")
191
160
  return entities;
192
-
193
161
  for (const placemark of xml.getElementsByTagName("Placemark")) {
194
162
  const entity = this._kmlPlacemarkToEntity(placemark, extent);
195
- if (entity) entities.push(entity);
163
+ if (entity)
164
+ entities.push(entity);
196
165
  }
197
-
198
166
  return entities;
199
167
  }
200
-
201
- protected _convertKMLintoEntities(xml: XMLDocument): any {
168
+ _convertKMLintoEntities(xml) {
202
169
  const extent = new Extent(new LonLat(180.0, 90.0), new LonLat(-180.0, -90.0));
203
170
  const entities = this._parseKML(xml, extent);
204
-
205
- return {entities, extent}
171
+ return { entities, extent };
206
172
  }
207
-
208
173
  /**
209
174
  * Creates billboards or polylines from array of lonlat.
210
175
  * @protected
@@ -212,55 +177,55 @@ export class KML extends Vector {
212
177
  * @param {string} color
213
178
  * @returns {any}
214
179
  */
215
- protected _convertCoordonatesIntoEntities(coordinates: number[][][][], color: string, billboard?: IBillboardParams): any {
180
+ _convertCoordonatesIntoEntities(coordinates, color, billboard) {
216
181
  const extent = new Extent(new LonLat(180.0, 90.0), new LonLat(-180.0, -90.0));
217
- const addToExtent = (c: number[]) => {
218
- const lon = c[0],
219
- lat = c[1];
220
- if (lon < extent.southWest.lon) extent.southWest.lon = lon;
221
- if (lat < extent.southWest.lat) extent.southWest.lat = lat;
222
- if (lon > extent.northEast.lon) extent.northEast.lon = lon;
223
- if (lat > extent.northEast.lat) extent.northEast.lat = lat;
182
+ const addToExtent = (c) => {
183
+ const lon = c[0], lat = c[1];
184
+ if (lon < extent.southWest.lon)
185
+ extent.southWest.lon = lon;
186
+ if (lat < extent.southWest.lat)
187
+ extent.southWest.lat = lat;
188
+ if (lon > extent.northEast.lon)
189
+ extent.northEast.lon = lon;
190
+ if (lat > extent.northEast.lat)
191
+ extent.northEast.lat = lat;
224
192
  };
225
- const _pathes: number[][][] = [];
226
-
227
- coordinates.forEach((kmlFile: number[][][]) => kmlFile.forEach((p: number[][]) => _pathes.push(p)));
228
-
193
+ const _pathes = [];
194
+ coordinates.forEach((kmlFile) => kmlFile.forEach((p) => _pathes.push(p)));
229
195
  const entities = _pathes.map((path) => {
230
196
  if (path.length === 1) {
231
- const lonlat = path[0] as NumberArray3;
232
- const _entity = new Entity({lonlat, billboard});
197
+ const lonlat = path[0];
198
+ const _entity = new Entity({ lonlat, billboard });
233
199
  addToExtent(lonlat);
234
200
  return _entity;
235
- } else if (path.length > 1) {
236
- const pathLonLat = path.map((item: number[]) => {
201
+ }
202
+ else if (path.length > 1) {
203
+ const pathLonLat = path.map((item) => {
237
204
  addToExtent(item);
238
205
  return new LonLat(item[0], item[1], item[2]);
239
206
  });
240
207
  const _entity = new Entity({
241
- polyline: {pathLonLat: [pathLonLat], thickness: 3, color, isClosed: false}
208
+ polyline: { pathLonLat: [pathLonLat], thickness: 3, color, isClosed: false }
242
209
  });
243
210
  return _entity;
244
211
  }
245
212
  });
246
- return {entities, extent};
213
+ return { entities, extent };
247
214
  }
248
-
249
215
  /**
250
216
  * @protected
251
217
  * @returns {Document}
252
218
  */
253
- protected _getXmlContent(file: Blob): Promise<XMLDocument> {
219
+ _getXmlContent(file) {
254
220
  return new Promise((resolve) => {
255
221
  const fileReader = new FileReader();
256
- fileReader.onload = async (i) =>
257
- resolve(new DOMParser().parseFromString(i.target!.result as string, "text/xml"));
222
+ fileReader.onload = async (i) => resolve(new DOMParser().parseFromString(i.target.result, "text/xml"));
258
223
  fileReader.readAsText(file);
259
224
  });
260
225
  }
261
-
262
- protected _expandExtents(extent1: Extent | null | undefined, extent2: Extent): Extent {
263
- if (!extent1) return extent2;
226
+ _expandExtents(extent1, extent2) {
227
+ if (!extent1)
228
+ return extent2;
264
229
  if (extent2.southWest.lon < extent1.southWest.lon)
265
230
  extent1.southWest.lon = extent2.southWest.lon;
266
231
  if (extent2.southWest.lat < extent1.southWest.lat)
@@ -271,7 +236,6 @@ export class KML extends Vector {
271
236
  extent1.northEast.lat = extent2.northEast.lat;
272
237
  return extent1;
273
238
  }
274
-
275
239
  /**
276
240
  * @public
277
241
  * @param {File[]} kmls
@@ -279,46 +243,41 @@ export class KML extends Vector {
279
243
  * @param {Billboard} [billboard]
280
244
  * @returns {Promise<{entities: Entity[], extent: Extent}>}
281
245
  */
282
- public async addKmlFromFiles(kmls: Blob[], color?: string, billboard?: IBillboardParams) {
283
- if (!Array.isArray(kmls)) return null
246
+ async addKmlFromFiles(kmls, color, billboard) {
247
+ if (!Array.isArray(kmls))
248
+ return null;
284
249
  const kmlObjs = await Promise.all(kmls.map(this._getXmlContent));
285
250
  const coordonates = kmlObjs.map(this._extractCoordonatesFromKml);
286
- const {entities, extent} = this._convertCoordonatesIntoEntities(
287
- coordonates,
288
- color || this._color,
289
- billboard || this._billboard
290
- );
251
+ const { entities, extent } = this._convertCoordonatesIntoEntities(coordonates, color || this._color, billboard || this._billboard);
291
252
  this._extent = this._expandExtents(this._extent, extent);
292
253
  entities.forEach(this.add.bind(this));
293
- return {entities, extent};
254
+ return { entities, extent };
294
255
  }
295
-
296
256
  /**
297
257
  * @param {string} color
298
258
  * @public
299
259
  */
300
- public setColor(color: string) {
260
+ setColor(color) {
301
261
  this._color = color;
302
262
  this._billboard.color = color;
303
263
  }
304
-
305
- protected _getKmlFromUrl(url: string): Promise<Document> {
306
- return new Promise<Document>((resolve, reject) => {
264
+ _getKmlFromUrl(url) {
265
+ return new Promise((resolve, reject) => {
307
266
  const request = new XMLHttpRequest();
308
267
  request.open("GET", url, true);
309
268
  request.responseType = "document";
310
269
  request.overrideMimeType("text/xml");
311
270
  request.onload = () => {
312
271
  if (request.readyState === request.DONE && request.status === 200) {
313
- resolve(request.responseXML!);
314
- } else {
272
+ resolve(request.responseXML);
273
+ }
274
+ else {
315
275
  reject(new Error("no valid kml file"));
316
276
  }
317
277
  };
318
278
  request.send();
319
279
  });
320
280
  }
321
-
322
281
  /**
323
282
  * @public
324
283
  * @param {string} url - Url of the KML to display. './myFile.kml' or 'http://mySite/myFile.kml' for example.
@@ -326,7 +285,7 @@ export class KML extends Vector {
326
285
  * @param {Billboard} [billboard]
327
286
  * @returns {Promise<{entities: Entity[], extent: Extent}>}
328
287
  */
329
- public async addKmlFromUrl(url: string, color?: string, billboard?: Billboard | IBillboardParams): Promise<any> {
288
+ async addKmlFromUrl(url, color, billboard) {
330
289
  const kml = await this._getKmlFromUrl(url);
331
290
  /*
332
291
  const coordonates = this._extractCoordonatesFromKml(kml);
@@ -336,12 +295,9 @@ export class KML extends Vector {
336
295
  billboard || this._billboard
337
296
  );
338
297
  */
339
- const {entities, extent} = this._convertKMLintoEntities(kml);
340
-
298
+ const { entities, extent } = this._convertKMLintoEntities(kml);
341
299
  this._extent = this._expandExtents(this._extent, extent);
342
-
343
300
  entities.forEach(this.add.bind(this));
344
-
345
- return {entities, extent};
301
+ return { entities, extent };
346
302
  }
347
303
  }