@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
@@ -0,0 +1,61 @@
1
+ import { EventsHandler } from '../../Events';
2
+ import { Vec3 } from "../../math/Vec3";
3
+ import { Planet } from "../../scene/Planet";
4
+ import { LonLat } from "../../LonLat";
5
+ interface ElevationProfileParams {
6
+ planet: Planet;
7
+ }
8
+ interface IProfileData {
9
+ dist: number;
10
+ minY: number;
11
+ maxY: number;
12
+ trackCoords: number[][];
13
+ groundCoords: number[][];
14
+ }
15
+ type ElevationProfileEventsList = ["profilecollected"];
16
+ /**
17
+ * Point types
18
+ */
19
+ declare const SAFE = 0;
20
+ declare const WARNING = 1;
21
+ declare const COLLISION = 2;
22
+ declare class ElevationProfile {
23
+ events: EventsHandler<ElevationProfileEventsList>;
24
+ planet: Planet;
25
+ protected _warningHeightLevel: number;
26
+ protected _pointsReady: boolean;
27
+ protected _isWarning: boolean;
28
+ protected _minX: number;
29
+ protected _maxX: number;
30
+ protected _minY: number;
31
+ protected _maxY: number;
32
+ protected _drawData: [number[][], number[][]];
33
+ protected _promiseArr: Promise<void | number>[];
34
+ protected _promiseCounter: number;
35
+ protected _pMaxY: number;
36
+ protected _pMinY: number;
37
+ protected _pDist: number;
38
+ protected _pTrackCoords: number[][];
39
+ protected _pGroundCoords: number[][];
40
+ protected _pIndex: number;
41
+ constructor(options: ElevationProfileParams);
42
+ setWarningHeightLevel(warningHeight?: number): void;
43
+ setRange(minX: number, maxX: number, minY: number, maxY: number): void;
44
+ protected _getHeightAsync(ll: LonLat, pIndex: number): Promise<number>;
45
+ protected _collectCoordsBetweenTwoTrackPoints(internalPoints: number, scaleFactor: number, p0: Vec3, trackDir: Vec3): void;
46
+ protected _collectAllPoints(pointsLonLat: LonLat[]): void;
47
+ protected _getGroundElevation(lonLat: LonLat): void;
48
+ protected _collectPromise(resolve: (p: IProfileData) => void): void;
49
+ protected _calcPointsAsync(pointsLonLat: LonLat[]): Promise<IProfileData>;
50
+ get minX(): number;
51
+ get maxX(): number;
52
+ get minY(): number;
53
+ get maxY(): number;
54
+ get pointsReady(): boolean;
55
+ get isWarningOrCollision(): boolean;
56
+ collectProfile(pointsLonLat: LonLat[]): void;
57
+ protected _setPointType(pIndex: number): void;
58
+ protected _setPointsType(): void;
59
+ clear(): void;
60
+ }
61
+ export { COLLISION, SAFE, WARNING, type IProfileData, ElevationProfile, };
@@ -1,81 +1,35 @@
1
- import {Deferred} from '../../Deferred';
2
- import {createEvents, EventsHandler} from '../../Events';
3
- import {Vec3} from "../../math/Vec3";
4
- import {Planet} from "../../scene/Planet";
5
- import {LonLat} from "../../LonLat";
6
-
7
- interface ElevationProfileParams {
8
- planet: Planet
9
- }
10
-
11
- interface IProfileData {
12
- dist: number;
13
- minY: number;
14
- maxY: number;
15
- trackCoords: number[][];
16
- groundCoords: number[][];
17
- }
18
-
19
- type ElevationProfileEventsList = ["profilecollected"];
20
-
21
- const ELEVATIONPROFILE_EVENTS: ElevationProfileEventsList = ["profilecollected"];
22
-
1
+ import { Deferred } from '../../Deferred';
2
+ import { createEvents } from '../../Events';
3
+ import { Vec3 } from "../../math/Vec3";
4
+ const ELEVATIONPROFILE_EVENTS = ["profilecollected"];
23
5
  /**
24
6
  * Point types
25
7
  */
26
8
  const SAFE = 0;
27
9
  const WARNING = 1;
28
10
  const COLLISION = 2;
