@openglobus/og 0.18.0 → 0.18.1

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} +82 -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} +101 -373
  160. package/lib/js/entity/EntityCollection.d.ts +364 -0
  161. package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +51 -353
  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} +62 -164
  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 +244 -0
  221. package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +147 -418
  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 +311 -0
  283. package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +169 -611
  284. package/lib/js/renderer/RendererEvents.d.ts +237 -0
  285. package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +134 -471
  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} +251 -935
  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} +82 -239
  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} +45 -181
  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} +184 -341
  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,39 +1,15 @@
1
1
  import * as mercator from '../mercator';
2
- import {NW, NE, SW, SE, RENDERING, VISIBLE_DISTANCE} from './quadTree';
3
- import {EntityCollection} from '../entity/EntityCollection';
4
- import {Extent} from '../Extent';
5
- import {LonLat} from '../LonLat';
6
- import {Node} from "../quadTree/Node";
7
- import {Planet} from "../scene/Planet";
8
- import {Sphere} from '../bv/Sphere';
9
- import {Segment} from "../segment/Segment";
10
- import {Vec3} from '../math/Vec3';
11
- import {Vector} from "../layer/Vector";
12
- import {Entity} from "../entity/Entity";
13
-
14
- type NodesDict = Record<number, Node>;
15
-
2
+ import { NW, NE, SW, SE, RENDERING, VISIBLE_DISTANCE } from './quadTree';
3
+ import { EntityCollection } from '../entity/EntityCollection';
4
+ import { Extent } from '../Extent';
5
+ import { LonLat } from '../LonLat';
6
+ import { Sphere } from '../bv/Sphere';
7
+ import { Vec3 } from '../math/Vec3';
16
8
  /**
17
9
  * @todo: remove planet parameter. It's already available in the layer.
18
10
  */
