@openglobus/og 0.17.2 → 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 (845) hide show
  1. package/README.md +76 -47
  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/@openglobus/res/fonts/Karla-Bold.json +5252 -0
  7. package/lib/@openglobus/res/fonts/Karla-Bold.ttf.cfg +920 -0
  8. package/lib/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  9. package/lib/@openglobus/res/fonts/Karla-Light.json +5252 -0
  10. package/lib/@openglobus/res/fonts/Karla-Light.ttf.cfg +830 -0
  11. package/lib/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  12. package/lib/@openglobus/res/fonts/Karla-Medium.json +5252 -0
  13. package/lib/@openglobus/res/fonts/Karla-Medium.ttf.cfg +1196 -0
  14. package/lib/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  15. package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.json +3332 -0
  16. package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +1370 -0
  17. package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  18. package/lib/@openglobus/res/fonts/Roboto-Regular.json +37147 -0
  19. package/lib/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +1340 -0
  20. package/lib/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  21. package/lib/@openglobus/res/fonts/arial.json +4321 -0
  22. package/lib/@openglobus/res/fonts/arial.ttf.cfg +1570 -0
  23. package/lib/@openglobus/res/fonts/arial.ttf.png +0 -0
  24. package/lib/@openglobus/res/night-4326.png +0 -0
  25. package/lib/@openglobus/res/night.png +0 -0
  26. package/lib/@openglobus/res/spec.png +0 -0
  27. package/lib/js/Clock.d.ts +106 -0
  28. package/lib/js/Clock.js +141 -0
  29. package/lib/js/Deferred.d.ts +6 -0
  30. package/lib/js/Deferred.js +13 -0
  31. package/lib/js/Events.d.ts +90 -0
  32. package/lib/js/Events.js +145 -0
  33. package/lib/js/Extent.d.ts +145 -0
  34. package/lib/js/Extent.js +278 -0
  35. package/lib/js/Globe.d.ts +132 -0
  36. package/lib/js/Globe.js +265 -0
  37. package/lib/js/ImageCanvas.d.ts +128 -0
  38. package/lib/js/ImageCanvas.js +203 -0
  39. package/lib/js/Lock.d.ts +15 -0
  40. package/lib/js/Lock.js +27 -0
  41. package/lib/js/LonLat.d.ts +128 -0
  42. package/lib/js/LonLat.js +192 -0
  43. package/lib/js/Object3d.d.ts +49 -0
  44. package/lib/js/Object3d.js +309 -0
  45. package/lib/js/Popup.d.ts +46 -0
  46. package/lib/js/Popup.js +160 -0
  47. package/lib/js/QueueArray.d.ts +16 -0
  48. package/lib/js/QueueArray.js +63 -0
  49. package/lib/js/Rectangle.d.ts +76 -0
  50. package/lib/js/Rectangle.js +77 -0
  51. package/lib/js/Stack.d.ts +20 -0
  52. package/lib/js/Stack.js +42 -0
  53. package/lib/js/astro/astro.d.ts +39 -0
  54. package/lib/js/astro/astro.js +43 -0
  55. package/lib/js/astro/earth.d.ts +8 -0
  56. package/lib/js/astro/earth.js +75 -0
  57. package/lib/js/astro/jd.d.ts +234 -0
  58. package/lib/js/astro/jd.js +416 -0
  59. package/lib/js/astro/orbit.d.ts +5 -0
  60. package/lib/js/astro/orbit.js +104 -0
  61. package/lib/js/astro/rotation.d.ts +2 -0
  62. package/lib/js/astro/rotation.js +25 -0
  63. package/lib/js/bv/Box.d.ts +32 -0
  64. package/lib/js/bv/Box.js +53 -0
  65. package/lib/js/bv/Sphere.d.ts +37 -0
  66. package/lib/js/bv/Sphere.js +31 -0
  67. package/lib/js/bv/index.d.ts +3 -0
  68. package/lib/js/bv/index.js +3 -0
  69. package/lib/js/camera/Camera.d.ts +314 -0
  70. package/lib/js/camera/Camera.js +453 -0
  71. package/lib/js/camera/Frustum.d.ts +139 -0
  72. package/lib/js/camera/Frustum.js +238 -0
  73. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  74. package/lib/js/camera/PlanetCamera.js +465 -0
  75. package/lib/js/camera/index.d.ts +3 -0
  76. package/lib/js/camera/index.js +3 -0
  77. package/lib/js/cons.d.ts +40 -0
  78. package/lib/js/cons.js +92 -0
  79. package/lib/js/control/Atmosphere.d.ts +16 -0
  80. package/lib/js/control/Atmosphere.js +334 -0
  81. package/lib/js/control/CompassButton.d.ts +16 -0
  82. package/lib/js/control/CompassButton.js +118 -0
  83. package/lib/js/control/Control.d.ts +100 -0
  84. package/lib/js/control/Control.js +137 -0
  85. package/lib/js/control/DebugInfo.d.ts +25 -0
  86. package/lib/js/control/DebugInfo.js +281 -0
  87. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  88. package/lib/js/control/DrawingSwitcher.js +94 -0
  89. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  90. package/lib/js/control/EarthCoordinates.js +161 -0
  91. package/lib/js/control/EarthNavigation.d.ts +50 -0
  92. package/lib/js/control/EarthNavigation.js +202 -0
  93. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  94. package/lib/js/control/GeoImageDragControl.js +102 -0
  95. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  96. package/lib/js/control/KeyboardNavigation.js +143 -0
  97. package/lib/js/control/LayerAnimation.d.ts +71 -0
  98. package/lib/js/control/LayerAnimation.js +283 -0
  99. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  100. package/lib/js/control/LayerSwitcher.js +51 -0
  101. package/lib/js/control/Lighting.d.ts +49 -0
  102. package/lib/js/control/Lighting.js +412 -0
  103. package/lib/js/control/MouseNavigation.d.ts +62 -0
  104. package/lib/js/control/MouseNavigation.js +362 -0
  105. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  106. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  107. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  108. package/lib/js/control/RulerSwitcher.js +57 -0
  109. package/lib/js/control/ScaleControl.d.ts +24 -0
  110. package/lib/js/control/ScaleControl.js +91 -0
  111. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  112. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  113. package/lib/js/control/ShowFps.d.ts +9 -0
  114. package/lib/js/control/ShowFps.js +20 -0
  115. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  116. package/lib/js/control/SimpleNavigation.js +96 -0
  117. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  118. package/lib/js/control/SimpleSkyBackground.js +177 -0
  119. package/lib/js/control/Sun.d.ts +33 -0
  120. package/lib/js/control/Sun.js +117 -0
  121. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  122. package/lib/js/control/ToggleWireframe.js +28 -0
  123. package/lib/js/control/TouchNavigation.d.ts +52 -0
  124. package/lib/js/control/TouchNavigation.js +263 -0
  125. package/lib/js/control/ZoomControl.d.ts +27 -0
  126. package/lib/js/control/ZoomControl.js +86 -0
  127. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  128. package/lib/js/control/drawing/DrawingControl.js +35 -0
  129. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  130. package/lib/js/control/drawing/LineStringDrawingScene.js +139 -0
  131. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  132. package/lib/js/control/drawing/PolygonDrawingScene.js +534 -0
  133. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  134. package/lib/js/control/elevationProfile/ElevationProfile.js +217 -0
  135. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  136. package/lib/js/control/heightRuler/HeightRuler.js +11 -0
  137. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  138. package/lib/js/control/heightRuler/HeightRulerScene.js +181 -0
  139. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  140. package/lib/js/control/heightRuler/HeightRulerSwitcher.js +13 -0
  141. package/lib/js/control/index.d.ts +28 -0
  142. package/lib/js/control/index.js +28 -0
  143. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  144. package/lib/js/control/ruler/Ruler.js +23 -0
  145. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  146. package/lib/js/control/ruler/RulerScene.js +324 -0
  147. package/lib/js/control/selection/Selection.d.ts +55 -0
  148. package/lib/js/control/selection/Selection.js +78 -0
  149. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  150. package/lib/js/control/selection/SelectionScene.js +272 -0
  151. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  152. package/lib/js/control/timeline/TimelineControl.js +79 -0
  153. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  154. package/lib/js/control/timeline/TimelineModel.js +104 -0
  155. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  156. package/lib/js/control/timeline/TimelineView.js +363 -0
  157. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  158. package/lib/js/control/timeline/timelineUtils.js +112 -0
  159. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  160. package/lib/js/control/visibleExtent/Segment.js +1301 -0
  161. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  162. package/lib/js/control/visibleExtent/VisibleExtent.js +56 -0
  163. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  164. package/lib/js/control/visibleExtent/drawnode.js +718 -0
  165. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  166. package/lib/js/ellipsoid/Ellipsoid.js +434 -0
  167. package/lib/js/ellipsoid/index.d.ts +3 -0
  168. package/lib/js/ellipsoid/index.js +3 -0
  169. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  170. package/lib/js/ellipsoid/wgs84.js +6 -0
  171. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  172. package/lib/js/entity/BaseBillboard.js +284 -0
  173. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  174. package/lib/js/entity/BaseBillboardHandler.js +546 -0
  175. package/lib/js/entity/Billboard.d.ts +113 -0
  176. package/lib/js/entity/Billboard.js +127 -0
  177. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  178. package/lib/js/entity/BillboardHandler.js +103 -0
  179. package/lib/js/entity/Entity.d.ts +354 -0
  180. package/lib/js/entity/Entity.js +515 -0
  181. package/lib/js/entity/EntityCollection.d.ts +364 -0
  182. package/lib/js/entity/EntityCollection.js +621 -0
  183. package/lib/js/entity/GeoObject.d.ts +138 -0
  184. package/lib/js/entity/GeoObject.js +194 -0
  185. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  186. package/lib/js/entity/GeoObjectHandler.js +558 -0
  187. package/lib/js/entity/Geometry.d.ts +111 -0
  188. package/lib/js/entity/Geometry.js +283 -0
  189. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  190. package/lib/js/entity/GeometryHandler.js +687 -0
  191. package/lib/js/entity/Label.d.ts +207 -0
  192. package/lib/js/entity/Label.js +291 -0
  193. package/lib/js/entity/LabelHandler.d.ts +65 -0
  194. package/lib/js/entity/LabelHandler.js +696 -0
  195. package/lib/js/entity/LabelWorker.d.ts +15 -0
  196. package/lib/js/entity/LabelWorker.js +163 -0
  197. package/lib/js/entity/PointCloud.d.ts +179 -0
  198. package/lib/js/entity/PointCloud.js +327 -0
  199. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  200. package/lib/js/entity/PointCloudHandler.js +82 -0
  201. package/lib/js/entity/Polyline.d.ts +337 -0
  202. package/lib/js/entity/Polyline.js +1546 -0
  203. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  204. package/lib/js/entity/PolylineHandler.js +78 -0
  205. package/lib/js/entity/Ray.d.ts +133 -0
  206. package/lib/js/entity/Ray.js +171 -0
  207. package/lib/js/entity/RayHandler.d.ts +70 -0
  208. package/lib/js/entity/RayHandler.js +496 -0
  209. package/lib/js/entity/Strip.d.ts +127 -0
  210. package/lib/js/entity/Strip.js +401 -0
  211. package/lib/js/entity/StripHandler.d.ts +42 -0
  212. package/lib/js/entity/StripHandler.js +110 -0
  213. package/lib/js/entity/index.d.ts +11 -0
  214. package/lib/js/entity/index.js +11 -0
  215. package/lib/js/index.d.ts +33 -0
  216. package/lib/js/index.js +33 -0
  217. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  218. package/lib/js/input/KeyboardHandler.js +157 -0
  219. package/lib/js/input/MouseHandler.d.ts +16 -0
  220. package/lib/js/input/MouseHandler.js +81 -0
  221. package/lib/js/input/TouchHandler.d.ts +11 -0
  222. package/lib/js/input/TouchHandler.js +42 -0
  223. package/lib/js/input/input.d.ts +3 -0
  224. package/lib/js/input/input.js +42 -0
  225. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  226. package/lib/js/layer/BaseGeoImage.js +382 -0
  227. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  228. package/lib/js/layer/CanvasTiles.js +302 -0
  229. package/lib/js/layer/GeoImage.d.ts +61 -0
  230. package/lib/js/layer/GeoImage.js +130 -0
  231. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  232. package/lib/js/layer/GeoTexture2d.js +37 -0
  233. package/lib/js/layer/GeoVideo.d.ts +68 -0
  234. package/lib/js/layer/GeoVideo.js +157 -0
  235. package/lib/js/layer/KML.d.ts +72 -0
  236. package/lib/js/layer/KML.js +303 -0
  237. package/lib/js/layer/Layer.d.ts +401 -0
  238. package/lib/js/layer/Layer.js +732 -0
  239. package/lib/js/layer/Material.d.ts +34 -0
  240. package/lib/js/layer/Material.js +69 -0
  241. package/lib/js/layer/Vector.d.ts +244 -0
  242. package/lib/js/layer/Vector.js +849 -0
  243. package/lib/js/layer/WMS.d.ts +75 -0
  244. package/lib/js/layer/WMS.js +112 -0
  245. package/lib/js/layer/XYZ.d.ts +149 -0
  246. package/lib/js/layer/XYZ.js +299 -0
  247. package/lib/js/layer/index.d.ts +11 -0
  248. package/lib/js/layer/index.js +11 -0
  249. package/lib/js/light/LightSource.d.ts +174 -0
  250. package/lib/js/light/LightSource.js +292 -0
  251. package/lib/js/math/Line2.d.ts +11 -0
  252. package/lib/js/math/Line2.js +21 -0
  253. package/lib/js/math/Line3.d.ts +28 -0
  254. package/lib/js/math/Line3.js +85 -0
  255. package/lib/js/math/Mat3.d.ts +77 -0
  256. package/lib/js/math/Mat3.js +139 -0
  257. package/lib/js/math/Mat4.d.ts +195 -0
  258. package/lib/js/math/Mat4.js +470 -0
  259. package/lib/js/math/Plane.d.ts +20 -0
  260. package/lib/js/math/Plane.js +108 -0
  261. package/lib/js/math/Quat.d.ts +373 -0
  262. package/lib/js/math/Quat.js +783 -0
  263. package/lib/js/math/Ray.d.ts +76 -0
  264. package/lib/js/math/Ray.js +188 -0
  265. package/lib/js/math/Vec2.d.ts +310 -0
  266. package/lib/js/math/Vec2.js +463 -0
  267. package/lib/js/math/Vec3.d.ts +472 -0
  268. package/lib/js/math/Vec3.js +799 -0
  269. package/lib/js/math/Vec4.d.ts +163 -0
  270. package/lib/js/math/Vec4.js +211 -0
  271. package/lib/js/math/coder.d.ts +51 -0
  272. package/lib/js/math/coder.js +101 -0
  273. package/lib/js/math/index.d.ts +11 -0
  274. package/lib/js/math/index.js +11 -0
  275. package/lib/js/math.d.ts +266 -0
  276. package/lib/js/math.js +379 -0
  277. package/lib/js/mercator.d.ts +92 -0
  278. package/lib/js/mercator.js +119 -0
  279. package/lib/js/proj/EPSG3857.d.ts +9 -0
  280. package/lib/js/proj/EPSG3857.js +9 -0
  281. package/lib/js/proj/EPSG4326.d.ts +9 -0
  282. package/lib/js/proj/EPSG4326.js +9 -0
  283. package/lib/js/proj/Proj.d.ts +43 -0
  284. package/lib/js/proj/Proj.js +38 -0
  285. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  286. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  287. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  288. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  289. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  290. package/lib/js/quadTree/EntityCollectionNode.js +328 -0
  291. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  292. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  293. package/lib/js/quadTree/Node.d.ts +61 -0
  294. package/lib/js/quadTree/Node.js +660 -0
  295. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  296. package/lib/js/quadTree/QuadTreeStrategy.js +69 -0
  297. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  298. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  299. package/lib/js/quadTree/index.d.ts +12 -0
  300. package/lib/js/quadTree/index.js +12 -0
  301. package/lib/js/quadTree/quadTree.d.ts +40 -0
  302. package/lib/js/quadTree/quadTree.js +66 -0
  303. package/lib/js/renderer/Renderer.d.ts +311 -0
  304. package/lib/js/renderer/Renderer.js +899 -0
  305. package/lib/js/renderer/RendererEvents.d.ts +237 -0
  306. package/lib/js/renderer/RendererEvents.js +848 -0
  307. package/lib/js/scene/Axes.d.ts +12 -0
  308. package/lib/js/scene/Axes.js +59 -0
  309. package/lib/js/scene/BaseNode.d.ts +61 -0
  310. package/lib/js/scene/BaseNode.js +69 -0
  311. package/lib/js/scene/Planet.d.ts +623 -0
  312. package/lib/js/scene/Planet.js +1431 -0
  313. package/lib/js/scene/RenderNode.d.ts +150 -0
  314. package/lib/js/scene/RenderNode.js +301 -0
  315. package/lib/js/scene/SkyBox.d.ts +13 -0
  316. package/lib/js/scene/SkyBox.js +87 -0
  317. package/lib/js/scene/index.d.ts +5 -0
  318. package/lib/js/scene/index.js +5 -0
  319. package/lib/js/segment/Segment.d.ts +278 -0
  320. package/lib/js/segment/Segment.js +1142 -0
  321. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  322. package/lib/js/segment/SegmentLonLat.js +214 -0
  323. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  324. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  325. package/lib/js/segment/Slice.d.ts +13 -0
  326. package/lib/js/segment/Slice.js +33 -0
  327. package/lib/js/segment/segmentHelper.d.ts +18 -0
  328. package/lib/js/segment/segmentHelper.js +180 -0
  329. package/lib/js/shaders/atmos.d.ts +4 -0
  330. package/lib/js/shaders/atmos.js +312 -0
  331. package/lib/js/shaders/billboard.d.ts +3 -0
  332. package/lib/js/shaders/billboard.js +214 -0
  333. package/lib/js/shaders/bloom.d.ts +2 -0
  334. package/lib/js/shaders/bloom.js +32 -0
  335. package/lib/js/shaders/blur.d.ts +3 -0
  336. package/lib/js/shaders/blur.js +68 -0
  337. package/lib/js/shaders/depth.d.ts +2 -0
  338. package/lib/js/shaders/depth.js +43 -0
  339. package/lib/js/shaders/drawnode.d.ts +8 -0
  340. package/lib/js/shaders/drawnode.js +986 -0
  341. package/lib/js/shaders/geoObject.d.ts +3 -0
  342. package/lib/js/shaders/geoObject.js +256 -0
  343. package/lib/js/shaders/label.d.ts +4 -0
  344. package/lib/js/shaders/label.js +589 -0
  345. package/lib/js/shaders/lumFilter.d.ts +2 -0
  346. package/lib/js/shaders/lumFilter.js +36 -0
  347. package/lib/js/shaders/pickingMask.d.ts +2 -0
  348. package/lib/js/shaders/pickingMask.js +22 -0
  349. package/lib/js/shaders/pointCloud.d.ts +2 -0
  350. package/lib/js/shaders/pointCloud.js +32 -0
  351. package/lib/js/shaders/polyline.d.ts +3 -0
  352. package/lib/js/shaders/polyline.js +345 -0
  353. package/lib/js/shaders/ray.d.ts +2 -0
  354. package/lib/js/shaders/ray.js +76 -0
  355. package/lib/js/shaders/screenFrame.d.ts +2 -0
  356. package/lib/js/shaders/screenFrame.js +26 -0
  357. package/lib/js/shaders/skybox.d.ts +2 -0
  358. package/lib/js/shaders/skybox.js +28 -0
  359. package/lib/js/shaders/toneMapping.d.ts +2 -0
  360. package/lib/js/shaders/toneMapping.js +85 -0
  361. package/lib/js/shaders/utils.d.ts +1 -0
  362. package/lib/js/shaders/utils.js +86 -0
  363. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  364. package/lib/js/terrain/BilTerrain.js +152 -0
  365. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  366. package/lib/js/terrain/EmptyTerrain.js +106 -0
  367. package/lib/js/terrain/Geoid.d.ts +33 -0
  368. package/lib/js/terrain/Geoid.js +191 -0
  369. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  370. package/lib/js/terrain/GlobusTerrain.js +332 -0
  371. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  372. package/lib/js/terrain/MapboxTerrain.js +298 -0
  373. package/lib/js/terrain/index.d.ts +5 -0
  374. package/lib/js/terrain/index.js +5 -0
  375. package/lib/js/ui/Button.d.ts +32 -0
  376. package/lib/js/ui/Button.js +78 -0
  377. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  378. package/lib/js/ui/ButtonGroup.js +41 -0
  379. package/lib/js/ui/Dialog.d.ts +55 -0
  380. package/lib/js/ui/Dialog.js +173 -0
  381. package/lib/js/ui/Slider.d.ts +38 -0
  382. package/lib/js/ui/Slider.js +129 -0
  383. package/lib/js/ui/ToggleButton.d.ts +20 -0
  384. package/lib/js/ui/ToggleButton.js +42 -0
  385. package/lib/js/ui/View.d.ts +37 -0
  386. package/lib/js/ui/View.js +151 -0
  387. package/lib/js/ui/icons.d.ts +1 -0
  388. package/lib/js/ui/icons.js +3 -0
  389. package/lib/js/utils/BaseWorker.d.ts +14 -0
  390. package/lib/js/utils/BaseWorker.js +47 -0
  391. package/lib/js/utils/FontAtlas.d.ts +82 -0
  392. package/lib/js/utils/FontAtlas.js +220 -0
  393. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  394. package/lib/js/utils/GeoImageCreator.js +163 -0
  395. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  396. package/lib/js/utils/ImagesCacheManager.js +63 -0
  397. package/lib/js/utils/Loader.d.ts +63 -0
  398. package/lib/js/utils/Loader.js +156 -0
  399. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  400. package/lib/js/utils/NormalMapCreator.js +310 -0
  401. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  402. package/lib/js/utils/PlainSegmentWorker.js +383 -0
  403. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  404. package/lib/js/utils/TerrainWorker.js +551 -0
  405. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  406. package/lib/js/utils/TextureAtlas.js +231 -0
  407. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  408. package/lib/js/utils/VectorTileCreator.js +320 -0
  409. package/lib/js/utils/colorTable.d.ts +3 -0
  410. package/lib/js/utils/colorTable.js +143 -0
  411. package/lib/js/utils/earcut.d.ts +7 -0
  412. package/lib/js/utils/earcut.js +536 -0
  413. package/lib/js/utils/objParser.d.ts +24 -0
  414. package/lib/js/utils/objParser.js +201 -0
  415. package/lib/js/utils/shared.d.ts +267 -0
  416. package/lib/js/utils/shared.js +893 -0
  417. package/lib/js/utils/units.d.ts +16 -0
  418. package/lib/js/utils/units.js +61 -0
  419. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  420. package/lib/js/webgl/BaseFramebuffer.js +88 -0
  421. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  422. package/lib/js/webgl/Framebuffer.js +149 -0
  423. package/lib/js/webgl/Handler.d.ts +473 -0
  424. package/lib/js/webgl/Handler.js +1003 -0
  425. package/lib/js/webgl/Multisample.d.ts +27 -0
  426. package/lib/js/webgl/Multisample.js +77 -0
  427. package/lib/js/webgl/Program.d.ts +159 -0
  428. package/lib/js/webgl/Program.js +314 -0
  429. package/lib/js/webgl/ProgramController.d.ts +86 -0
  430. package/lib/js/webgl/ProgramController.js +110 -0
  431. package/lib/js/webgl/index.d.ts +6 -0
  432. package/lib/js/webgl/index.js +6 -0
  433. package/lib/js/webgl/types.d.ts +9 -0
  434. package/lib/js/webgl/types.js +26 -0
  435. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  436. package/lib/js/webgl/variableHandlers.js +78 -0
  437. package/package.json +29 -38
  438. package/dist/@openglobus/og.esm.js +0 -21
  439. package/dist/@openglobus/og.esm.js.map +0 -1
  440. package/dist/@openglobus/og.umd.js +0 -21
  441. package/dist/@openglobus/og.umd.js.map +0 -1
  442. package/src/og/Clock.js +0 -214
  443. package/src/og/Deferred.js +0 -11
  444. package/src/og/Events.js +0 -185
  445. package/src/og/Extent.js +0 -352
  446. package/src/og/Globe.js +0 -342
  447. package/src/og/ImageCanvas.js +0 -236
  448. package/src/og/Lock.js +0 -44
  449. package/src/og/LonLat.js +0 -220
  450. package/src/og/Object3d.js +0 -395
  451. package/src/og/Popup.js +0 -187
  452. package/src/og/QueueArray.js +0 -75
  453. package/src/og/Rectangle.js +0 -111
  454. package/src/og/Stack.js +0 -49
  455. package/src/og/astro/astro.js +0 -51
  456. package/src/og/astro/earth.js +0 -112
  457. package/src/og/astro/jd.js +0 -514
  458. package/src/og/astro/orbit.js +0 -119
  459. package/src/og/astro/rotation.js +0 -36
  460. package/src/og/bv/Box.js +0 -77
  461. package/src/og/bv/Sphere.js +0 -57
  462. package/src/og/bv/index.js +0 -4
  463. package/src/og/camera/Camera.js +0 -645
  464. package/src/og/camera/Frustum.js +0 -331
  465. package/src/og/camera/PlanetCamera.js +0 -674
  466. package/src/og/camera/index.js +0 -4
  467. package/src/og/cons.js +0 -108
  468. package/src/og/control/Atmosphere.js +0 -387
  469. package/src/og/control/CompassButton.js +0 -146
  470. package/src/og/control/Control.js +0 -198
  471. package/src/og/control/DebugInfo.js +0 -259
  472. package/src/og/control/DrawingSwitcher.js +0 -117
  473. package/src/og/control/EarthCoordinates.js +0 -214
  474. package/src/og/control/EarthNavigation.js +0 -258
  475. package/src/og/control/GeoImageDragControl.js +0 -117
  476. package/src/og/control/KeyboardNavigation.js +0 -172
  477. package/src/og/control/LayerAnimation.js +0 -379
  478. package/src/og/control/LayerSwitcher.js +0 -424
  479. package/src/og/control/Lighting.js +0 -487
  480. package/src/og/control/MouseNavigation.js +0 -436
  481. package/src/og/control/MouseWheelZoomControl.js +0 -253
  482. package/src/og/control/RulerSwitcher.js +0 -74
  483. package/src/og/control/ScaleControl.js +0 -119
  484. package/src/og/control/SegmentBoundVisualization.js +0 -54
  485. package/src/og/control/ShowFps.js +0 -40
  486. package/src/og/control/SimpleNavigation.js +0 -123
  487. package/src/og/control/SimpleSkyBackground.js +0 -206
  488. package/src/og/control/Sun.js +0 -176
  489. package/src/og/control/ToggleWireframe.js +0 -35
  490. package/src/og/control/TouchNavigation.js +0 -350
  491. package/src/og/control/ZoomControl.js +0 -115
  492. package/src/og/control/drawing/DrawingControl.js +0 -51
  493. package/src/og/control/drawing/LineStringDrawingScene.js +0 -203
  494. package/src/og/control/drawing/PolygonDrawingScene.js +0 -785
  495. package/src/og/control/elevationProfile/ElevationProfile.js +0 -275
  496. package/src/og/control/heightRuler/HeightRuler.js +0 -12
  497. package/src/og/control/heightRuler/HeightRulerScene.js +0 -228
  498. package/src/og/control/heightRuler/HeightRulerSwitcher.js +0 -15
  499. package/src/og/control/index.js +0 -56
  500. package/src/og/control/ruler/Ruler.js +0 -39
  501. package/src/og/control/ruler/RulerScene.js +0 -395
  502. package/src/og/control/selection/Selection.js +0 -95
  503. package/src/og/control/selection/SelectionScene.js +0 -345
  504. package/src/og/control/timeline/TimelineControl.js +0 -100
  505. package/src/og/control/timeline/TimelineModel.js +0 -137
  506. package/src/og/control/timeline/TimelineView.js +0 -462
  507. package/src/og/control/timeline/timelineUtils.js +0 -132
  508. package/src/og/control/visibleExtent/Segment.js +0 -1854
  509. package/src/og/control/visibleExtent/VisibleExtent.js +0 -80
  510. package/src/og/control/visibleExtent/drawnode.js +0 -747
  511. package/src/og/ellipsoid/Ellipsoid.js +0 -565
  512. package/src/og/ellipsoid/index.js +0 -4
  513. package/src/og/ellipsoid/wgs84.js +0 -9
  514. package/src/og/entity/BaseBillboard.js +0 -375
  515. package/src/og/entity/Billboard.js +0 -161
  516. package/src/og/entity/BillboardHandler.js +0 -883
  517. package/src/og/entity/Entity.js +0 -728
  518. package/src/og/entity/EntityCollection.js +0 -830
  519. package/src/og/entity/GeoObject.js +0 -244
  520. package/src/og/entity/GeoObjectHandler.js +0 -744
  521. package/src/og/entity/Geometry.js +0 -320
  522. package/src/og/entity/GeometryHandler.js +0 -1340
  523. package/src/og/entity/Label.js +0 -345
  524. package/src/og/entity/LabelHandler.js +0 -895
  525. package/src/og/entity/LabelWorker.js +0 -194
  526. package/src/og/entity/PointCloud.js +0 -491
  527. package/src/og/entity/PointCloudHandler.js +0 -122
  528. package/src/og/entity/Polyline.js +0 -2203
  529. package/src/og/entity/PolylineHandler.js +0 -105
  530. package/src/og/entity/Ray.js +0 -262
  531. package/src/og/entity/RayHandler.js +0 -841
  532. package/src/og/entity/Strip.js +0 -628
  533. package/src/og/entity/StripHandler.js +0 -158
  534. package/src/og/entity/index.js +0 -9
  535. package/src/og/index.js +0 -112
  536. package/src/og/input/KeyboardHandler.js +0 -195
  537. package/src/og/input/MouseHandler.js +0 -94
  538. package/src/og/input/TouchHandler.js +0 -59
  539. package/src/og/input/input.js +0 -44
  540. package/src/og/layer/BaseGeoImage.js +0 -480
  541. package/src/og/layer/CanvasTiles.js +0 -360
  542. package/src/og/layer/GeoImage.js +0 -150
  543. package/src/og/layer/GeoTexture2d.js +0 -50
  544. package/src/og/layer/GeoVideo.js +0 -187
  545. package/src/og/layer/KML.js +0 -358
  546. package/src/og/layer/Layer.js +0 -907
  547. package/src/og/layer/Material.js +0 -98
  548. package/src/og/layer/Vector.js +0 -1068
  549. package/src/og/layer/WMS.js +0 -182
  550. package/src/og/layer/XYZ.js +0 -374
  551. package/src/og/layer/index.js +0 -11
  552. package/src/og/light/LightSource.js +0 -362
  553. package/src/og/math/Line2.js +0 -28
  554. package/src/og/math/Line3.js +0 -140
  555. package/src/og/math/Mat3.js +0 -152
  556. package/src/og/math/Mat4.js +0 -603
  557. package/src/og/math/Plane.js +0 -117
  558. package/src/og/math/Quat.js +0 -980
  559. package/src/og/math/Ray.js +0 -237
  560. package/src/og/math/Vec2.js +0 -520
  561. package/src/og/math/Vec3.js +0 -931
  562. package/src/og/math/Vec4.js +0 -256
  563. package/src/og/math/coder.js +0 -104
  564. package/src/og/math/index.js +0 -23
  565. package/src/og/math.js +0 -430
  566. package/src/og/mercator.js +0 -149
  567. package/src/og/proj/EPSG3857.js +0 -13
  568. package/src/og/proj/EPSG4326.js +0 -13
  569. package/src/og/proj/Proj.js +0 -59
  570. package/src/og/quadTree/EPSG4326QuadTreeStrategy.js +0 -27
  571. package/src/og/quadTree/EarthQuadTreeStrategy.js +0 -30
  572. package/src/og/quadTree/EntityCollectionNode.js +0 -391
  573. package/src/og/quadTree/MarsQuadTreeStrategy.js +0 -28
  574. package/src/og/quadTree/Node.js +0 -785
  575. package/src/og/quadTree/QuadTreeStrategy.js +0 -94
  576. package/src/og/quadTree/Wgs84QuadTreeStrategy.js +0 -27
  577. package/src/og/quadTree/index.js +0 -14
  578. package/src/og/quadTree/quadTree.js +0 -77
  579. package/src/og/renderer/Renderer.js +0 -1185
  580. package/src/og/renderer/RendererEvents.js +0 -1094
  581. package/src/og/res/images.js +0 -8
  582. package/src/og/scene/Axes.js +0 -74
  583. package/src/og/scene/BaseNode.js +0 -109
  584. package/src/og/scene/Planet.js +0 -1931
  585. package/src/og/scene/RenderNode.js +0 -392
  586. package/src/og/scene/SkyBox.js +0 -104
  587. package/src/og/scene/index.js +0 -5
  588. package/src/og/segment/Segment.js +0 -1687
  589. package/src/og/segment/SegmentLonLat.js +0 -294
  590. package/src/og/segment/SegmentLonLatWgs84.js +0 -40
  591. package/src/og/segment/Slice.js +0 -45
  592. package/src/og/segment/segmentHelper.js +0 -230
  593. package/src/og/shaders/atmos.js +0 -332
  594. package/src/og/shaders/billboard.js +0 -225
  595. package/src/og/shaders/bloom.js +0 -37
  596. package/src/og/shaders/blur.js +0 -79
  597. package/src/og/shaders/depth.js +0 -48
  598. package/src/og/shaders/drawnode.js +0 -1040
  599. package/src/og/shaders/geoObject.js +0 -270
  600. package/src/og/shaders/label.js +0 -604
  601. package/src/og/shaders/lumFilter.js +0 -41
  602. package/src/og/shaders/pickingMask.js +0 -27
  603. package/src/og/shaders/pointCloud.js +0 -38
  604. package/src/og/shaders/polyline.js +0 -557
  605. package/src/og/shaders/ray.js +0 -81
  606. package/src/og/shaders/screenFrame.js +0 -31
  607. package/src/og/shaders/skybox.js +0 -33
  608. package/src/og/shaders/toneMapping.js +0 -90
  609. package/src/og/shaders/utils.js +0 -88
  610. package/src/og/terrain/BilTerrain.js +0 -243
  611. package/src/og/terrain/EmptyTerrain.js +0 -174
  612. package/src/og/terrain/Geoid.js +0 -247
  613. package/src/og/terrain/GlobusTerrain.js +0 -483
  614. package/src/og/terrain/MapboxTerrain.js +0 -470
  615. package/src/og/terrain/index.js +0 -6
  616. package/src/og/ui/Button.js +0 -107
  617. package/src/og/ui/ButtonGroup.js +0 -57
  618. package/src/og/ui/Dialog.js +0 -239
  619. package/src/og/ui/Slider.js +0 -170
  620. package/src/og/ui/ToggleButton.js +0 -51
  621. package/src/og/ui/UIhelpers.js +0 -155
  622. package/src/og/ui/View.js +0 -190
  623. package/src/og/ui/icons.js +0 -3
  624. package/src/og/utils/BaseWorker.js +0 -46
  625. package/src/og/utils/FontAtlas.js +0 -218
  626. package/src/og/utils/GeoImageCreator.js +0 -204
  627. package/src/og/utils/ImagesCacheManager.js +0 -70
  628. package/src/og/utils/Loader.js +0 -188
  629. package/src/og/utils/NormalMapCreator.js +0 -404
  630. package/src/og/utils/PlainSegmentWorker.js +0 -398
  631. package/src/og/utils/TerrainWorker.js +0 -573
  632. package/src/og/utils/TextureAtlas.js +0 -291
  633. package/src/og/utils/VectorTileCreator.js +0 -391
  634. package/src/og/utils/colorTable.js +0 -145
  635. package/src/og/utils/earcut.js +0 -661
  636. package/src/og/utils/functionComposition.js +0 -13
  637. package/src/og/utils/objParser.js +0 -227
  638. package/src/og/utils/shared.js +0 -989
  639. package/src/og/utils/units.js +0 -78
  640. package/src/og/webgl/Framebuffer.js +0 -311
  641. package/src/og/webgl/Handler.js +0 -1170
  642. package/src/og/webgl/Multisample.js +0 -275
  643. package/src/og/webgl/Program.js +0 -407
  644. package/src/og/webgl/ProgramController.js +0 -143
  645. package/src/og/webgl/callbacks.js +0 -98
  646. package/src/og/webgl/index.js +0 -13
  647. package/src/og/webgl/types.js +0 -31
  648. package/src/og.jsdoc +0 -3
  649. package/types/Clock.d.ts +0 -99
  650. package/types/Deferred.d.ts +0 -6
  651. package/types/Events.d.ts +0 -78
  652. package/types/Extent.d.ts +0 -166
  653. package/types/Globe.d.ts +0 -108
  654. package/types/ImageCanvas.d.ts +0 -128
  655. package/types/Lock.d.ts +0 -12
  656. package/types/LonLat.d.ts +0 -127
  657. package/types/Object3d.d.ts +0 -35
  658. package/types/Popup.d.ts +0 -29
  659. package/types/QueueArray.d.ts +0 -19
  660. package/types/Rectangle.d.ts +0 -80
  661. package/types/Stack.d.ts +0 -19
  662. package/types/arial.d.ts +0 -49
  663. package/types/astro/astro.d.ts +0 -38
  664. package/types/astro/earth.d.ts +0 -7
  665. package/types/astro/jd.d.ts +0 -254
  666. package/types/bv/Box.d.ts +0 -30
  667. package/types/bv/Sphere.d.ts +0 -38
  668. package/types/bv/index.d.ts +0 -3
  669. package/types/camera/Camera.d.ts +0 -314
  670. package/types/camera/Frustum.d.ts +0 -133
  671. package/types/camera/PlanetCamera.d.ts +0 -219
  672. package/types/camera/index.d.ts +0 -3
  673. package/types/cons.d.ts +0 -40
  674. package/types/control/Atmosphere.d.ts +0 -15
  675. package/types/control/CompassButton.d.ts +0 -16
  676. package/types/control/Control.d.ts +0 -104
  677. package/types/control/DebugInfo.d.ts +0 -19
  678. package/types/control/DrawingSwitcher.d.ts +0 -13
  679. package/types/control/EarthCoordinates.d.ts +0 -44
  680. package/types/control/EarthNavigation.d.ts +0 -43
  681. package/types/control/GeoImageDragControl.d.ts +0 -14
  682. package/types/control/KeyboardNavigation.d.ts +0 -24
  683. package/types/control/LayerAnimation.d.ts +0 -73
  684. package/types/control/LayerSwitcher.d.ts +0 -64
  685. package/types/control/Lighting.d.ts +0 -41
  686. package/types/control/MouseNavigation.d.ts +0 -49
  687. package/types/control/MouseWheelZoomControl.d.ts +0 -46
  688. package/types/control/ScaleControl.d.ts +0 -23
  689. package/types/control/ShowFps.d.ts +0 -11
  690. package/types/control/SimpleNavigation.d.ts +0 -26
  691. package/types/control/SimpleSkyBackground.d.ts +0 -15
  692. package/types/control/Sun.d.ts +0 -53
  693. package/types/control/ToggleWireframe.d.ts +0 -12
  694. package/types/control/TouchNavigation.d.ts +0 -54
  695. package/types/control/ZoomControl.d.ts +0 -26
  696. package/types/control/drawing/DrawingControl.d.ts +0 -14
  697. package/types/control/drawing/LineStringDrawingScene.d.ts +0 -5
  698. package/types/control/drawing/PolygonDrawingScene.d.ts +0 -99
  699. package/types/control/heightRuler/HeightRuler.d.ts +0 -6
  700. package/types/control/heightRuler/HeightRulerScene.d.ts +0 -23
  701. package/types/control/index.d.ts +0 -27
  702. package/types/control/ruler/Ruler.d.ts +0 -13
  703. package/types/control/ruler/RulerScene.d.ts +0 -51
  704. package/types/control/selection/Selection.d.ts +0 -49
  705. package/types/control/selection/SelectionScene.d.ts +0 -32
  706. package/types/control/timeline/TimelineControl.d.ts +0 -10
  707. package/types/control/timeline/TimelineModel.d.ts +0 -33
  708. package/types/control/timeline/TimelineView.d.ts +0 -57
  709. package/types/control/timeline/timelineUtils.d.ts +0 -9
  710. package/types/ellipsoid/Ellipsoid.d.ts +0 -170
  711. package/types/ellipsoid/index.d.ts +0 -3
  712. package/types/ellipsoid/wgs84.d.ts +0 -6
  713. package/types/entity/BaseBillboard.d.ts +0 -215
  714. package/types/entity/Billboard.d.ts +0 -94
  715. package/types/entity/BillboardHandler.d.ts +0 -75
  716. package/types/entity/Entity.d.ts +0 -340
  717. package/types/entity/EntityCollection.d.ts +0 -303
  718. package/types/entity/GeoObject.d.ts +0 -117
  719. package/types/entity/GeoObjectHandler.d.ts +0 -41
  720. package/types/entity/Geometry.d.ts +0 -79
  721. package/types/entity/GeometryHandler.d.ts +0 -76
  722. package/types/entity/Label.d.ts +0 -190
  723. package/types/entity/LabelHandler.d.ts +0 -31
  724. package/types/entity/LabelWorker.d.ts +0 -9
  725. package/types/entity/PointCloud.d.ts +0 -174
  726. package/types/entity/PointCloudHandler.d.ts +0 -38
  727. package/types/entity/Polyline.d.ts +0 -307
  728. package/types/entity/PolylineHandler.d.ts +0 -18
  729. package/types/entity/Ray.d.ts +0 -122
  730. package/types/entity/RayHandler.d.ts +0 -63
  731. package/types/entity/Strip.d.ts +0 -119
  732. package/types/entity/StripHandler.d.ts +0 -38
  733. package/types/entity/index.d.ts +0 -8
  734. package/types/index.d.ts +0 -53
  735. package/types/input/KeyboardHandler.d.ts +0 -17
  736. package/types/input/MouseHandler.d.ts +0 -5
  737. package/types/input/TouchHandler.d.ts +0 -5
  738. package/types/input/input.d.ts +0 -42
  739. package/types/layer/BaseGeoImage.d.ts +0 -116
  740. package/types/layer/CanvasTiles.d.ts +0 -73
  741. package/types/layer/GeoImage.d.ts +0 -51
  742. package/types/layer/GeoTexture2d.d.ts +0 -7
  743. package/types/layer/GeoVideo.d.ts +0 -47
  744. package/types/layer/KML.d.ts +0 -93
  745. package/types/layer/Layer.d.ts +0 -320
  746. package/types/layer/Material.d.ts +0 -45
  747. package/types/layer/Vector.d.ts +0 -211
  748. package/types/layer/WMS.d.ts +0 -66
  749. package/types/layer/XYZ.d.ts +0 -122
  750. package/types/layer/index.d.ts +0 -10
  751. package/types/light/LightSource.d.ts +0 -178
  752. package/types/math/Line2.d.ts +0 -11
  753. package/types/math/Line3.d.ts +0 -10
  754. package/types/math/Mat3.d.ts +0 -65
  755. package/types/math/Mat4.d.ts +0 -176
  756. package/types/math/Plane.d.ts +0 -18
  757. package/types/math/Quat.d.ts +0 -379
  758. package/types/math/Ray.d.ts +0 -82
  759. package/types/math/Vec2.d.ts +0 -309
  760. package/types/math/Vec3.d.ts +0 -472
  761. package/types/math/Vec4.d.ts +0 -161
  762. package/types/math/coder.d.ts +0 -43
  763. package/types/math/index.d.ts +0 -11
  764. package/types/math.d.ts +0 -268
  765. package/types/mercator.d.ts +0 -92
  766. package/types/proj/EPSG3857.d.ts +0 -6
  767. package/types/proj/EPSG4326.d.ts +0 -6
  768. package/types/proj/Proj.d.ts +0 -42
  769. package/types/quadTree/EPSG4326QuadTreeStrategy.d.ts +0 -3
  770. package/types/quadTree/EarthQuadTreeStrategy.d.ts +0 -3
  771. package/types/quadTree/EntityCollectionNode.d.ts +0 -41
  772. package/types/quadTree/MarsQuadTreeStrategy.d.ts +0 -3
  773. package/types/quadTree/Node.d.ts +0 -58
  774. package/types/quadTree/QuadTreeStrategy.d.ts +0 -21
  775. package/types/quadTree/Wgs84QuadTreeStrategy.d.ts +0 -3
  776. package/types/quadTree/index.d.ts +0 -12
  777. package/types/quadTree/quadTree.d.ts +0 -40
  778. package/types/renderer/Renderer.d.ts +0 -291
  779. package/types/renderer/RendererEvents.d.ts +0 -241
  780. package/types/res/images.d.ts +0 -2
  781. package/types/scene/Axes.d.ts +0 -10
  782. package/types/scene/BaseNode.d.ts +0 -60
  783. package/types/scene/Planet.d.ts +0 -594
  784. package/types/scene/RenderNode.d.ts +0 -152
  785. package/types/scene/SkyBox.d.ts +0 -9
  786. package/types/scene/index.d.ts +0 -4
  787. package/types/segment/Segment.d.ts +0 -273
  788. package/types/segment/SegmentLonLat.d.ts +0 -22
  789. package/types/segment/SegmentLonLatWgs84.d.ts +0 -4
  790. package/types/segment/Slice.d.ts +0 -10
  791. package/types/segment/segmentHelper.d.ts +0 -13
  792. package/types/shaders/atmos.d.ts +0 -4
  793. package/types/shaders/billboard.d.ts +0 -3
  794. package/types/shaders/depth.d.ts +0 -2
  795. package/types/shaders/drawnode.d.ts +0 -8
  796. package/types/shaders/geoObject.d.ts +0 -3
  797. package/types/shaders/label.d.ts +0 -4
  798. package/types/shaders/pickingMask.d.ts +0 -2
  799. package/types/shaders/pointCloud.d.ts +0 -2
  800. package/types/shaders/polyline.d.ts +0 -3
  801. package/types/shaders/ray.d.ts +0 -2
  802. package/types/shaders/screenFrame.d.ts +0 -2
  803. package/types/shaders/skybox.d.ts +0 -2
  804. package/types/shaders/toneMapping.d.ts +0 -2
  805. package/types/shaders/utils.d.ts +0 -1
  806. package/types/terrain/BilTerrain.d.ts +0 -14
  807. package/types/terrain/EmptyTerrain.d.ts +0 -87
  808. package/types/terrain/Geoid.d.ts +0 -17
  809. package/types/terrain/GlobusTerrain.d.ts +0 -122
  810. package/types/terrain/MapboxTerrain.d.ts +0 -14
  811. package/types/terrain/index.d.ts +0 -5
  812. package/types/ui/Button.d.ts +0 -21
  813. package/types/ui/ButtonGroup.d.ts +0 -12
  814. package/types/ui/Dialog.d.ts +0 -41
  815. package/types/ui/Slider.d.ts +0 -33
  816. package/types/ui/ToggleButton.d.ts +0 -10
  817. package/types/ui/UIhelpers.d.ts +0 -13
  818. package/types/ui/View.d.ts +0 -33
  819. package/types/ui/icons.d.ts +0 -1
  820. package/types/utils/BaseWorker.d.ts +0 -14
  821. package/types/utils/FontAtlas.d.ts +0 -16
  822. package/types/utils/GeoImageCreator.d.ts +0 -30
  823. package/types/utils/ImagesCacheManager.d.ts +0 -10
  824. package/types/utils/Loader.d.ts +0 -31
  825. package/types/utils/NormalMapCreator.d.ts +0 -39
  826. package/types/utils/PlainSegmentWorker.d.ts +0 -8
  827. package/types/utils/TerrainWorker.d.ts +0 -7
  828. package/types/utils/TextureAtlas.d.ts +0 -113
  829. package/types/utils/VectorTileCreator.d.ts +0 -14
  830. package/types/utils/colorTable.d.ts +0 -143
  831. package/types/utils/earcut.d.ts +0 -6
  832. package/types/utils/functionComposition.d.ts +0 -5
  833. package/types/utils/objParser.d.ts +0 -8
  834. package/types/utils/shared.d.ts +0 -241
  835. package/types/utils/units.d.ts +0 -20
  836. package/types/webgl/Framebuffer.d.ts +0 -134
  837. package/types/webgl/Handler.d.ts +0 -403
  838. package/types/webgl/Multisample.d.ts +0 -91
  839. package/types/webgl/Program.d.ts +0 -163
  840. package/types/webgl/ProgramController.d.ts +0 -89
  841. package/types/webgl/callbacks.d.ts +0 -1
  842. package/types/webgl/index.d.ts +0 -6
  843. package/types/webgl/types.d.ts +0 -2
  844. /package/{dist → lib}/@openglobus/og.css +0 -0
  845. /package/{src/og → lib/@openglobus/res/fonts}/arial.js +0 -0
