@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,623 @@
1
+ import { Control } from "../control/Control";
2
+ import { EventsHandler } from "../Events";
3
+ import { EmptyTerrain } from "../terrain/EmptyTerrain";
4
+ import { Extent } from "../Extent";
5
+ import { Entity } from "../entity/Entity";
6
+ import { Ellipsoid } from "../ellipsoid/Ellipsoid";
7
+ import { EntityCollection } from "../entity/EntityCollection";
8
+ import { GeoImageCreator } from "../utils/GeoImageCreator";
9
+ import { IBaseInputState } from "../renderer/RendererEvents";
10
+ import { Key, Lock } from "../Lock";
11
+ import { Layer } from "../layer/Layer";
12
+ import { Loader } from "../utils/Loader";
13
+ import { LonLat } from "../LonLat";
14
+ import { Node } from "../quadTree/Node";
15
+ import { NormalMapCreator } from "../utils/NormalMapCreator";
16
+ import { PlainSegmentWorker } from "../utils/PlainSegmentWorker";
17
+ import { PlanetCamera } from "../camera/PlanetCamera";
18
+ import { Quat } from "../math/Quat";
19
+ import { QuadTreeStrategy } from "../quadTree/QuadTreeStrategy";
20
+ import { Ray } from "../math/Ray";
21
+ import { RenderNode } from "./RenderNode";
22
+ import { TerrainWorker } from "../utils/TerrainWorker";
23
+ import { Vec2, Vec3, NumberArray2, NumberArray3, NumberArray4 } from "../math/index";
24
+ import { VectorTileCreator } from "../utils/VectorTileCreator";
25
+ import { WebGLBufferExt, WebGLTextureExt, IDefaultTextureParams } from "../webgl/Handler";
26
+ export interface IPlanetParams {
27
+ name?: string;
28
+ ellipsoid?: Ellipsoid;
29
+ minAltitude?: number;
30
+ maxAltitude?: number;
31
+ frustums?: NumberArray2[];
32
+ maxEqualZoomAltitude?: number;
33
+ minEqualZoomAltitude?: number;
34
+ minEqualZoomCameraSlope?: number;
35
+ quadTreeStrategyPrototype?: typeof QuadTreeStrategy;
36
+ ambient?: string | NumberArray3 | Vec3;
37
+ diffuse?: string | NumberArray3 | Vec3;
38
+ specular?: string | NumberArray3 | Vec3;
39
+ shininess?: number;
40
+ nightTextureSrc?: string | null;
41
+ specularTextureSrc?: string | null;
42
+ maxGridSize?: number;
43
+ maxLoadingRequests?: number;
44
+ atmosphereEnabled?: boolean;
45
+ }
46
+ export type PlanetEventsList = [
47
+ "draw",
48
+ "layeradd",
49
+ "baselayerchange",
50
+ "layerremove",
51
+ "layervisibilitychange",
52
+ "rendercompleted",
53
+ "terraincompleted",
54
+ "layerloadend"
55
+ ];
56
+ type IndexBufferCacheData = {
57
+ buffer: WebGLBufferExt | null;
58
+ };
59
+ /**
60
+ * Main class for rendering planet
61
+ * @class
62
+ * @extends {RenderNode}
63
+ * @param {string} [options.name="Earth"] - Planet name(Earth by default)
64
+ * @param {Ellipsoid} [options.ellipsoid] - Planet ellipsoid(WGS84 by default)
65
+ * @param {Number} [options.maxGridSize=128] - Segment maximal grid size
66
+ * @param {Number} [options.maxEqualZoomAltitude=15000000.0] - Maximal altitude since segments on the screen become the same zoom level
67
+ * @param {Number} [options.minEqualZoomAltitude=10000.0] - Minimal altitude since segments on the screen become the same zoom level
68
+ * @param {Number} [options.minEqualZoomCameraSlope=0.8] - Minimal camera slope above te globe where segments on the screen become the same zoom level
69
+ *
70
+ * @fires EventsHandler<PlanetEventList>#draw
71
+ * @fires EventsHandler<PlanetEventList>#layeradd
72
+ * @fires EventsHandler<PlanetEventList>#baselayerchange
73
+ * @fires EventsHandler<PlanetEventList>#layerremove
74
+ * @fires EventsHandler<PlanetEventList>#layervisibilitychange
75
+ * @fires EventsHandler<PlanetEventList>#geoimageadd
76
+ */
77
+ export declare class Planet extends RenderNode {
78
+ events: EventsHandler<PlanetEventsList>;
79
+ /**
80
+ * @public
81
+ * @type {Ellipsoid}
82
+ */
83
+ ellipsoid: Ellipsoid;
84
+ /**
85
+ * @public
86
+ * @override
87
+ * @type {Boolean}
88
+ */
89
+ lightEnabled: boolean;
90
+ /**
91
+ * Squared ellipsoid radius.
92
+ * @public
93
+ * @type {number}
94
+ */
95
+ _planetRadius2: number;
96
+ /**
97
+ * Layers array.
98
+ * @public
99
+ * @type {Array.<Layer>}
100
+ */
101
+ _layers: Layer[];
102
+ /**
103
+ * Flag to trigger layer update in a next frame
104
+ * @type {boolean}
105
+ * @protected
106
+ */
107
+ protected _updateLayer: boolean;
108
+ /**
109
+ * Current visible imagery tile layers array.
110
+ * @public
111
+ * @type {Array.<Layer>}
112
+ */
113
+ visibleTileLayers: Layer[];
114
+ /**
115
+ * Current visible vector layers array.
116
+ * @protected
117
+ * @type {Array.<Layer>}
118
+ */
119
+ protected visibleVectorLayers: Layer[];
120
+ protected _visibleTileLayerSlices: Layer[][];
121
+ /**
122
+ * Vector layers visible nodes with collections.
123
+ * @protected
124
+ * @type {Array.<EntityCollection>}
125
+ */
126
+ protected _frustumEntityCollections: EntityCollection[];
127
+ /**
128
+ * There is only one base layer on the globe when layer.isBaseLayer is true.
129
+ * @public
130
+ * @type {Layer}
131
+ */
132
+ baseLayer: Layer | null;
133
+ /**
134
+ * Terrain provider.
135
+ * @public
136
+ * @type {EmptyTerrain}
137
+ */
138
+ terrain: EmptyTerrain | null;
139
+ /**
140
+ * Camera is this.renderer.activeCamera pointer.
141
+ * @public
142
+ * @type {PlanetCamera}
143
+ */
144
+ camera: PlanetCamera;
145
+ maxEqualZoomAltitude: number;
146
+ minEqualZoomAltitude: number;
147
+ minEqualZoomCameraSlope: number;
148
+ /**
149
+ * Screen mouse pointer projected to planet cartesian position.
150
+ * @public
151
+ * @type {Vec3}
152
+ */
153
+ mousePositionOnEarth: Vec3;
154
+ emptyTexture: WebGLTextureExt | null;
155
+ transparentTexture: WebGLTextureExt | null;
156
+ defaultTexture: WebGLTextureExt | null;
157
+ /**
158
+ * Current visible minimal zoom index planet segment.
159
+ * @public
160
+ * @type {number}
161
+ */
162
+ minCurrZoom: number;
163
+ /**
164
+ * Current visible maximal zoom index planet segment.
165
+ * @public
166
+ * @type {number}
167
+ */
168
+ maxCurrZoom: number;
169
+ _viewExtent: Extent;
170
+ protected _initialViewExtent: Extent | null;
171
+ _createdNodesCount: number;
172
+ /**
173
+ * Planet's segments collected for rendering frame.
174
+ * @public
175
+ * @type {Node}
176
+ */
177
+ _renderedNodes: Node[];
178
+ _renderedNodesInFrustum: Node[][];
179
+ /**
180
+ * Current visible mercator segments tree nodes array.
181
+ * @public
182
+ * @type {Node}
183
+ *
184
+ * @todo
185
+ * _visibleNodes, _visibleNodesNorth and _visibleNodesSouth should
186
+ * be replaced to strategy and Vector layer reworked in collecting methods.
187
+ * _visibleNodes, and _visibleNodesNorth and South are used in Vector
188
+ * layer only, for entity terrain collision
189
+ *
190
+ */
191
+ _visibleNodes: Record<number, Node>;
192
+ /**
193
+ * Current visible north pole nodes tree nodes array.
194
+ * @public
195
+ * @type {Node}
196
+ * @todo
197
+ */
198
+ _visibleNodesNorth: Record<number, Node>;
199
+ /**
200
+ * Current visible south pole nodes tree nodes array.
201
+ * @public
202
+ * @type {Node}
203
+ * @todo
204
+ */
205
+ _visibleNodesSouth: Record<number, Node>;
206
+ /**
207
+ * Layers activity lock.
208
+ * @public
209
+ * @type {Lock}
210
+ */
211
+ layerLock: Lock;
212
+ /**
213
+ * Terrain providers activity lock.
214
+ * @public
215
+ * @type {Lock}
216
+ */
217
+ terrainLock: Lock;
218
+ /**
219
+ * Height scale factor. 1 - is normal elevation scale.
220
+ * @public
221
+ * @type {number}
222
+ */
223
+ _heightFactor: number;
224
+ /**
225
+ * Precomputed indexes array for different grid size segments.
226
+ * @protected
227
+ * @type {Array.<Array.<number>>}
228
+ */
229
+ _indexesCache: IndexBufferCacheData[][][][][];
230
+ protected _indexesCacheToRemove: IndexBufferCacheData[];
231
+ _indexesCacheToRemoveCounter: number;
232
+ /**
233
+ * Precomputed texture coordinates buffers for different grid size segments.
234
+ * @public
235
+ * @type {Array.<Array.<number>>}
236
+ */
237
+ _textureCoordsBufferCache: WebGLBufferExt[];
238
+ quadTreeStrategy: QuadTreeStrategy;
239
+ /**
240
+ * Night glowing gl texture.
241
+ * @protected
242
+ */
243
+ protected _nightTexture: WebGLTextureExt | null;
244
+ /**
245
+ * Specular mask gl texture.
246
+ * @protected
247
+ */
248
+ protected _specularTexture: WebGLTextureExt | null;
249
+ _ambient: Float32Array;
250
+ _diffuse: Float32Array;
251
+ _specular: Float32Array;
252
+ protected _maxGridSize: number;
253
+ /**
254
+ * Segment multiple textures size.(4 - convenient value for the most devices)
255
+ * @const
256
+ * @public
257
+ */
258
+ SLICE_SIZE: number;
259
+ SLICE_SIZE_4: number;
260
+ SLICE_SIZE_3: number;
261
+ /**
262
+ * Level of details of visible segments.
263
+ * @protected
264
+ * @type {number}
265
+ */
266
+ protected _lodSize: number;
267
+ protected _curLodSize: number;
268
+ protected _minLodSize: number;
269
+ _maxLodSize: number;
270
+ _pickingColorArr: Float32Array;
271
+ _samplerArr: Int32Array;
272
+ _pickingMaskArr: Int32Array;
273
+ /**
274
+ * GeoImage creator.
275
+ * @public
276
+ * @type{GeoImageCreator}
277
+ */
278
+ _geoImageCreator: GeoImageCreator;
279
+ /**
280
+ * VectorTileCreator creator.
281
+ * @public
282
+ * @type{VectorTileCreator}
283
+ */
284
+ _vectorTileCreator: VectorTileCreator;
285
+ /**
286
+ * NormalMapCreator creator.
287
+ * @public
288
+ * @type{NormalMapCreator}
289
+ */
290
+ _normalMapCreator: NormalMapCreator;
291
+ _terrainWorker: TerrainWorker;
292
+ _plainSegmentWorker: PlainSegmentWorker;
293
+ _tileLoader: Loader<Layer>;
294
+ protected _memKey: Key;
295
+ _distBeforeMemClear: number;
296
+ protected _prevCamEye: Vec3;
297
+ protected _initialized: boolean;
298
+ protected always: any[];
299
+ _renderCompleted: boolean;
300
+ _renderCompletedActivated: boolean;
301
+ _terrainCompleted: boolean;
302
+ _terrainCompletedActivated: boolean;
303
+ protected _collectRenderNodesIsActive: boolean;
304
+ /**
305
+ * Night texture brightness coefficient
306
+ * @type {number}
307
+ */
308
+ nightTextureCoefficient: number;
309
+ protected _renderScreenNodesPASS: Function;
310
+ protected _atmosphereEnabled: boolean;
311
+ protected _atmosphereMaxMinOpacity: Float32Array;
312
+ solidTextureOne: WebGLTextureExt | null;
313
+ solidTextureTwo: WebGLTextureExt | null;
314
+ protected _skipPreRender: boolean;
315
+ protected _nightTextureSrc: string | null;
316
+ protected _specularTextureSrc: string | null;
317
+ constructor(options?: IPlanetParams);
318
+ get maxGridSize(): number;
319
+ getNorthFrameRotation(cartesian: Vec3): Quat;
320
+ set atmosphereMaxOpacity(opacity: number);
321
+ get atmosphereMaxOpacity(): number;
322
+ set atmosphereMinOpacity(opacity: number);
323
+ get atmosphereMinOpacity(): number;
324
+ set atmosphereEnabled(enabled: boolean);
325
+ get atmosphereEnabled(): boolean;
326
+ set diffuse(rgb: string | NumberArray3 | Vec3);
327
+ set ambient(rgb: string | NumberArray3 | Vec3);
328
+ set specular(rgb: string | NumberArray3 | Vec3);
329
+ set shininess(v: number);
330
+ get normalMapCreator(): NormalMapCreator;
331
+ get layers(): Layer[];
332
+ /**
333
+ * @todo: remove after tests
334
+ * Get the collection of layers associated with this planet.
335
+ * @return {Array.<Layer>} Layers array.
336
+ * @public
337
+ */
338
+ getLayers(): Layer[];
339
+ get sunPos(): Vec3;
340
+ /**
341
+ * Add the given control to the renderer of the planet scene.
342
+ * @param {Control} control - Control.
343
+ */
344
+ addControl(control: Control): void;
345
+ get lodSize(): number;
346
+ setLodSize(currentLodSize: number, minLodSize?: number, maxLodSize?: number): void;
347
+ /**
348
+ * Add the given controls array to the renderer of the planet.
349
+ * @param {Array.<Control>} cArr - Control array.
350
+ */
351
+ addControls(cArr: Control[]): void;
352
+ /**
353
+ * Return layer by it name
354
+ * @param {string} name - Name of the layer. og.Layer.prototype.name
355
+ * @public
356
+ * @returns {Layer} -
357
+ */
358
+ getLayerByName(name: string): Layer | undefined;
359
+ /**
360
+ * Adds layer to the planet.
361
+ * @param {Layer} layer - Layer object.
362
+ * @public
363
+ */
364
+ addLayer(layer: Layer): void;
365
+ /**
366
+ * Dispatch layer visibility changing event.
367
+ * @param {Layer} layer - Changed layer.
368
+ * @public
369
+ */
370
+ _onLayerVisibilityChanged(layer: Layer): void;
371
+ /**
372
+ * Adds the given layers array to the planet.
373
+ * @param {Array.<Layer>} layers - Layers array.
374
+ * @public
375
+ */
376
+ addLayers(layers: Layer[]): void;
377
+ /**
378
+ * Removes the given layer from the planet.
379
+ * @param {Layer} layer - Layer to remove.
380
+ * @public
381
+ */
382
+ removeLayer(layer: Layer): void;
383
+ /**
384
+ *
385
+ * @public
386
+ * @param {Layer} layer - Material layer.
387
+ */
388
+ _clearLayerMaterial(layer: Layer): void;
389
+ /**
390
+ * Sets base layer coverage to the planet.
391
+ * @param {Layer} layer - Layer object.
392
+ * @public
393
+ */
394
+ setBaseLayer(layer: Layer): void;
395
+ /**
396
+ * Sets elevation scale. 1.0 is default.
397
+ * @param {number} factor - Elevation scale.
398
+ */
399
+ setHeightFactor(factor: number): void;
400
+ /**
401
+ * Gets elevation scale.
402
+ * @returns {number} Terrain elevation scale
403
+ */
404
+ getHeightFactor(): number;
405
+ /**
406
+ * Sets terrain provider
407
+ * @public
408
+ * @param {EmptyTerrain} terrain - Terrain provider.
409
+ */
410
+ setTerrain(terrain: EmptyTerrain): void;
411
+ protected _initializeAtmosphere(): void;
412
+ protected _initializeShaders(): void;
413
+ protected _onLayerLoadend(layer: Layer): void;
414
+ init(): void;
415
+ initLayers(): void;
416
+ protected _clearIndexesCache(): void;
417
+ protected _preRender(): void;
418
+ protected _preLoad(): void;
419
+ /**
420
+ * Creates default textures first for the North Pole and whole globe and second for the South Pole.
421
+ * @public
422
+ * @param{IDefaultTextureParams} param0 -
423
+ * @param{IDefaultTextureParams} param1 -
424
+ */
425
+ createDefaultTextures(param0: IDefaultTextureParams, param1: IDefaultTextureParams): void;
426
+ protected _getLayerAttributionHTML(layer: Layer): string;
427
+ /**
428
+ * Updates attribution lists
429
+ * @public
430
+ */
431
+ updateAttributionsList(): void;
432
+ updateVisibleLayers(): void;
433
+ protected _updateVisibleLayers(): void;
434
+ /**
435
+ * Apply to render list of layer attributions
436
+ * @protected
437
+ */
438
+ protected _applyAttribution(html: string): void;
439
+ /**
440
+ * Sort visible layer - preparing for rendering.
441
+ * @protected
442
+ */
443
+ protected _sortLayers(): void;
444
+ protected _clearRenderedNodeList(): void;
445
+ protected _clearRenderNodesInFrustum(): void;
446
+ /**
447
+ * Collects visible quad nodes.
448
+ * @protected
449
+ */
450
+ protected _collectRenderNodes(): void;
451
+ protected _globalPreDraw(): void;
452
+ /**
453
+ * Render node callback.
454
+ * @public
455
+ */
456
+ preFrame(): void;
457
+ /**
458
+ * Render node callback.
459
+ * @public
460
+ * @override
461
+ */
462
+ frame(): void;
463
+ protected _checkRendercompleted(): void;
464
+ lockQuadTree(): void;
465
+ unlockQuadTree(): void;
466
+ protected _renderScreenNodesPASSNoAtmos(): void;
467
+ protected _renderScreenNodesPASSAtmos(): void;
468
+ protected _renderDistanceFramebufferPASS(): void;
469
+ protected _renderColorPickingFramebufferPASS(): void;
470
+ protected _renderDepthFramebufferPASS(): void;
471
+ protected _collectVectorLayerCollections(): void;
472
+ protected _frustumEntityCollectionPickingCallback(): void;
473
+ /**
474
+ * Starts clear memory thread.
475
+ * @public
476
+ */
477
+ memClear(): void;
478
+ /**
479
+ * Returns ray vector hit ellipsoid coordinates.
480
+ * If the ray doesn't hit ellipsoid it returns 'undefined'.
481
+ * @public
482
+ * @param {Ray} ray - Ray.
483
+ * @returns {Vec3 | undefined} -
484
+ */
485
+ getRayIntersectionEllipsoid(ray: Ray): Vec3 | undefined;
486
+ /**
487
+ * Project screen coordinates to the planet ellipsoid.
488
+ * @public
489
+ * @param {Vec2 | IBaseInputState } px - Screen coordinates.
490
+ * @returns {Vec3 | undefined} - Cartesian coordinates.
491
+ */
492
+ getCartesianFromPixelEllipsoid(px: Vec2 | IBaseInputState): Vec3 | undefined;
493
+ /**
494
+ * Project screen coordinates to the planet ellipsoid.
495
+ * @public
496
+ * @param {Vec2 | IBaseInputState} px - Screen coordinates.
497
+ * @returns {LonLat | undefined} - Geodetic coordinates.
498
+ */
499
+ getLonLatFromPixelEllipsoid(px: Vec2): LonLat | undefined;
500
+ /**
501
+ * Returns mouse position cartesian coordinates on the current terrain.
502
+ * @public
503
+ * @returns {Vec3 | undefined} -
504
+ */
505
+ getCartesianFromMouseTerrain(): Vec3 | undefined;
506
+ /**
507
+ * Returns screen coordinates cartesian coordinates on the current terrain.
508
+ * position or null if input coordinates is outside the planet.
509
+ * @public
510
+ * @param {Vec2} px - Pixel screen 2d coordinates.
511
+ * @returns {Vec3 | undefined} -
512
+ */
513
+ getCartesianFromPixelTerrain(px: Vec2 | IBaseInputState): Vec3 | undefined;
514
+ /**
515
+ * Returns geodetic coordinates on the current terrain planet by its screen coordinates.
516
+ * position or null if input coordinates is outside the planet.
517
+ * @public
518
+ * @param {Vec2 | IBaseInputState} px - Pixel screen 2d coordinates.
519
+ * @returns {LonLat | undefined} -
520
+ */
521
+ getLonLatFromPixelTerrain(px: Vec2 | IBaseInputState): LonLat | undefined;
522
+ /**
523
+ * Project cartesian coordinates to screen space.
524
+ * @public
525
+ * @param {Vec3} coords - Cartesian coordinates.
526
+ * @returns {Vec2} - Screen coordinates.
527
+ */
528
+ getPixelFromCartesian(coords: Vec3): Vec2;
529
+ /**
530
+ * Project geodetic coordinates to screen space.
531
+ * @public
532
+ * @param {LonLat} lonlat - Geodetic coordinates.
533
+ * @returns {Vec2 | undefined} - Screen coordinates.
534
+ */
535
+ getPixelFromLonLat(lonlat: LonLat): Vec2 | undefined;
536
+ /**
537
+ * Returns distance from an active (screen) camera to the planet ellipsoid.
538
+ * @public
539
+ * @param {Vec2} px - Screen coordinates.
540
+ * @returns {number} -
541
+ */
542
+ getDistanceFromPixelEllipsoid(px: Vec2 | IBaseInputState): number | undefined;
543
+ /**
544
+ * Returns distance from active (screen) camera to the planet terrain by screen coordinates.
545
+ * @public
546
+ * @param {Vec2 | IBaseInputState} px - Screen coordinates.
547
+ * @returns {number | undefined} -
548
+ */
549
+ getDistanceFromPixel(px: Vec2 | IBaseInputState): number;
550
+ /**
551
+ * Sets camera to the planet geographical extent.
552
+ * @public
553
+ * @param {Extent} extent - Geographical extent.
554
+ */
555
+ viewExtent(extent: Extent): void;
556
+ /**
557
+ * Fits camera position for the view extent.
558
+ * @public
559
+ * @param {Array.<number>} extentArr - Geographical extent array, (exactly 4 entries)
560
+ * where index 0 - southwest longitude, 1 - latitude southwest, 2 - longitude northeast, 3 - latitude northeast.
561
+ */
562
+ viewExtentArr(extentArr: NumberArray4): void;
563
+ /**
564
+ * Gets current camera view extent.
565
+ * @public
566
+ * @returns {Extent} -
567
+ */
568
+ getViewExtent(): Extent;
569
+ /**
570
+ * Sets camera to the planet geographical position.
571
+ * @public
572
+ * @param {LonLat} lonlat - Camera position.
573
+ * @param {LonLat} [lookLonLat] - Viewpoint.
574
+ * @param {Vec3} [up] - Camera up vector.
575
+ */
576
+ viewLonLat(lonlat: LonLat, lookLonLat?: LonLat, up?: Vec3): void;
577
+ /**
578
+ * Fly active camera to the view extent.
579
+ * @public
580
+ * @param {Extent} extent - Geographical extent.
581
+ * @param {Number} [height] - Height on the end of the flight route.
582
+ * @param {Vec3} [up] - Camera UP vector on the end of a flying.
583
+ * @param {Number} [ampl] - Altitude amplitude factor.
584
+ * @param {Function} [startCallback] - Callback that calls before the flying begins.
585
+ * @param {Function} [completeCallback] - Callback that calls after flying when flying is finished.
586
+ */
587
+ flyExtent(extent: Extent, height?: number, up?: Vec3, ampl?: number, completeCallback?: Function, startCallback?: Function): void;
588
+ /**
589
+ * Fly camera to the point.
590
+ * @public
591
+ * @param {Vec3} cartesian - Point coordinates.
592
+ * @param {Vec3} [look] - Camera "look at" point.
593
+ * @param {Vec3} [up] - Camera UP vector on the end of a flying.
594
+ * @param {Number} [ampl] - Altitude amplitude factor.
595
+ * @param {Function} [completeCallback] - Call the function in the end of flight
596
+ * @param {Function} [startCallback] - Call the function in the beginning
597
+ * @param {Function} [frameCallback] - Each frame callback
598
+ */
599
+ flyCartesian(cartesian: Vec3, look?: Vec3 | null, up?: Vec3 | null, ampl?: number, completeCallback?: Function | null, startCallback?: Function | null, frameCallback?: Function | null): void;
600
+ /**
601
+ * Fly camera to the geodetic position.
602
+ * @public
603
+ * @param {LonLat} lonlat - Fly geographical coordinates.
604
+ * @param {Vec3 | LonLat} [look] - Camera viewpoint in the end of the flight.
605
+ * @param {Vec3} [up] - Camera UP vector on the end of a flying.
606
+ * @param {Number} [ampl] - Altitude amplitude factor.
607
+ * @param [completeCallback]
608
+ * @param [startCallback]
609
+ * @param [frameCallback]
610
+ */
611
+ flyLonLat(lonlat: LonLat, look?: Vec3 | LonLat, up?: Vec3, ampl?: number, completeCallback?: Function, startCallback?: Function, frameCallback?: Function): void;
612
+ /**
613
+ * Stop current flight.
614
+ * @public
615
+ */
616
+ stopFlying(): void;
617
+ updateBillboardsTexCoords(): void;
618
+ getEntityTerrainPoint(entity: Entity, res: Vec3): number | undefined;
619
+ getHeightDefault(lonLat: LonLat): Promise<number>;
620
+ getHeightAboveELL(lonLat: LonLat): Promise<number>;
621
+ onremove(): void;
622
+ }
623
+ export {};