19
11
  class EntityCollectionNode {
20
-
21
- public layer: Vector;
22
- public parentNode: EntityCollectionNode | null;
23
- public childrenNodes: EntityCollectionNode[];
24
- public partId: number;
25
- public nodeId: number;
26
- public state: number | null;
27
- public extent: Extent;
28
- public count: number;
29
- public deferredEntities: Entity[];
30
- public entityCollection: EntityCollection | null;
31
- public zoom: number;
32
- public bsphere: Sphere;
33
-
34
- public _inTheQueue: boolean;
35
-
36
- constructor(layer: Vector, partId: number, parent: EntityCollectionNode | null, id: number, extent: Extent, planet: Planet, zoom: number) {
12
+ constructor(layer, partId, parent, id, extent, planet, zoom) {
37
13
  this.layer = layer;
38
14
  this.parentNode = parent;
39
15
  this.childrenNodes = [];
@@ -46,23 +22,17 @@ class EntityCollectionNode {
46
22
  this.entityCollection = null;
47
23
  this.zoom = zoom;
48
24
  this._inTheQueue = false;
49
-
50
25
  this.bsphere = new Sphere();
51
-
52
26
  planet && this._setExtentBounds();
53
27
  }
54
-
55
- public insertEntity(entity: Entity, rightNow: boolean = false) {
28
+ insertEntity(entity, rightNow = false) {
56
29
  this.buildTree([entity], rightNow);
57
30
  }
58
-
59
- protected _addEntitiesToCollection(entities: Entity[], rightNow: boolean = false) {
31
+ _addEntitiesToCollection(entities, rightNow = false) {
60
32
  if (entities.length) {
61
33
  const l = this.layer;
62
- const p = l._planet!;
63
-
34
+ const p = l._planet;
64
35
  let ec = this.entityCollection;
65
-
66
36
  if (!ec) {
67
37
  ec = new EntityCollection({
68
38
  pickingEnabled: l._pickingEnabled,
@@ -74,90 +44,81 @@ class EntityCollectionNode {
74
44
  l._bindEventsDefault(ec);
75
45
  this.entityCollection = ec;
76
46
  }
77
-
78
47
  if (rightNow || !l.async) {
79
- this.entityCollection!.addEntities(entities);
80
- } else {
48
+ this.entityCollection.addEntities(entities);
49
+ }
50
+ else {
81
51
  this.deferredEntities.push.apply(this.deferredEntities, entities);
82
52
  }
83
53
  }
84
54
  }
85
-
86
- protected _setExtentBounds() {
55
+ _setExtentBounds() {
87
56
  if (!this.nodeId) {
88
- this.bsphere.radius = this.layer._planet!.ellipsoid.equatorialSize;
57
+ this.bsphere.radius = this.layer._planet.ellipsoid.equatorialSize;
89
58
  this.bsphere.center = new Vec3();
90
- } else {
91
- this.bsphere.setFromExtent(this.layer._planet!.ellipsoid, this.extent.inverseMercator());
59
+ }
60
+ else {
61
+ this.bsphere.setFromExtent(this.layer._planet.ellipsoid, this.extent.inverseMercator());
92
62
  }
93
63
  }
94
-
95
- public __setLonLat__(entity: Entity): LonLat {
96
-
64
+ __setLonLat__(entity) {
97
65
  if (entity._lonLat.isZero() && !entity._cartesian.isZero()) {
98
- entity._lonLat = this.layer._planet!.ellipsoid.cartesianToLonLat(entity._cartesian);
66
+ entity._lonLat = this.layer._planet.ellipsoid.cartesianToLonLat(entity._cartesian);
99
67
  }
100
-
101
68
  if (Math.abs(entity._lonLat.lat) < mercator.MAX_LAT) {
102
69
  entity._lonLatMerc = entity._lonLat.forwardMercator();
103
- } else {
70
+ }
71
+ else {
104
72
  entity._lonLatMerc = new LonLat();
105
73
  }
106
74
  return entity._lonLatMerc;
107
75
  }
108
-
109
- public buildTree(entities: Entity[], rightNow: boolean = false) {
110
-
76
+ buildTree(entities, rightNow = false) {
111
77
  this.count += entities.length;
112
-
113
78
  if (entities.length > this.layer._nodeCapacity) {
114
79
  const cn = this.childrenNodes;
115
80
  if (!cn.length) {
116
81
  this.createChildrenNodes();
117
82
  }
118
-
119
- let en_nw = [],
120
- en_ne = [],
121
- en_sw = [],
122
- en_se = [];
123
-
83
+ let en_nw = [], en_ne = [], en_sw = [], en_se = [];
124
84
  let i = entities.length;
125
85
  while (i--) {
126
86
  const ei = entities[i];
127
87
  if (cn[NW].isInside(ei)) {
128
88
  ei._nodePtr = cn[NW];
129
89
  en_nw.push(ei);
130
- } else if (cn[NE].isInside(ei)) {
90
+ }
91
+ else if (cn[NE].isInside(ei)) {
131
92
  ei._nodePtr = cn[NE];
132
93
  en_ne.push(ei);
133
- } else if (cn[SW].isInside(ei)) {
94
+ }
95
+ else if (cn[SW].isInside(ei)) {
134
96
  ei._nodePtr = cn[SW];
135
97
  en_sw.push(ei);
136
- } else if (cn[SE].isInside(ei)) {
98
+ }
99
+ else if (cn[SE].isInside(ei)) {
137
100
  ei._nodePtr = cn[SE];
138
101
  en_se.push(ei);
139
102
  }
140
103
  }
141
-
142
104
  en_nw.length && cn[NW].buildTree(en_nw, rightNow);
143
105
  en_ne.length && cn[NE].buildTree(en_ne, rightNow);
144
106
  en_sw.length && cn[SW].buildTree(en_sw, rightNow);
145
107
  en_se.length && cn[SE].buildTree(en_se, rightNow);
146
-
147
- } else {
108
+ }
109
+ else {
148
110
  this._addEntitiesToCollection(entities, rightNow);
149
111
  }
150
112
  }
151
-
152
- public isInside(entity: Entity): boolean {
113
+ isInside(entity) {
153
114
  if (entity._lonLatMerc) {
154
115
  return this.extent.isInside(entity._lonLatMerc);
155
- } else {
116
+ }
117
+ else {
156
118
  return false;
157
119
  }
158
120
  }
159
-
160
- public createChildrenNodes() {
121
+ createChildrenNodes() {
161
122
  const l = this.layer;
162
123
  const ext = this.extent;
163
124
  const size_x = ext.getWidth() * 0.5;
@@ -167,25 +128,25 @@ class EntityCollectionNode {
167
128
  const id = this.nodeId * 4 + 1;
168
129
  const c = new LonLat(sw.lon + size_x, sw.lat + size_y);
169
130
  const nd = this.childrenNodes;
170
- const p = this.layer._planet!;
131
+ const p = this.layer._planet;
171
132
  const z = this.zoom + 1;
172
-
173
133
  nd[NW] = new EntityCollectionNode(l, NW, this, id, new Extent(new LonLat(sw.lon, sw.lat + size_y), new LonLat(sw.lon + size_x, ne.lat)), p, z);
174
134
  nd[NE] = new EntityCollectionNode(l, NE, this, id, new Extent(c, new LonLat(ne.lon, ne.lat)), p, z);
175
135
  nd[SW] = new EntityCollectionNode(l, SW, this, id, new Extent(new LonLat(sw.lon, sw.lat), c), p, z);
176
136
  nd[SE] = new EntityCollectionNode(l, SE, this, id, new Extent(new LonLat(sw.lon + size_x, sw.lat), new LonLat(ne.lon, sw.lat + size_y)), p, z);
177
137
  }
178
-
179
- public collectRenderCollectionsPASS1(visibleNodes: NodesDict, outArr: EntityCollection[]) {
138
+ collectRenderCollectionsPASS1(visibleNodes, outArr) {
180
139
  const n = visibleNodes[this.nodeId];
181
140
  if (n) {
182
141
  const cn = this.childrenNodes;
183
142
  if (this.entityCollection) {
184
143
  this.renderCollection(outArr, visibleNodes);
185
- } else if (cn.length) {
144
+ }
145
+ else if (cn.length) {
186
146
  if (n.state === RENDERING) {
187
147
  this.layer._secondPASS.push(this);
188
- } else {
148
+ }
149
+ else {
189
150
  cn[NW].collectRenderCollectionsPASS1(visibleNodes, outArr);
190
151
  cn[NE].collectRenderCollectionsPASS1(visibleNodes, outArr);
191
152
  cn[SW].collectRenderCollectionsPASS1(visibleNodes, outArr);
@@ -194,21 +155,17 @@ class EntityCollectionNode {
194
155
  }
195
156
  }
196
157
  }
197
-
198
- public collectRenderCollectionsPASS2(visibleNodes: NodesDict, outArr: EntityCollection[], renderingNodeId: number) {
199
- const p = this.layer._planet!;
158
+ collectRenderCollectionsPASS2(visibleNodes, outArr, renderingNodeId) {
159
+ const p = this.layer._planet;
200
160
  const cam = p.camera;
201
-
202
161
  const altVis = (cam.eye.distance(this.bsphere.center) - this.bsphere.radius <
203
162
  VISIBLE_DISTANCE * Math.sqrt(cam._lonLat.height)) || cam._lonLat.height > 10000;
204
-
205
163
  if (this.count > 0 && altVis && cam.frustum.containsSphere(this.bsphere)) {
206
-
207
164
  const cn = this.childrenNodes;
208
-
209
165
  if (this.entityCollection) {
210
166
  this.renderCollection(outArr, visibleNodes, renderingNodeId);
211
- } else if (cn.length) {
167
+ }
168
+ else if (cn.length) {
212
169
  cn[NW].collectRenderCollectionsPASS2(visibleNodes, outArr, renderingNodeId);
213
170
  cn[NE].collectRenderCollectionsPASS2(visibleNodes, outArr, renderingNodeId);
214
171
  cn[SW].collectRenderCollectionsPASS2(visibleNodes, outArr, renderingNodeId);
@@ -216,67 +173,58 @@ class EntityCollectionNode {
216
173
  }
217
174
  }
218
175
  }
219
-
220
- public applyCollection() {
221
- this.entityCollection!.addEntities(this.deferredEntities);
176
+ applyCollection() {
177
+ this.entityCollection.addEntities(this.deferredEntities);
222
178
  this.deferredEntities.length = 0;
223
179
  this.deferredEntities = [];
224
180
  this._inTheQueue = false;
225
181
  }
226
-
227
- public traverseTree(callback: Function) {
228
-
182
+ traverseTree(callback) {
229
183
  const cn = this.childrenNodes;
230
-
231
184
  if (this.entityCollection) {
232
185
  callback(this);
233
- } else if (cn.length) {
186
+ }
187
+ else if (cn.length) {
234
188
  cn[NW].traverseTree(callback);
235
189
  cn[NE].traverseTree(callback);
236
190
  cn[SW].traverseTree(callback);
237
191
  cn[SE].traverseTree(callback);
238
192
  }
239
193
  }
240
-
241
- public renderCollection(outArr: EntityCollection[], visibleNodes: NodesDict, renderingNodeId?: number) {
242
-
194
+ renderCollection(outArr, visibleNodes, renderingNodeId) {
243
195
  const l = this.layer;
244
-
245
196
  l._renderingNodes[this.nodeId] = true;
246
-
247
197
  if (this.deferredEntities.length && !this._inTheQueue) {
248
198
  if (l.async) {
249
199
  l._queueDeferredNode(this);
250
- } else {
200
+ }
201
+ else {
251
202
  this.applyCollection();
252
203
  }
253
204
  }
254
-
255
- const ec = this.entityCollection!;
256
-
205
+ const ec = this.entityCollection;
257
206
  ec._fadingOpacity = l._fadingOpacity;
258
207
  ec.scaleByDistance = l.scaleByDistance;
259
208
  ec.pickingScale = l.pickingScale;
260
209
  ec.polygonOffsetUnits = l.polygonOffsetUnits;
261
-
262
210
  outArr.push(ec);
263
-
264
211
  if (l.clampToGround || l.relativeToGround) {
265
212
  const e = ec._entities;
266
213
  let i = e.length;
267
-
268
214
  if (visibleNodes[this.nodeId] && visibleNodes[this.nodeId].state === RENDERING) {
269
215
  while (i--) {
270
216
  let ei = e[i];
271
217
  this.alignEntityToTheGround(ei, visibleNodes[this.nodeId].segment);
272
218
  }
273
- } else if (renderingNodeId) {
219
+ }
220
+ else if (renderingNodeId) {
274
221
  while (i--) {
275
222
  let ei = e[i];
276
223
  this.alignEntityToTheGround(ei, visibleNodes[renderingNodeId].segment);
277
224
  }
278
- } else {
279
- const n = l._planet!._renderedNodes;
225
+ }
226
+ else {
227
+ const n = l._planet._renderedNodes;
280
228
  while (i--) {
281
229
  let ei = e[i];
282
230
  let j = n.length;
@@ -290,37 +238,31 @@ class EntityCollectionNode {
290
238
  }
291
239
  }
292
240
  }
293
-
294
- public alignEntityToTheGround(entity: Entity, segment: Segment) {
241
+ alignEntityToTheGround(entity, segment) {
295
242
  let res = new Vec3();
296
243
  segment.getEntityTerrainPoint(entity, res);
297
244
  let alt = (Number(this.layer.relativeToGround) && entity._altitude) || 0.0;
298
245
  if (alt) {
299
- let n = this.layer._planet!.ellipsoid.getSurfaceNormal3v(res);
246
+ let n = this.layer._planet.ellipsoid.getSurfaceNormal3v(res);
300
247
  entity._setCartesian3vSilent(res.addA(n.scale(alt)));
301
- } else {
248
+ }
249
+ else {
302
250
  entity._setCartesian3vSilent(res);
303
251
  }
304
252
  }
305
-
306
- public isVisible(): boolean {
253
+ isVisible() {
307
254
  if (this.layer._renderingNodes[this.nodeId]) {
308
255
  return true;
309
256
  }
310
257
  return false;
311
258
  }
312
259
  }
313
-
314
260
  class EntityCollectionNodeWGS84 extends EntityCollectionNode {
315
-
316
- public isNorth: boolean;
317
-
318
- constructor(layer: Vector, partId: number, parent: EntityCollectionNodeWGS84 | null, id: number, extent: Extent, planet: Planet, zoom: number) {
261
+ constructor(layer, partId, parent, id, extent, planet, zoom) {
319
262
  super(layer, partId, parent, id, extent, planet, zoom);
320
263
  this.isNorth = false;
321
264
  }
322
-
323
- public override createChildrenNodes() {
265
+ createChildrenNodes() {
324
266
  const l = this.layer;
325
267
  const ext = this.extent;
326
268
  const size_x = ext.getWidth() * 0.5;
@@ -330,66 +272,57 @@ class EntityCollectionNodeWGS84 extends EntityCollectionNode {
330
272
  const id = this.nodeId * 4 + 1;
331
273
  const c = new LonLat(sw.lon + size_x, sw.lat + size_y);
332
274
  const nd = this.childrenNodes;
333
- const p = this.layer._planet!;
275
+ const p = this.layer._planet;
334
276
  const z = this.zoom + 1;
335
-
336
277
  nd[NW] = new EntityCollectionNodeWGS84(l, NW, this, id, new Extent(new LonLat(sw.lon, sw.lat + size_y), new LonLat(sw.lon + size_x, ne.lat)), p, z);
337
278
  nd[NE] = new EntityCollectionNodeWGS84(l, NE, this, id, new Extent(c, new LonLat(ne.lon, ne.lat)), p, z);
338
279
  nd[SW] = new EntityCollectionNodeWGS84(l, SW, this, id, new Extent(new LonLat(sw.lon, sw.lat), c), p, z);
339
280
  nd[SE] = new EntityCollectionNodeWGS84(l, SE, this, id, new Extent(new LonLat(sw.lon + size_x, sw.lat), new LonLat(ne.lon, sw.lat + size_y)), p, z);
340
281
  }
341
-
342
- protected override _setExtentBounds() {
282
+ _setExtentBounds() {
343
283
  if (this.extent.northEast.lat > 0) {
344
284
  this.isNorth = true;
345
285
  }
346
- this.bsphere.setFromExtent(this.layer._planet!.ellipsoid, this.extent);
286
+ this.bsphere.setFromExtent(this.layer._planet.ellipsoid, this.extent);
347
287
  }
348
-
349
- public override __setLonLat__(entity: Entity): LonLat {
288
+ __setLonLat__(entity) {
350
289
  if (entity._lonLat.isZero()) {
351
- entity._lonLat = this.layer._planet!.ellipsoid.cartesianToLonLat(entity._cartesian);
290
+ entity._lonLat = this.layer._planet.ellipsoid.cartesianToLonLat(entity._cartesian);
352
291
  }
353
292
  return entity._lonLat;
354
293
  }
355
-
356
- public override isVisible(): boolean {
294
+ isVisible() {
357
295
  if (this.isNorth && this.layer._renderingNodesNorth[this.nodeId]) {
358
296
  return true;
359
- } else if (this.layer._renderingNodesSouth[this.nodeId]) {
297
+ }
298
+ else if (this.layer._renderingNodesSouth[this.nodeId]) {
360
299
  return true;
361
300
  }
362
301
  return false;
363
302
  }
364
-
365
- public override isInside(entity: Entity): boolean {
303
+ isInside(entity) {
366
304
  return this.extent.isInside(entity._lonLat);
367
305
  }
368
-
369
- public override renderCollection(outArr: EntityCollection[], visibleNodes: NodesDict, renderingNode: number) {
370
-
306
+ renderCollection(outArr, visibleNodes, renderingNode) {
371
307
  if (this.isNorth) {
372
308
  this.layer._renderingNodesNorth[this.nodeId] = true;
373
- } else {
309
+ }
310
+ else {
374
311
  this.layer._renderingNodesSouth[this.nodeId] = true;
375
312
  }
376
-
377
313
  if (this.deferredEntities.length && !this._inTheQueue) {
378
314
  if (this.layer.async) {
379
315
  this.layer._queueDeferredNode(this);
380
- } else {
316
+ }
317
+ else {
381
318
  this.applyCollection();
382
319
  }
383
320
  }
384
-
385
- const ec = this.entityCollection!;
386
-
321
+ const ec = this.entityCollection;
387
322
  ec._fadingOpacity = this.layer._fadingOpacity;
388
323
  ec.scaleByDistance = this.layer.scaleByDistance;
389
324
  ec.pickingScale = this.layer.pickingScale;
390
-
391
325
  outArr.push(ec);
392
326
  }
393
327
  }
394
-
395
- export {EntityCollectionNode, EntityCollectionNodeWGS84};
328
+ export { EntityCollectionNode, EntityCollectionNodeWGS84 };
@@ -0,0 +1,6 @@
1
+ import { Planet } from "../scene/Planet";
2
+ import { QuadTreeStrategy } from "./QuadTreeStrategy";
3
+ export declare class MarsQuadTreeStrategy extends QuadTreeStrategy {
4
+ constructor(planet: Planet);
5
+ init(): void;
6
+ }
@@ -0,0 +1,17 @@
1
+ import * as quadTree from "../quadTree/quadTree";
2
+ import { Extent } from "../Extent";
3
+ import { EPSG4326 } from "../proj/EPSG4326";
4
+ import { Node } from "../quadTree/Node";
5
+ import { SegmentLonLatWgs84 } from "../segment/SegmentLonLatWgs84";
6
+ import { QuadTreeStrategy } from "./QuadTreeStrategy";
7
+ export class MarsQuadTreeStrategy extends QuadTreeStrategy {
8
+ constructor(planet) {
9
+ super(planet, "Mars", EPSG4326);
10
+ }
11
+ init() {
12
+ let earthQuadTreeSouth = new Node(SegmentLonLatWgs84, this.planet, quadTree.NW, null, 0, 0, Extent.createFromArray([-180, -90, 0, 90]));
13
+ let earthQuadTreeWest = new Node(SegmentLonLatWgs84, this.planet, quadTree.NW, null, 0, 0, Extent.createFromArray([0, -90, 180, 90]));
14
+ this._quadTreeList.push(earthQuadTreeSouth);
15
+ this._quadTreeList.push(earthQuadTreeWest);
16
+ }
17
+ }
@@ -0,0 +1,61 @@
1
+ import { Extent } from "../Extent";
2
+ import { Planet } from "../scene/Planet";
3
+ import { Segment } from "../segment/Segment";
4
+ import { PlanetCamera } from "../camera/PlanetCamera";
5
+ /**
6
+ * Quad tree planet segment node.
7
+ * @constructor
8
+ * @param {Segment} segmentPrototype - Planet segment node constructor.
9
+ * @param {Planet} planet - Planet scene instance.
10
+ * @param {number} partId - NorthEast, SouthWest etc.
11
+ * @param {Node} parent - Parent of this node.
12
+ * @param {number} id - Tree node identifier (id * 4 + 1);
13
+ * @param {number} tileZoom - Deep index of the quad tree.
14
+ * @param {Extent} extent - Planet segment extent.
15
+ */
16
+ declare class Node {
17
+ SegmentPrototype: typeof Segment;
18
+ planet: Planet;
19
+ parentNode: Node | null;
20
+ partId: number;
21
+ nodeId: number;
22
+ state: number | null;
23
+ appliedTerrainNodeId: number;
24
+ sideSizeLog2: [number, number, number, number];
25
+ ready: boolean;
26
+ neighbors: [Node[], Node[], Node[], Node[]];
27
+ equalizedSideWithNodeId: number[];
28
+ nodes: [Node, Node, Node, Node] | [];
29
+ segment: Segment;
30
+ _cameraInside: boolean;
31
+ inFrustum: number;
32
+ constructor(SegmentPrototype: typeof Segment, planet: Planet, partId: number, parent: Node | null, id: number, tileZoom: number, extent: Extent);
33
+ createChildrenNodes(): void;
34
+ createBounds(): void;
35
+ getState(): number | null;
36
+ /**
37
+ * Returns the same deep existent neighbour node.
38
+ * @public
39
+ * @param {number} side - Neighbour side index e.g. og.quadTree.N, og.quadTree.W etc.
40
+ * @returns {Node} -
41
+ */
42
+ getEqualNeighbor(side: number): Node | undefined;
43
+ renderTree(cam: PlanetCamera, maxZoom?: number | null, terrainReadySegment?: Segment | null, stopLoading?: boolean): void;
44
+ traverseNodes(cam: PlanetCamera, maxZoom?: number | null, terrainReadySegment?: Segment | null, stopLoading?: boolean): void;
45
+ renderNode(inFrustum: number, onlyTerrain?: boolean, terrainReadySegment?: Segment | null, stopLoading?: boolean): void;
46
+ /**
47
+ * Searching for neighbours and picking up current node to render processing.
48
+ * @public
49
+ */
50
+ addToRender(inFrustum: number): void;
51
+ getCommonSide(node: Node): number;
52
+ whileNormalMapCreating(): void;
53
+ whileTerrainLoading(terrainReadySegment?: Segment | null): void;
54
+ destroy(): void;
55
+ clearTree(): void;
56
+ clearBranches(): void;
57
+ destroyBranches(): void;
58
+ traverseTree(callback: Function): void;
59
+ getOffsetOppositeNeighbourSide(neighbourNode: Node, side: number): number;
60
+ }
61
+ export { Node };