29
-
30
11
  /**
31
12
  * drawData index names
32
13
  */
33
14
  const TRACK = 0;
34
15
  const GROUND = 1;
35
-
36
16
  const SEGMMENT_LENGTH = 1.0; // Distance between query points on the ground
37
17
  const GROUND_OFFSET = 1.0; // Ground level offset
38
18
  const BOTTOM_PADDING = 0.1; // Range minY padding in percentage from the bottom
39
19
  const TOP_PADDING = 0.1; // Range maxY padding in percentage from the top
40
-
41
20
  const HEIGHT_EPS = 0.1; // Warning height level error
42
-
43
21
  class ElevationProfile {
44
- public events: EventsHandler<ElevationProfileEventsList>;
45
- public planet: Planet;
46
- protected _warningHeightLevel: number;
47
- protected _pointsReady: boolean;
48
- protected _isWarning: boolean;
49
- protected _minX: number;
50
- protected _maxX: number;
51
- protected _minY: number;
52
- protected _maxY: number;
53
- protected _drawData: [number[][], number[][]];
54
- protected _promiseArr: Promise<void | number>[];
55
- protected _promiseCounter: number;
56
- protected _pMaxY: number;
57
- protected _pMinY: number;
58
- protected _pDist: number;
59
- protected _pTrackCoords: number[][];
60
- protected _pGroundCoords: number[][];
61
- protected _pIndex: number;
62
-
63
- constructor(options: ElevationProfileParams) {
22
+ constructor(options) {
64
23
  this.events = createEvents(ELEVATIONPROFILE_EVENTS);
65
-
66
24
  this.planet = options.planet;
67
-
68
25
  this._warningHeightLevel = 50;
69
26
  this._pointsReady = false;
70
27
  this._isWarning = false;
71
-
72
28
  this._minX = 0;
73
29
  this._maxX = 1000;
74
30
  this._minY = 0;
75
31
  this._maxY = 200;
76
-
77
32
  this._drawData = [][0];
78
-
79
33
  this._promiseArr = [];
80
34
  this._promiseCounter = 0;
81
35
  this._pMaxY = 0;
@@ -85,22 +39,19 @@ class ElevationProfile {
85
39
  this._pGroundCoords = [[0, 0, SAFE]];
86
40
  this._pIndex = 0;
87
41
  }
88
-
89
- public setWarningHeightLevel(warningHeight: number = 0) {
42
+ setWarningHeightLevel(warningHeight = 0) {
90
43
  this._warningHeightLevel = warningHeight;
91
44
  }
92
-
93
- public setRange(minX: number, maxX: number, minY: number, maxY: number) {
45
+ setRange(minX, maxX, minY, maxY) {
94
46
  this._minX = minX;
95
47
  this._maxX = maxX;
96
48
  this._minY = minY;
97
49
  this._maxY = maxY;
98
50
  }
99
-
100
- protected _getHeightAsync(ll: LonLat, pIndex: number): Promise<number> {
101
- let def = new Deferred<number>();
102
- this.planet.terrain!.getHeightAsync(ll, (elv: number) => {
103
- elv += this.planet.terrain!.geoid.getHeightLonLat(ll);
51
+ _getHeightAsync(ll, pIndex) {
52
+ let def = new Deferred();
53
+ this.planet.terrain.getHeightAsync(ll, (elv) => {
54
+ elv += this.planet.terrain.geoid.getHeightLonLat(ll);
104
55
  this._pGroundCoords[pIndex][1] = elv;
105
56
  this._pGroundCoords[pIndex][2] = SAFE;
106
57
  this._pGroundCoords[pIndex][3] = ll.height;
@@ -109,43 +60,32 @@ class ElevationProfile {
109
60
  });
110
61
  return def.promise;
111
62
  }
112
-
113
- protected _collectCoordsBetweenTwoTrackPoints(internalPoints: number, scaleFactor: number, p0: Vec3, trackDir: Vec3) {
63
+ _collectCoordsBetweenTwoTrackPoints(internalPoints, scaleFactor, p0, trackDir) {
114
64
  for (let j = 1; j <= internalPoints; j++) {
115
65
  this._pDist += SEGMMENT_LENGTH;
116
66
  this._pIndex++;
117
-
118
67
  // Point on the track segment
119
68
  let dirSegLen = j * scaleFactor;
120
69
  let pjd = p0.add(trackDir.scaleTo(dirSegLen));
121
70
  let llx = this.planet.ellipsoid.cartesianToLonLat(pjd);
122
-
123
71
  this._pGroundCoords[this._pIndex] = [this._pDist, 0, SAFE];
124
-
125
- ((lonlat: LonLat, index: number) => {
126
- this._promiseArr.push(
127
- this._getHeightAsync(lonlat, index)
128
- .then((elv) => {
129
- if (elv > this._pMaxY) this._pMaxY = elv;
130
- if (elv < this._pMinY) this._pMinY = elv;
131
- })
132
- );
72
+ ((lonlat, index) => {
73
+ this._promiseArr.push(this._getHeightAsync(lonlat, index)
74
+ .then((elv) => {
75
+ if (elv > this._pMaxY)
76
+ this._pMaxY = elv;
77
+ if (elv < this._pMinY)
78
+ this._pMinY = elv;
79
+ }));
133
80
  })(llx, this._pIndex);
134
81
  }
135
82
  }
136
-
137
- protected _collectAllPoints(pointsLonLat: LonLat[]) {
138
-
139
- let p0 = new Vec3(),
140
- p1 = new Vec3();
141
-
83
+ _collectAllPoints(pointsLonLat) {
84
+ let p0 = new Vec3(), p1 = new Vec3();
142
85
  for (let i = 1, len = pointsLonLat.length; i < len; i++) {
143
- let lonlat0 = pointsLonLat[i - 1],
144
- lonlat1 = pointsLonLat[i];
145
-
86
+ let lonlat0 = pointsLonLat[i - 1], lonlat1 = pointsLonLat[i];
146
87
  this.planet.ellipsoid.lonLatToCartesianRes(lonlat0, p0);
147
88
  this.planet.ellipsoid.lonLatToCartesianRes(lonlat1, p1);
148
-
149
89
  let trackDir = p1.sub(p0);
150
90
  let dirLength = trackDir.length();
151
91
  let n0 = this.planet.ellipsoid.getSurfaceNormal3v(p0);
@@ -153,40 +93,34 @@ class ElevationProfile {
153
93
  let projLen = proj.length();
154
94
  let internalPoints = Math.floor(projLen / SEGMMENT_LENGTH);
155
95
  let scaleFactor = SEGMMENT_LENGTH * dirLength / projLen;
156
-
157
96
  this._getGroundElevation(lonlat0);
158
-
159
97
  proj.normalize();
160
98
  trackDir.normalize();
161
-
162
99
  // Getting internal point elevations and looking for the collisions
163
100
  this._collectCoordsBetweenTwoTrackPoints(internalPoints, scaleFactor, p0, trackDir);
164
-
165
101
  this._pDist += projLen - internalPoints * SEGMMENT_LENGTH;
166
102
  this._pIndex++;
167
-
168
103
  let elv = lonlat1.height;
169
- if (elv > this._pMaxY) this._pMaxY = elv;
170
- if (elv < this._pMinY) this._pMinY = elv;
171
-
104
+ if (elv > this._pMaxY)
105
+ this._pMaxY = elv;
106
+ if (elv < this._pMinY)
107
+ this._pMinY = elv;
172
108
  this._pTrackCoords[i] = [this._pDist, elv];
173
109
  }
174
110
  }
175
-
176
- protected _getGroundElevation(lonLat: LonLat) {
111
+ _getGroundElevation(lonLat) {
177
112
  this._pGroundCoords[this._pIndex] = [this._pDist, 0, SAFE];
178
- this._promiseArr.push(
179
- this._getHeightAsync(lonLat, this._pIndex)
180
- .then((elv) => {
181
- if (typeof elv === 'number') {
182
- if ((elv > this._pMaxY) && (elv)) this._pMaxY = elv;
183
- if ((elv < this._pMinY) && (elv)) this._pMinY = elv;
184
- }
185
- })
186
- );
187
- }
188
-
189
- protected _collectPromise(resolve: (p: IProfileData) => void) {
113
+ this._promiseArr.push(this._getHeightAsync(lonLat, this._pIndex)
114
+ .then((elv) => {
115
+ if (typeof elv === 'number') {
116
+ if ((elv > this._pMaxY) && (elv))
117
+ this._pMaxY = elv;
118
+ if ((elv < this._pMinY) && (elv))
119
+ this._pMinY = elv;
120
+ }
121
+ }));
122
+ }
123
+ _collectPromise(resolve) {
190
124
  Promise.all(this._promiseArr).then(() => {
191
125
  resolve({
192
126
  dist: this._pDist,
@@ -197,9 +131,8 @@ class ElevationProfile {
197
131
  });
198
132
  });
199
133
  }
200
-
201
- protected _calcPointsAsync(pointsLonLat: LonLat[]) {
202
- return new Promise<IProfileData>((resolve: (p: IProfileData) => void, reject) => {
134
+ _calcPointsAsync(pointsLonLat) {
135
+ return new Promise((resolve, reject) => {
203
136
  this._pTrackCoords = [[0, pointsLonLat[0].height]];
204
137
  this._pMaxY = pointsLonLat[0].height;
205
138
  this._pMinY = this._pMaxY;
@@ -207,47 +140,37 @@ class ElevationProfile {
207
140
  this._pGroundCoords = [[0, 0, SAFE]];
208
141
  this._pIndex = 0;
209
142
  this._promiseArr = [];
210
-
211
143
  this._collectAllPoints(pointsLonLat);
212
144
  this._getGroundElevation(pointsLonLat[pointsLonLat.length - 1]);
213
145
  this._collectPromise(resolve);
214
146
  });
215
147
  }
216
-
217
- public get minX(): number {
148
+ get minX() {
218
149
  return this._minX;
219
150
  }
220
-
221
- public get maxX(): number {
151
+ get maxX() {
222
152
  return this._maxX;
223
153
  }
224
-
225
- public get minY(): number {
154
+ get minY() {
226
155
  return this._minY;
227
156
  }
228
-
229
- public get maxY(): number {
157
+ get maxY() {
230
158
  return this._maxY;
231
159
  }
232
-
233
- public get pointsReady(): boolean {
160
+ get pointsReady() {
234
161
  return this._pointsReady;
235
162
  }
236
-
237
- public get isWarningOrCollision(): boolean {
163
+ get isWarningOrCollision() {
238
164
  return this._isWarning;
239
165
  }
240
-
241
- public collectProfile(pointsLonLat: LonLat[]) {
166
+ collectProfile(pointsLonLat) {
242
167
  this._pointsReady = false;
243
168
  this._isWarning = false;
244
-
245
- if (!pointsLonLat || !pointsLonLat.length) return;
246
-
169
+ if (!pointsLonLat || !pointsLonLat.length)
170
+ return;
247
171
  this._promiseCounter++;
248
-
249
- ((counter: number) => {
250
- this._calcPointsAsync(pointsLonLat).then((p: IProfileData) => {
172
+ ((counter) => {
173
+ this._calcPointsAsync(pointsLonLat).then((p) => {
251
174
  if (counter === this._promiseCounter) {
252
175
  this.setRange(0, p.dist, p.minY - BOTTOM_PADDING * Math.abs(p.minY), p.maxY + Math.abs(p.maxY) * TOP_PADDING);
253
176
  this._pointsReady = true;
@@ -257,37 +180,29 @@ class ElevationProfile {
257
180
  });
258
181
  })(this._promiseCounter);
259
182
  }
260
-
261
- protected _setPointType(pIndex: number) {
183
+ _setPointType(pIndex) {
262
184
  if ((this._pGroundCoords[pIndex][3] >= this._pGroundCoords[pIndex][1]) &&
263
185
  (this._pGroundCoords[pIndex][3] < this._pGroundCoords[pIndex][1] + this._warningHeightLevel - HEIGHT_EPS)) {
264
186
  this._pGroundCoords[pIndex][2] = WARNING;
265
187
  }
266
-
267
188
  if (this._pGroundCoords[pIndex][3] <= this._pGroundCoords[pIndex][1] + GROUND_OFFSET) {
268
189
  this._pGroundCoords[pIndex][2] = COLLISION;
269
190
  }
270
-
271
191
  if (this._pGroundCoords[pIndex][2] == WARNING || this._pGroundCoords[pIndex][2] == COLLISION) {
272
192
  this._isWarning = true;
273
193
  }
274
194
  }
275
-
276
- protected _setPointsType() {
195
+ _setPointsType() {
277
196
  this._isWarning = false;
278
-
279
197
  this._pTrackCoords = this._drawData[TRACK];
280
198
  this._pGroundCoords = this._drawData[GROUND];
281
-
282
199
  for (let i = 0; i < this._pGroundCoords.length; i++) {
283
200
  this._setPointType(i);
284
201
  }
285
-
286
202
  this._drawData[GROUND] = this._pGroundCoords;
287
203
  this.events.dispatch(this.events.profilecollected, this._drawData, this);
288
204
  }
289
-
290
- public clear() {
205
+ clear() {
291
206
  this._pointsReady = false;
292
207
  this._isWarning = false;
293
208
  this._drawData = [][0];
@@ -299,11 +214,4 @@ class ElevationProfile {
299
214
  this._pIndex = 0;
300
215
  }
301
216
  }
302
-
303
- export {
304
- COLLISION,
305
- SAFE,
306
- WARNING,
307
- IProfileData,
308
- ElevationProfile,
309
- };
217
+ export { COLLISION, SAFE, WARNING, ElevationProfile, };
@@ -0,0 +1,7 @@
1
+ import { Ruler, IRulerParams } from "../ruler/Ruler";
2
+ interface IHeightRulerParams extends IRulerParams {
3
+ }
4
+ export declare class HeightRuler extends Ruler {
5
+ constructor(options?: IHeightRulerParams);
6
+ }
7
+ export {};
@@ -1,16 +1,11 @@
1
- import {Ruler, IRulerParams} from "../ruler/Ruler";
2
- import {HeightRulerScene} from "./HeightRulerScene";
3
-
4
- interface IHeightRulerParams extends IRulerParams {
5
-
6
- }
7
-
1
+ import { Ruler } from "../ruler/Ruler";
2
+ import { HeightRulerScene } from "./HeightRulerScene";
8
3
  export class HeightRuler extends Ruler {
9
- constructor(options: IHeightRulerParams = {}) {
4
+ constructor(options = {}) {
10
5
  super(options);
11
6
  this._rulerScene = new HeightRulerScene({
12
7
  name: `heightRulerScene:${this.__id}`,
13
8
  ignoreTerrain: false
14
9
  });
15
10
  }
16
- }
11
+ }
@@ -0,0 +1,35 @@
1
+ import { Entity } from '../../entity/Entity';
2
+ import { LonLat } from "../../LonLat";
3
+ import { RulerScene, IRulerSceneParams } from "../ruler/RulerScene";
4
+ import { Vector } from "../../layer/Vector";
5
+ import { Vec3 } from "../../math/Vec3";
6
+ interface IHeightRulerSceneParams extends IRulerSceneParams {
7
+ }
8
+ declare class HeightRulerScene extends RulerScene {
9
+ protected _geoRulerLayer: Vector;
10
+ protected _heightLabels: Entity[];
11
+ protected _rayH: Entity;
12
+ protected _rayV: Entity;
13
+ constructor(options?: IHeightRulerSceneParams);
14
+ setVisibility(visibility: boolean): void;
15
+ get deltaLabel(): Entity;
16
+ get startLabel(): Entity;
17
+ get endLabel(): Entity;
18
+ get corners(): Entity[];
19
+ get startCorner(): Entity;
20
+ get endCorner(): Entity;
21
+ get startCornerLonLat(): LonLat;
22
+ get startCornerHeight(): number;
23
+ get endCornerLonLat(): LonLat;
24
+ get endCornerHeight(): number;
25
+ get maxHeightCornerLonLat(): LonLat;
26
+ get minHeightCornerLonLat(): LonLat;
27
+ get deltaHeight(): number;
28
+ _drawLine(startLonLat: LonLat, endLonLat: LonLat, startPos?: Vec3): void;
29
+ protected _updateHeightRaysAndLabels(): Promise<void>;
30
+ clear(): void;
31
+ _createCorners(): void;
32
+ init(): void;
33
+ frame(): void;
34
+ }
35
+ export { HeightRulerScene };