@@ -1,989 +0,0 @@
1
- /**
2
- * @module og/utils/shared
3
- */
4
-
5
- "use strict";
6
-
7
- import { Extent } from "../Extent.js";
8
- import { LonLat } from "../LonLat.js";
9
- import { Vec2 } from "../math/Vec2.js";
10
- import { Vec3 } from "../math/Vec3.js";
11
- import { Vec4 } from "../math/Vec4.js";
12
- import { colorTable } from "./colorTable.js";
13
-
14
- export function getDefault(param, def) {
15
- return param != undefined ? param : def;
16
- }
17
-
18
- export function isEmpty(v) {
19
- return v == null;
20
- }
21
-
22
- /**
23
- * Returns true if the object pointer is undefined.
24
- * @function
25
- * @param {Object} obj - Object pointer.
26
- * @returns {boolean} Returns true if object is undefined.
27
- */
28
- export function isUndef(obj) {
29
- return obj === void 0;
30
- }
31
-
32
- export function isUndefExt(obj, defVal) {
33
- return isUndef(obj) ? defVal : obj;
34
- }
35
-
36
- let _stampCounter = 0;
37
-
38
- export function stamp(obj) {
39
- var stamp = obj._openglobus_id;
40
- if (!stamp) {
41
- stamp = obj._openglobus_id = ++_stampCounter;
42
- }
43
- return stamp;
44
- }
45
-
46
- export function isString(s) {
47
- return typeof s === "string" || s instanceof String;
48
- }
49
-
50
- /**
51
- * Convert html color string to the RGBA number vector.
52
- * @param {string} htmlColor - HTML string("#C6C6C6" or "#EF5" or "rgb(8,8,8)" or "rgba(8,8,8)") color.
53
- * @param {number} [opacity] - Opacity for the output vector.
54
- * @returns {math.Vec4} -
55
- */
56
- export function htmlColorToRgba(htmlColor, opacity) {
57
- var hColor = colorTable[htmlColor];
58
- if (hColor) {
59
- htmlColor = hColor;
60
- }
61
-
62
- if (htmlColor[0] === "#") {
63
- var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
64
- var hex = htmlColor.replace(shorthandRegex, function (m, r, g, b) {
65
- return r + r + g + g + b + b;
66
- });
67
- var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
68
- return new Vec4(
69
- parseInt(result[1], 16) / 255,
70
- parseInt(result[2], 16) / 255,
71
- parseInt(result[3], 16) / 255,
72
- isEmpty(opacity) ? 1.0 : opacity
73
- );
74
- } else {
75
- if (isEmpty(opacity)) {
76
- opacity = 1.0;
77
- }
78
- var m = htmlColor.split(",");
79
- return new Vec4(
80
- parseInt(m[0].split("(")[1]) / 255,
81
- parseInt(m[1]) / 255,
82
- parseInt(m[2]) / 255,
83
- !isEmpty(m[3]) ? parseFloat(m[3]) : opacity
84
- );
85
- }
86
- }
87
-
88
- export function htmlColorToFloat32Array(htmlColor, opacity) {
89
- let c = htmlColorToRgba(htmlColor, opacity);
90
- return new Float32Array([c.x, c.y, c.z, c.w]);
91
- }
92
-
93
- /**
94
- * Convert html color string to the RGB number vector.
95
- * @param {string} htmlColor - HTML string("#C6C6C6" or "#EF5" or "rgb(8,8,8)" or "rgba(8,8,8)") color.
96
- * @param {number} [opacity] - Opacity for the output vector.
97
- * @returns {Vec3} -
98
- */
99
- export function htmlColorToRgb(htmlColor) {
100
- var hColor = colorTable[htmlColor];
101
- if (hColor) {
102
- htmlColor = hColor;
103
- }
104
-
105
- if (htmlColor[0] === "#") {
106
- var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
107
- var hex = htmlColor.replace(shorthandRegex, function (m, r, g, b) {
108
- return r + r + g + g + b + b;
109
- });
110
- var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
111
- return new Vec3(
112
- parseInt(result[1], 16) / 255,
113
- parseInt(result[2], 16) / 255,
114
- parseInt(result[3], 16) / 255
115
- );
116
- } else {
117
- var m = htmlColor.split(",");
118
- return new Vec3(
119
- parseInt(m[0].split("(")[1]) / 255,
120
- parseInt(m[1]) / 255,
121
- parseInt(m[2]) / 255
122
- );
123
- }
124
- }
125
-
126
- /**
127
- * Replace template substrings between '{' and '}' tokens.
128
- * @param {string} template - String with templates in "{" and "}"
129
- * @param {Object} params - Template named object with subsrtings.
130
- * @returns {string} -
131
- *
132
- * @example <caption>Example from og.terrain that replaces tile indexes in url:</caption>
133
- * var substrings = {
134
- * "x": 12,
135
- * "y": 15,
136
- * "z": 8
137
- * }
138
- * og.utils.stringTemplate("http://earth3.openglobus.org/{z}/{y}/{x}.ddm", substrins);
139
- * //returns http://earth3.openglobus.org/8/15/12.ddm
140
- */
141
- export function stringTemplate(template, params) {
142
- return template.replace(/{[^{}]+}/g, function (key) {
143
- return params[key.replace(/[{}]+/g, "")] || "";
144
- });
145
- }
146
-
147
- export function getHTML(template, params) {
148
- return stringTemplate(template, params);
149
- }
150
-
151
- export function parseHTML(htmlStr) {
152
- var p = document.createElement("div");
153
- p.innerHTML = htmlStr;
154
- var domArr = [];
155
- for (let i = 0; i < p.childNodes.length; i++) {
156
- domArr.push(p.childNodes[i]);
157
- p.removeChild(p.childNodes[i]);
158
- }
159
- return domArr;
160
- }
161
-
162
- export function print2d(id, text, x, y) {
163
- var el = document.getElementById(id);
164
- if (!el) {
165
- el = document.createElement("div");
166
- el.id = id;
167
- el.classList.add("defaultText");
168
- document.body.appendChild(el);
169
- }
170
- el.innerHTML = text;
171
- el.style.left = x;
172
- el.style.top = y;
173
- }
174
-
175
- export function defaultString(str, def) {
176
- return str ? str.trim().toLowerCase() : def;
177
- }
178
-
179
- export function createVector3(v, def) {
180
- if (v) {
181
- if (v instanceof Vec3) {
182
- return v.clone();
183
- } else if (v instanceof Array) {
184
- return Vec3.fromVec(v);
185
- }
186
- } else if (def) {
187
- return def;
188
- }
189
- return new Vec3();
190
- }
191
-
192
- export function createVector4(v, def) {
193
- if (v) {
194
- if (v instanceof Vec4) {
195
- return v.clone();
196
- } else if (v instanceof Array) {
197
- return Vec4.fromVec(v);
198
- }
199
- } else if (def) {
200
- return def;
201
- }
202
- return new Vec4();
203
- }
204
-
205
- export function createColorRGBA(c, def) {
206
- if (c) {
207
- if (isString(c)) {
208
- return htmlColorToRgba(c);
209
- } else if (c instanceof Array) {
210
- return Vec4.fromVec(c);
211
- } else if (c instanceof Vec4) {
212
- return c.clone();
213
- }
214
- } else if (def) {
215
- return def;
216
- }
217
- return new Vec4(1.0, 1.0, 1.0, 1.0);
218
- }
219
-
220
- export function createColorRGB(c, def) {
221
- if (c) {
222
- if (isString(c)) {
223
- return htmlColorToRgb(c);
224
- } else if (c instanceof Array) {
225
- return Vec3.fromVec(c);
226
- } else if (c instanceof Vec3) {
227
- return c.clone();
228
- }
229
- } else if (def) {
230
- return def;
231
- }
232
- return new Vec3(1.0, 1.0, 1.0);
233
- }
234
-
235
- export function createExtent(e, def) {
236
- if (e) {
237
- if (e instanceof Array) {
238
- return new Extent(createLonLat(e[0]), createLonLat(e[1]));
239
- } else if (e instanceof Extent) {
240
- return e.clone();
241
- }
242
- } else if (def) {
243
- return def;
244
- }
245
- return new Extent();
246
- }
247
-
248
- export function createLonLat(l, def = null) {
249
- if (l) {
250
- if (l instanceof Array) {
251
- return new LonLat(l[0], l[1], l[2]);
252
- } else if (l instanceof LonLat) {
253
- return l.clone();
254
- }
255
- } else if (def) {
256
- return def;
257
- }
258
- return new LonLat();
259
- }
260
-
261
- export function binarySearchFast(arr, x) {
262
- let start = 0,
263
- end = arr.length - 1;
264
- while (start <= end) {
265
- let k = Math.floor((start + end) * 0.5);
266
- if (arr[k] === x) {
267
- return k;
268
- } else if (arr[k] < x) {
269
- start = k + 1;
270
- } else {
271
- end = k - 1;
272
- }
273
- }
274
- return -1;
275
- }
276
-
277
- /**
278
- * Finds an item in a sorted array.
279
- * @param {Array} ar The sorted array to search.
280
- * @param {Object} el The item to find in the array.
281
- * @param {utils.binarySearch~compare_fn} compare_fn comparator The function to use to compare the item to
282
- * elements in the array.
283
- * @returns {Number} a negative number if a is less than b; 0 if a is equal to b;a positive number of a is greater than b.
284
- *
285
- * @example
286
- * // Create a comparator function to search through an array of numbers.
287
- * function comparator(a, b) {
288
- * return a - b;
289
- * };
290
- * var numbers = [0, 2, 4, 6, 8];
291
- * var index = og.utils.binarySearch(numbers, 6, comparator); // 3
292
- */
293
- export function binarySearch(ar, el, compare_fn) {
294
- var m = 0;
295
- var n = ar.length - 1;
296
- while (m <= n) {
297
- var k = (n + m) >> 1;
298
- var cmp = compare_fn(el, ar[k], k);
299
- if (cmp > 0) {
300
- m = k + 1;
301
- } else if (cmp < 0) {
302
- n = k - 1;
303
- } else {
304
- return k;
305
- }
306
- }
307
- return -m - 1;
308
- }
309
-
310
- /**
311
- * Binary insertion that uses binarySearch algorithm.
312
- * @param {Array} ar - The sorted array to insert.
313
- * @param {Object} el - The item to insert.
314
- * @param {utils.binarySearch~compare_fn} compare_fn - comparator The function to use to compare the item to
315
- * elements in the array.
316
- * @returns {Number} Array index position in which item inserted in.
317
- */
318
- export function binaryInsert(ar, el, compare_fn) {
319
- var i = binarySearch(ar, el, compare_fn);
320
- if (i < 0) {
321
- i = ~i;
322
- }
323
- ar.splice(i, 0, el);
324
- return i;
325
- }
326
-
327
- /**
328
- * Returns two segment lines intersection coordinate.
329
- * @static
330
- * @param {math.Vec2} start1 - First line first coordinate.
331
- * @param {math.Vec2} end1 - First line second coordinate.
332
- * @param {math.Vec2} start2 - Second line first coordinate.
333
- * @param {math.Vec2} end2 - Second line second coordinate.
334
- * @param {boolean} [isSegment] - Lines are segments.
335
- * @return {math.Vec2} - Intersection coordinate.
336
- */
337
- export function getLinesIntersection2v(start1, end1, start2, end2, isSegment) {
338
- var dir1 = end1.sub(start1);
339
- var dir2 = end2.sub(start2);
340
-
341
- var a1 = -dir1.y;
342
- var b1 = +dir1.x;
343
- var d1 = -(a1 * start1.x + b1 * start1.y);
344
-
345
- var a2 = -dir2.y;
346
- var b2 = +dir2.x;
347
- var d2 = -(a2 * start2.x + b2 * start2.y);
348
-
349
- var seg1_line2_start = a2 * start1.x + b2 * start1.y + d2;
350
- var seg1_line2_end = a2 * end1.x + b2 * end1.y + d2;
351
-
352
- var seg2_line1_start = a1 * start2.x + b1 * start2.y + d1;
353
- var seg2_line1_end = a1 * end2.x + b1 * end2.y + d1;
354
-
355
- if (
356
- isSegment &&
357
- (seg1_line2_start * seg1_line2_end > 0 || seg2_line1_start * seg2_line1_end > 0)
358
- ) {
359
- return null;
360
- }
361
-
362
- var u = seg1_line2_start / (seg1_line2_start - seg1_line2_end);
363
-
364
- return new Vec2(start1.x + u * dir1.x, start1.y + u * dir1.y);
365
- }
366
-
367
- /**
368
- * Returns two segment lines intersection coordinate.
369
- * @static
370
- * @param {math.Vec2} start1 - First line first coordinate.
371
- * @param {math.Vec2} end1 - First line second coordinate.
372
- * @param {math.Vec2} start2 - Second line first coordinate.
373
- * @param {math.Vec2} end2 - Second line second coordinate.
374
- * @param {boolean} [isSegment] - Lines are segments.
375
- * @return {math.Vec2} - Intersection coordinate.
376
- */
377
- export function getLinesIntersectionLonLat(start1, end1, start2, end2, isSegment) {
378
- var dir1 = new LonLat(end1.lon - start1.lon, end1.lat - start1.lat);
379
- var dir2 = new LonLat(end2.lon - start2.lon, end2.lat - start2.lat);
380
-
381
- var a1 = -dir1.lat;
382
- var b1 = +dir1.lon;
383
- var d1 = -(a1 * start1.lon + b1 * start1.lat);
384
-
385
- var a2 = -dir2.lat;
386
- var b2 = +dir2.lon;
387
- var d2 = -(a2 * start2.lon + b2 * start2.lat);
388
-
389
- var seg1_line2_start = a2 * start1.lon + b2 * start1.lat + d2;
390
- var seg1_line2_end = a2 * end1.lon + b2 * end1.lat + d2;
391
-
392
- var seg2_line1_start = a1 * start2.lon + b1 * start2.lat + d1;
393
- var seg2_line1_end = a1 * end2.lon + b1 * end2.lat + d1;
394
-
395
- if (
396
- isSegment &&
397
- (seg1_line2_start * seg1_line2_end > 0 || seg2_line1_start * seg2_line1_end > 0)
398
- ) {
399
- return null;
400
- }
401
-
402
- var u = seg1_line2_start / (seg1_line2_start - seg1_line2_end);
403
-
404
- return new LonLat(start1.lon + u * dir1.lon, start1.lat + u * dir1.lat);
405
- }
406
-
407
- /**
408
- * Converts XML to JSON
409
- * @static
410
- * @param {Object} xml - Xml object
411
- * @return {Object} - Json converted object.
412
- */
413
- export function xmlToJson(xml) {
414
- // Create the return object
415
- var obj = {};
416
-
417
- if (xml.nodeType === 1) {
418
- // element
419
- // do attributes
420
- if (xml.attributes.length > 0) {
421
- obj["@attributes"] = {};
422
- for (let j = 0; j < xml.attributes.length; j++) {
423
- var attribute = xml.attributes.item(j);
424
- obj["@attributes"][attribute.nodeName] = attribute.nodeValue;
425
- }
426
- }
427
- } else if (xml.nodeType === 3) {
428
- // text
429
- obj = xml.nodeValue;
430
- }
431
-
432
- // do children
433
- if (xml.hasChildNodes()) {
434
- for (let i = 0; i < xml.childNodes.length; i++) {
435
- var item = xml.childNodes.item(i);
436
- var nodeName = item.nodeName;
437
- if (typeof obj[nodeName] === "undefined") {
438
- obj[nodeName] = xmlToJson(item);
439
- } else {
440
- if (typeof obj[nodeName].push === "undefined") {
441
- var old = obj[nodeName];
442
- obj[nodeName] = [];
443
- obj[nodeName].push(old);
444
- }
445
- obj[nodeName].push(xmlToJson(item));
446
- }
447
- }
448
- }
449
- return obj;
450
- }
451
-
452
- export const castType = {
453
- string: function (v) {
454
- return isEmpty(v) ? v : v.toString();
455
- },
456
-
457
- date: function (v) {
458
- return isEmpty(v) ? v : new Date(v * 1000);
459
- },
460
-
461
- datetime: function (v) {
462
- return isEmpty(v) ? v : new Date(v * 1000);
463
- },
464
-
465
- time: function (v) {
466
- return isEmpty(v) ? v : parseInt(v);
467
- },
468
-
469
- integer: function (v) {
470
- return isEmpty(v) ? v : parseInt(v);
471
- },
472
-
473
- float: function (v) {
474
- return isEmpty(v) ? v : parseFloat(v);
475
- },
476
-
477
- boolean: function (str) {
478
- if (str === null) {
479
- return str;
480
- }
481
-
482
- if (typeof str === "boolean") {
483
- if (str === true) {
484
- return true;
485
- }
486
- return false;
487
- }
488
- if (typeof str === "string") {
489
- if (str === "") {
490
- return false;
491
- }
492
- str = str.replace(/^\s+|\s+$/g, "");
493
- if (str.toLowerCase() === "true" || str.toLowerCase() === "yes") {
494
- return true;
495
- }
496
- str = str.replace(/,/g, ".");
497
- str = str.replace(/^\s*\-\s*/g, "-");
498
- }
499
- if (!isNaN(str)) {
500
- return parseFloat(str) !== 0;
501
- }
502
- return false;
503
- }
504
- };
505
-
506
- export function base64toBlob(base64Data, contentType) {
507
- contentType = contentType || "";
508
- var sliceSize = 1024;
509
- var byteCharacters = atob(base64Data);
510
- var bytesLength = byteCharacters.length;
511
- var slicesCount = Math.ceil(bytesLength / sliceSize);
512
- var byteArrays = new Array(slicesCount);
513
-
514
- for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
515
- var begin = sliceIndex * sliceSize;
516
- var end = Math.min(begin + sliceSize, bytesLength);
517
-
518
- var bytes = new Array(end - begin);
519
- for (let offset = begin, i = 0; offset < end; ++i, ++offset) {
520
- bytes[i] = byteCharacters[offset].charCodeAt(0);
521
- }
522
- byteArrays[sliceIndex] = new Uint8Array(bytes);
523
- }
524
- return new Blob(byteArrays, { type: contentType });
525
- }
526
-
527
- export function base64StringToBlog(string) {
528
- let block = string.split(";");
529
- let contentType = block[0].split(":")[1];
530
- let data = block[1].split(",")[1];
531
-
532
- return base64toBlob(data, contentType);
533
- }
534
-
535
- ///**
536
- // *
537
- // * @param {LonLat} p
538
- // * @param {LonLat} v1
539
- // * @param {LonLat} v2
540
- // * @param {LonLat} v3
541
- // * @param {Array<Number>} res
542
- // */
543
- //export function cartesianToBarycentricLonLat(p, v1, v2, v3, res) {
544
-
545
- // const y2y3 = v2.lat - v3.lat,
546
- // x3x2 = v3.lon - v2.lon,
547
- // x1x3 = v1.lon - v3.lon,
548
- // y1y3 = v1.lat - v3.lat,
549
- // y3y1 = v3.lat - v1.lat,
550
- // xx3 = p.lon - v3.lon,
551
- // yy3 = p.lat - v3.lat;
552
-
553
- // const d = y2y3 * x1x3 + x3x2 * y1y3,
554
- // lambda1 = (y2y3 * xx3 + x3x2 * yy3) / d,
555
- // lambda2 = (y3y1 * xx3 + x1x3 * yy3) / d;
556
-
557
- // res[0] = lambda1;
558
- // res[1] = lambda2;
559
- // res[2] = 1 - lambda1 - lambda2;
560
-
561
- // return 0 <= res[0] && res[0] <= 1 && 0 <= lambda1 && lambda1 <= 1 && 0 <= lambda2 && lambda2 <= 1;
562
- //};
563
-
564
- /**
565
- * Callback throttling
566
- * @param {any} func
567
- * @param {Number} limit
568
- * @param {boolean} [skip]
569
- */
570
- export function throttle(func, limit, skip) {
571
- let lastFunc;
572
- let lastRan;
573
- return function () {
574
- const context = this;
575
- const args = arguments;
576
- if (!lastRan) {
577
- func.apply(context, args);
578
- lastRan = Date.now();
579
- } else {
580
- if (skip) {
581
- clearTimeout(lastFunc);
582
- }
583
- lastFunc = setTimeout(function () {
584
- if (Date.now() - lastRan >= limit) {
585
- func.apply(context, args);
586
- lastRan = Date.now();
587
- }
588
- }, limit - (Date.now() - lastRan));
589
- }
590
- };
591
- }
592
-
593
- /**
594
- *
595
- * y2-----Q12--------------Q22---
596
- * | | | |
597
- * | | | |
598
- * y-------|-----P----------|----
599
- * | | | |
600
- * | | | |
601
- * | | | |
602
- * | | | |
603
- * | | | |
604
- * y1-----Q11----|---------Q21---
605
- * | | |
606
- * | | |
607
- * x1 x x2
608
- *
609
- *
610
- * @param {Number} x -
611
- * @param {Number} y -
612
- * @param {Number} fQ11 -
613
- * @param {Number} fQ21 -
614
- * @param {Number} fQ12 -
615
- * @param {Number} fQ22 -
616
- * @param {Number} [x1=0.0] -
617
- * @param {Number} [x2=1.0] -
618
- * @param {Number} [y1=0.0] -
619
- * @param {Number} [y2=1.0] -
620
- */
621
- export function blerp(x, y, fQ11, fQ21, fQ12, fQ22, x1 = 0.0, x2 = 1.0, y1 = 0.0, y2 = 1.0) {
622
- return (
623
- (fQ11 * (x2 - x) * (y2 - y) +
624
- fQ21 * (x - x1) * (y2 - y) +
625
- fQ12 * (x2 - x) * (y - y1) +
626
- fQ22 * (x - x1) * (y - y1)) /
627
- ((x2 - x1) * (y2 - y1))
628
- );
629
- }
630
-
631
- export function blerp2(x, y, fQ11, fQ21, fQ12, fQ22) {
632
- return (
633
- fQ11 * (1.0 - x) * (1.0 - y) + fQ21 * x * (1.0 - y) + fQ12 * (1.0 - x) * y + fQ22 * x * y
634
- );
635
- }
636
-
637
- export function extractElevationTiles(rgbaData, outCurrenElevations, outChildrenElevations) {
638
- let destSize = Math.sqrt(outCurrenElevations.length) - 1;
639
- let destSizeOne = destSize + 1;
640
- let sourceSize = Math.sqrt(rgbaData.length / 4);
641
- let dt = sourceSize / destSize;
642
-
643
- let rightHeigh = 0,
644
- bottomHeigh = 0;
645
-
646
- for (
647
- let k = 0, currIndex = 0, sourceDataLength = rgbaData.length / 4;
648
- k < sourceDataLength;
649
- k++
650
- ) {
651
- let height = rgbaData[k * 4];
652
-
653
- let i = Math.floor(k / sourceSize),
654
- j = k % sourceSize;
655
-
656
- let tileX = Math.floor(j / destSize),
657
- tileY = Math.floor(i / destSize);
658
-
659
- let destArr = outChildrenElevations[tileY][tileX];
660
-
661
- let ii = i % destSize,
662
- jj = j % destSize;
663
-
664
- let destIndex = (ii + tileY) * destSizeOne + jj + tileX;
665
-
666
- destArr[destIndex] = height;
667
-
668
- if ((i + tileY) % dt === 0 && (j + tileX) % dt === 0) {
669
- outCurrenElevations[currIndex++] = height;
670
- }
671
-
672
- if ((j + 1) % destSize === 0 && j !== sourceSize - 1) {
673
- //current tile
674
- rightHeigh = rgbaData[(k + 1) * 4];
675
- let middleHeight = (height + rightHeigh) * 0.5;
676
- destIndex = (ii + tileY) * destSizeOne + jj + 1;
677
- destArr[destIndex] = middleHeight;
678
-
679
- if ((i + tileY) % dt === 0) {
680
- outCurrenElevations[currIndex++] = middleHeight;
681
- }
682
-
683
- //next right tile
684
- let rightindex = (ii + tileY) * destSizeOne + ((jj + 1) % destSize);
685
- outChildrenElevations[tileY][tileX + 1][rightindex] = middleHeight;
686
- }
687
-
688
- if ((i + 1) % destSize === 0 && i !== sourceSize - 1) {
689
- //current tile
690
- bottomHeigh = rgbaData[(k + sourceSize) * 4];
691
- let middleHeight = (height + bottomHeigh) * 0.5;
692
- destIndex = (ii + 1) * destSizeOne + jj + tileX;
693
- destArr[destIndex] = middleHeight;
694
-
695
- if ((j + tileX) % dt === 0) {
696
- outCurrenElevations[currIndex++] = middleHeight;
697
- }
698
-
699
- //next bottom tile
700
- let bottomindex = ((ii + 1) % destSize) * destSizeOne + jj + tileX;
701
- outChildrenElevations[tileY + 1][tileX][bottomindex] = middleHeight;
702
- }
703
-
704
- if (
705
- (j + 1) % destSize === 0 &&
706
- j !== sourceSize - 1 &&
707
- (i + 1) % destSize === 0 &&
708
- i !== sourceSize - 1
709
- ) {
710
- //current tile
711
- let rightBottomHeight = rgbaData[(k + sourceSize + 1) * 4];
712
- let middleHeight = (height + rightHeigh + bottomHeigh + rightBottomHeight) * 0.25;
713
- destIndex = (ii + 1) * destSizeOne + (jj + 1);
714
- destArr[destIndex] = middleHeight;
715
-
716
- outCurrenElevations[currIndex++] = middleHeight;
717
-
718
- //next right tile
719
- let rightindex = (ii + 1) * destSizeOne;
720
- outChildrenElevations[tileY][tileX + 1][rightindex] = middleHeight;
721
-
722
- //next bottom tile
723
- let bottomindex = destSize;
724
- outChildrenElevations[tileY + 1][tileX][bottomindex] = middleHeight;
725
-
726
- //next right bottom tile
727
- let rightBottomindex = 0;
728
- outChildrenElevations[tileY + 1][tileX + 1][rightBottomindex] = middleHeight;
729
- }
730
- }
731
- }
732
-
733
- /**
734
- * Concatenates two the same type arrays
735
- * @param {TypedArray} a
736
- * @param {TypedArray} b
737
- */
738
- export function concatTypedArrays(a, b) {
739
- var c = new a.constructor(a.length + b.length);
740
- c.set(a, 0);
741
- c.set(b, a.length);
742
- return c;
743
- }
744
-
745
- /**
746
- * Concatenates two the same arrays
747
- * @param {TypedArray | Array} a
748
- * @param {TypedArray | Array} b
749
- */
750
- export function concatArrays(a = [], b) {
751
- if (ArrayBuffer.isView(a)) {
752
- return concatTypedArrays(a, b);
753
- } else {
754
- for (let i = 0; i < b.length; i++) {
755
- a.push(b[i]);
756
- }
757
- return a;
758
- }
759
- }
760
-
761
- /**
762
- * Convert simple array to typed
763
- * @param arr {Array}
764
- * @param ctor {Float32ArrayConstructor}
765
- * @returns {TypedArray}
766
- */
767
- export function makeArrayTyped(arr, ctor = Float32Array) {
768
- if (!ArrayBuffer.isView(arr)) {
769
- const typedArr = new ctor(arr.length);
770
- typedArr.set(arr, 0);
771
- return typedArr;
772
- } else {
773
- return arr;
774
- }
775
- }
776
-
777
- /**
778
- * Convert typed array to array
779
- * @param arr {TypedArray}
780
- * @returns {Array}
781
- */
782
- export function makeArray(arr) {
783
- if (ArrayBuffer.isView(arr)) {
784
- return Array.from(arr);
785
- } else {
786
- return arr;
787
- }
788
- }
789
-
790
- /**
791
- *
792
- * @param {TypedArray | Array} arr
793
- * @param {Number} starting
794
- * @param {Number} deleteCount
795
- * @param {Object} outArr
796
- */
797
-
798
- export function spliceArray(arr, starting, deleteCount, out) {
799
- if (ArrayBuffer.isView(arr)) {
800
- if (starting < 0) {
801
- deleteCount = Math.abs(starting);
802
- starting += arr.length;
803
- }
804
- return spliceTypedArray(arr, starting, deleteCount, out);
805
- } else {
806
- let res;
807
- if (starting < 0) {
808
- res = arr.splice(starting);
809
- } else {
810
- res = arr.splice(starting, deleteCount);
811
- }
812
- if (out) {
813
- out.result = res;
814
- }
815
- return arr;
816
- }
817
- }
818
-
819
- window.spliceArray = spliceArray;
820
-
821
- /**
822
- *
823
- * @param {TypedArray} arr
824
- * @param {Number} starting
825
- * @param {Number} deleteCount
826
- * @param {Array} outArr
827
- */
828
- export function spliceTypedArray(arr, starting, deleteCount, out) {
829
- if (arr.length === 0) {
830
- return arr;
831
- }
832
- const newSize = arr.length - deleteCount;
833
- const splicedArray = new arr.constructor(newSize);
834
- splicedArray.set(arr.subarray(0, starting));
835
- splicedArray.set(arr.subarray(starting + deleteCount), starting);
836
- if (out) {
837
- out.result = arr.subarray(starting, starting + deleteCount);
838
- }
839
- return splicedArray;
840
- }
841
-
842
- /**
843
- * Returns triangle coordinate array from inside of the source triangle array.
844
- * @static
845
- * @param {Array.<number>} sourceArr - Source array
846
- * @param {number} gridSize - Source array square matrix size
847
- * @param {number} i0 - First row index source array matrix
848
- * @param {number} j0 - First column index
849
- * @param {number} size - Square matrix result size.
850
- * @return{Array.<number>} Triangle coordinates array from the source array.
851
- * @TODO: optimization
852
- */
853
- export function getMatrixSubArray(sourceArr, gridSize, i0, j0, size) {
854
- const size_1 = size + 1;
855
- const i0size = i0 + size_1;
856
- const j0size = j0 + size_1;
857
-
858
- var res = new Float64Array(size_1 * size_1 * 3);
859
-
860
- var vInd = 0;
861
- for (let i = i0; i < i0size; i++) {
862
- for (let j = j0; j < j0size; j++) {
863
- var ind = 3 * (i * (gridSize + 1) + j);
864
-
865
- res[vInd++] = sourceArr[ind];
866
- res[vInd++] = sourceArr[ind + 1];
867
- res[vInd++] = sourceArr[ind + 2];
868
- }
869
- }
870
- return res;
871
- }
872
-
873
- /**
874
- * Returns two float32 triangle coordinate arrays from inside of the source triangle array.
875
- * @static
876
- * @param {Array.<number>} sourceArr - Source array
877
- * @param {number} gridSize - Source array square matrix size
878
- * @param {number} i0 - First row index source array matrix
879
- * @param {number} j0 - First column index
880
- * @param {number} size - Square matrix result size.
881
- * @param {object} outBounds - Output bounds.
882
- * @return{Array.<number>} Triangle coordinates array from the source array.
883
- * @TODO: optimization
884
- */
885
- export function getMatrixSubArrayBoundsExt(
886
- sourceArr,
887
- sourceArrHigh,
888
- sourceArrLow,
889
- noDataVertices,
890
- gridSize,
891
- i0,
892
- j0,
893
- size,
894
- outArr,
895
- outArrHigh,
896
- outArrLow,
897
- outBounds,
898
- outNoDataVertices
899
- ) {
900
- const i0size = i0 + size + 1;
901
- const j0size = j0 + size + 1;
902
- gridSize += 1;
903
- var vInd = 0,
904
- nInd = 0;
905
- for (let i = i0; i < i0size; i++) {
906
- for (let j = j0; j < j0size; j++) {
907
- let indBy3 = i * gridSize + j,
908
- ind = 3 * indBy3;
909
-
910
- let x = sourceArr[ind],
911
- y = sourceArr[ind + 1],
912
- z = sourceArr[ind + 2];
913
-
914
- if (!noDataVertices || noDataVertices[indBy3] === 0) {
915
- if (x < outBounds.xmin) outBounds.xmin = x;
916
- if (x > outBounds.xmax) outBounds.xmax = x;
917
- if (y < outBounds.ymin) outBounds.ymin = y;
918
- if (y > outBounds.ymax) outBounds.ymax = y;
919
- if (z < outBounds.zmin) outBounds.zmin = z;
920
- if (z > outBounds.zmax) outBounds.zmax = z;
921
- } else {
922
- outNoDataVertices[nInd] = 1;
923
- }
924
-
925
- nInd++;
926
-
927
- outArr[vInd] = x;
928
- outArrLow[vInd] = sourceArrLow[ind];
929
- outArrHigh[vInd++] = sourceArrHigh[ind];
930
-
931
- outArr[vInd] = y;
932
- outArrLow[vInd] = sourceArrLow[ind + 1];
933
- outArrHigh[vInd++] = sourceArrHigh[ind + 1];
934
-
935
- outArr[vInd] = z;
936
- outArrLow[vInd] = sourceArrLow[ind + 2];
937
- outArrHigh[vInd++] = sourceArrHigh[ind + 2];
938
- }
939
- }
940
- }
941
-
942
- export function cloneArray(items) {
943
- return items.map((item) => (Array.isArray(item) ? cloneArray(item) : item));
944
- }
945
-
946
- /**
947
- * Promise for load images
948
- * @function
949
- * @param {string} url - link to image.
950
- * @returns {Promise<Image>} Returns promise.
951
- */
952
- export async function loadImage(url) {
953
- return new Promise(resolve => {
954
- const image = new Image();
955
- image.addEventListener('load', () => {
956
- resolve(image);
957
- });
958
- image.src = url;
959
- image.crossOrigin = ""
960
- return image;
961
- });
962
- }
963
-
964
- /**
965
- * Gets image is loaded
966
- * @param {HTMLImageElement} image
967
- * @returns {boolean} Returns true is the image is loaded
968
- */
969
- export function isImageLoaded(image) {
970
- return image.complete && image.naturalHeight !== 0;
971
- }
972
-
973
- export function distanceFormat(v) {
974
- if (v > 1000) {
975
- return `${(v / 1000).toFixed(1)} km`;
976
- } else if (v > 9) {
977
- return `${Math.round(v)} m`;
978
- } else {
979
- return `${v.toFixed(1)} m`;
980
- }
981
- }
982
-
983
- export function getUrlParam(paramName) {
984
- let urlParams = new URLSearchParams(location.search);
985
- let param = urlParams.get(paramName);
986
- if (param) {
987
- return Number(param);
988
- }
989
- }