@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
@@ -0,0 +1,551 @@
1
+ // import { QueueArray } from '../QueueArray.js';
2
+ import { BaseWorker } from "./BaseWorker";
3
+ class TerrainWorker extends BaseWorker {
4
+ constructor(numWorkers = 2) {
5
+ super(numWorkers, TERRAIN_PROGRAM);
6
+ }
7
+ _onMessage(e) {
8
+ this._source.get(e.data.id).segment._terrainWorkerCallback(e.data);
9
+ this._source.delete(e.data.id);
10
+ e.data.normalMapNormals = null;
11
+ e.data.normalMapVertices = null;
12
+ e.data.normalMapVerticesHigh = null;
13
+ e.data.normalMapVerticesLow = null;
14
+ e.data.terrainVertices = null;
15
+ e.data.terrainVerticesHigh = null;
16
+ e.data.terrainVerticesLow = null;
17
+ }
18
+ make(info) {
19
+ if (info.segment.plainReady && info.segment.terrainIsLoading) {
20
+ if (this._workerQueue.length) {
21
+ const w = this._workerQueue.pop();
22
+ this._source.set(this._sourceId, info);
23
+ let segment = info.segment;
24
+ w.postMessage({
25
+ 'elevations': info.elevations,
26
+ 'this_plainVertices': segment.plainVertices,
27
+ 'this_plainNormals': segment.plainNormals,
28
+ 'this_normalMapVertices': segment.normalMapVertices,
29
+ 'this_normalMapNormals': segment.normalMapNormals,
30
+ 'heightFactor': segment.planet._heightFactor,
31
+ 'gridSize': segment.planet.terrain.gridSizeByZoom[segment.tileZoom],
32
+ 'noDataValues': segment.planet.terrain.noDataValues,
33
+ 'id': this._sourceId
34
+ }, [
35
+ info.elevations.buffer,
36
+ segment.plainVertices.buffer,
37
+ segment.plainNormals.buffer,
38
+ segment.normalMapVertices.buffer,
39
+ segment.normalMapNormals.buffer
40
+ ]);
41
+ this._sourceId++;
42
+ }
43
+ else {
44
+ this._pendingQueue.push(info);
45
+ }
46
+ }
47
+ else {
48
+ this.check();
49
+ }
50
+ }
51
+ }
52
+ const TERRAIN_PROGRAM = `'use strict';
53
+ //
54
+ //Terrain worker
55
+ //
56
+
57
+ function binarySearchFast(arr, x) {
58
+ let start = 0,
59
+ end = arr.length - 1;
60
+ while (start <= end) {
61
+ let k = Math.floor((start + end) * 0.5);
62
+ if (arr[k] === x)
63
+ return k;
64
+ else if (arr[k] < x)
65
+ start = k + 1;
66
+ else
67
+ end = k - 1;
68
+ }
69
+ return -1;
70
+ };
71
+
72
+ function checkNoDataValue(noDataValues, value) {
73
+ return binarySearchFast(noDataValues, value) !== -1;
74
+ };
75
+
76
+
77
+ var Vec3 = function(x, y, z) {
78
+ this.x = x;
79
+ this.y = y;
80
+ this.z = z;
81
+ };
82
+
83
+ var doubleToTwoFloats = function(v, high, low) {
84
+
85
+ let x = v.x, y = v.y, z = v.z;
86
+
87
+ if (x >= 0.0) {
88
+ var doubleHigh = Math.floor(x / 65536.0) * 65536.0;
89
+ high.x = Math.fround(doubleHigh);
90
+ low.x = Math.fround(x - doubleHigh);
91
+ } else {
92
+ var doubleHigh = Math.floor(-x / 65536.0) * 65536.0;
93
+ high.x = Math.fround(-doubleHigh);
94
+ low.x = Math.fround(x + doubleHigh);
95
+ }
96
+
97
+ if (y >= 0.0) {
98
+ var doubleHigh = Math.floor(y / 65536.0) * 65536.0;
99
+ high.y = Math.fround(doubleHigh);
100
+ low.y = Math.fround(y - doubleHigh);
101
+ } else {
102
+ var doubleHigh = Math.floor(-y / 65536.0) * 65536.0;
103
+ high.y = Math.fround(-doubleHigh);
104
+ low.y = Math.fround(y + doubleHigh);
105
+ }
106
+
107
+ if (z >= 0.0) {
108
+ var doubleHigh = Math.floor(z / 65536.0) * 65536.0;
109
+ high.z = Math.fround(doubleHigh);
110
+ low.z = Math.fround(z - doubleHigh);
111
+ } else {
112
+ var doubleHigh = Math.floor(-z / 65536.0) * 65536.0;
113
+ high.z = Math.fround(-doubleHigh);
114
+ low.z = Math.fround(z + doubleHigh);
115
+ }
116
+ };
117
+
118
+ Vec3.prototype.sub = function(v) {
119
+ return new Vec3(this.x - v.x, this.y - v.y, this.z - v.z);
120
+ };
121
+
122
+ Vec3.prototype.add = function(v) {
123
+ return new Vec3(this.x + v.x, this.y + v.y, this.z + v.z);
124
+ };
125
+
126
+ Vec3.prototype.cross = function(v) {
127
+ return new Vec3(
128
+ this.y * v.z - this.z * v.y,
129
+ this.z * v.x - this.x * v.z,
130
+ this.x * v.y - this.y * v.x
131
+ );
132
+ };
133
+
134
+ Vec3.prototype.normalize = function(v) {
135
+ var x = this.x, y = this.y, z = this.z;
136
+ var length = 1.0 / Math.sqrt(x * x + y * y + z * z);
137
+ this.x = x * length;
138
+ this.y = y * length;
139
+ this.z = z * length;
140
+ return this;
141
+ };
142
+
143
+ Vec3.prototype.distance = function(v) {
144
+ return this.sub(v).length();
145
+ };
146
+
147
+ Vec3.prototype.length = function () {
148
+ return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
149
+ };
150
+
151
+ var blerp = function(x, y, fQ11, fQ21, fQ12, fQ22) {
152
+ return (fQ11 * (1.0 - x) * (1.0 - y) + fQ21 * x * (1.0 - y) + fQ12 * (1.0 - x) * y + fQ22 * x * y);
153
+ };
154
+
155
+ var slice = function (t, h1, h0) {
156
+ return t * (h1 - h0);
157
+ };
158
+
159
+ var _tempVec = new Vec3(0.0, 0.0, 0.0);
160
+
161
+ var _tempHigh = new Vec3(0.0, 0.0, 0.0),
162
+ _tempLow = new Vec3(0.0, 0.0, 0.0);
163
+
164
+ self.onmessage = function (e) {
165
+ var elevations = e.data.elevations,
166
+ this_plainVertices = e.data.this_plainVertices,
167
+ this_plainNormals = e.data.this_plainNormals,
168
+ this_normalMapVertices = e.data.this_normalMapVertices,
169
+ this_normalMapNormals = e.data.this_normalMapNormals,
170
+ heightFactor = e.data.heightFactor,
171
+ gridSize = e.data.gridSize,
172
+ noDataValues = e.data.noDataValues,
173
+ id = e.data.id;
174
+
175
+ var xmin = 549755748352.0, xmax = -549755748352.0,
176
+ ymin = 549755748352.0, ymax = -549755748352.0,
177
+ zmin = 549755748352.0, zmax = -549755748352.0;
178
+
179
+ const fileGridSize = Math.sqrt(elevations.length) - 1;
180
+
181
+ const fileGridSize_one = fileGridSize + 1;
182
+ const fileGridSize_one_x2 = fileGridSize_one * fileGridSize_one;
183
+ const tgs = gridSize;
184
+ const dg = fileGridSize / tgs;
185
+ const gs = tgs + 1;
186
+ const hf = heightFactor;
187
+
188
+ var nmvInd = 0,
189
+ vInd = 0,
190
+ noDataInd = 0;
191
+
192
+ var gsgs3 = gs * gs * 3;
193
+
194
+ var terrainVertices = new Float64Array(gsgs3),
195
+ terrainVerticesHigh = new Float32Array(gsgs3),
196
+ terrainVerticesLow = new Float32Array(gsgs3),
197
+ noDataVertices = new Uint8Array(gs * gs);
198
+
199
+ var normalMapNormals,
200
+ normalMapVertices,
201
+ normalMapVerticesHigh,
202
+ normalMapVerticesLow;
203
+
204
+ var nv = this_normalMapVertices,
205
+ nn = this_normalMapNormals;
206
+
207
+ if (fileGridSize >= tgs) {
208
+
209
+ normalMapNormals = new Float32Array(fileGridSize_one_x2 * 3);
210
+ normalMapVertices = new Float64Array(fileGridSize_one_x2 * 3);
211
+ normalMapVerticesHigh = new Float32Array(fileGridSize_one_x2 * 3);
212
+ normalMapVerticesLow = new Float32Array(fileGridSize_one_x2 * 3);
213
+
214
+ for (let k = 0; k < fileGridSize_one_x2; k++) {
215
+
216
+ var j = k % fileGridSize_one,
217
+ i = ~~(k / fileGridSize_one);
218
+
219
+ //
220
+ // V0
221
+ //
222
+ var hInd0 = k;
223
+ var vInd0 = hInd0 * 3;
224
+ var currElv = elevations[hInd0];
225
+ if(checkNoDataValue(noDataValues, currElv)) {
226
+ currElv = 0.0;
227
+ }
228
+ var h0 = hf * currElv;
229
+ var v0 = new Vec3(nv[vInd0] + h0 * nn[vInd0], nv[vInd0 + 1] + h0 * nn[vInd0 + 1], nv[vInd0 + 2] + h0 * nn[vInd0 + 2]);
230
+
231
+ doubleToTwoFloats(v0, _tempHigh, _tempLow);
232
+
233
+ normalMapVertices[vInd0] = v0.x;
234
+ normalMapVertices[vInd0 + 1] = v0.y;
235
+ normalMapVertices[vInd0 + 2] = v0.z;
236
+
237
+ normalMapVerticesHigh[vInd0] = _tempHigh.x;
238
+ normalMapVerticesHigh[vInd0 + 1] = _tempHigh.y;
239
+ normalMapVerticesHigh[vInd0 + 2] = _tempHigh.z;
240
+
241
+ normalMapVerticesLow[vInd0] = _tempLow.x;
242
+ normalMapVerticesLow[vInd0 + 1] = _tempLow.y;
243
+ normalMapVerticesLow[vInd0 + 2] = _tempLow.z;
244
+
245
+ //
246
+ // The vertex goes into screen buffer
247
+ if (i % dg === 0 && j % dg === 0) {
248
+
249
+ let currVert = new Vec3(nv[vInd0], nv[vInd0 + 1], nv[vInd0 + 2]);
250
+ let nextVert = new Vec3(nv[vInd0 + 3], nv[vInd0 + 4], nv[vInd0 + 5]);
251
+
252
+ let nextElv = elevations[hInd0 + 1];
253
+ if(checkNoDataValue(noDataValues, nextElv)) {
254
+ nextElv = 0.0;
255
+ }
256
+
257
+ let eps = false;
258
+ if(noDataValues.length === 0){
259
+ let step = currVert.distance(nextVert);
260
+ let deltaElv = Math.abs(currElv - nextElv);
261
+ eps = ((deltaElv / step) > 10.0) || (currElv < -5000);
262
+ }
263
+
264
+ if(eps){
265
+ noDataVertices[noDataInd] = 1;
266
+ } else {
267
+ noDataVertices[noDataInd] = 0;
268
+ if (v0.x < xmin) xmin = v0.x; if (v0.x > xmax) xmax = v0.x;
269
+ if (v0.y < ymin) ymin = v0.y; if (v0.y > ymax) ymax = v0.y;
270
+ if (v0.z < zmin) zmin = v0.z; if (v0.z > zmax) zmax = v0.z;
271
+ }
272
+
273
+ terrainVerticesHigh[vInd] = _tempHigh.x;
274
+ terrainVerticesLow[vInd] = _tempLow.x;
275
+ terrainVertices[vInd++] = v0.x;
276
+
277
+ terrainVerticesHigh[vInd] = _tempHigh.y;
278
+ terrainVerticesLow[vInd] = _tempLow.y;
279
+ terrainVertices[vInd++] = v0.y;
280
+
281
+ terrainVerticesHigh[vInd] = _tempHigh.z;
282
+ terrainVerticesLow[vInd] = _tempLow.z;
283
+ terrainVertices[vInd++] = v0.z;
284
+
285
+ noDataInd++;
286
+ }
287
+
288
+ if (i !== fileGridSize && j !== fileGridSize) {
289
+
290
+ //
291
+ // V1
292
+ //
293
+ var hInd1 = k + 1;
294
+ var vInd1 = hInd1 * 3;
295
+ var elv = elevations[hInd1];
296
+ if(checkNoDataValue(noDataValues, elv)) {
297
+ elv = 0.0;
298
+ }
299
+ var h1 = hf * elv;
300
+ var v1 = new Vec3(nv[vInd1] + h1 * nn[vInd1], nv[vInd1 + 1] + h1 * nn[vInd1 + 1], nv[vInd1 + 2] + h1 * nn[vInd1 + 2]);
301
+
302
+ doubleToTwoFloats(v1, _tempHigh, _tempLow);
303
+
304
+ normalMapVertices[vInd1] = v1.x;
305
+ normalMapVertices[vInd1 + 1] = v1.y;
306
+ normalMapVertices[vInd1 + 2] = v1.z;
307
+
308
+ normalMapVerticesHigh[vInd1] = _tempHigh.x;
309
+ normalMapVerticesHigh[vInd1 + 1] = _tempHigh.y;
310
+ normalMapVerticesHigh[vInd1 + 2] = _tempHigh.z;
311
+
312
+ normalMapVerticesLow[vInd1] = _tempLow.x;
313
+ normalMapVerticesLow[vInd1 + 1] = _tempLow.y;
314
+ normalMapVerticesLow[vInd1 + 2] = _tempLow.z;
315
+
316
+ //
317
+ // V2
318
+ //
319
+ var hInd2 = k + fileGridSize_one;
320
+ var vInd2 = hInd2 * 3;
321
+ var elv = elevations[hInd2];
322
+ if(checkNoDataValue(noDataValues, elv)) {
323
+ elv = 0.0;
324
+ }
325
+ var h2 = hf * elv;
326
+ var v2 = new Vec3(nv[vInd2] + h2 * nn[vInd2], nv[vInd2 + 1] + h2 * nn[vInd2 + 1], nv[vInd2 + 2] + h2 * nn[vInd2 + 2]);
327
+
328
+ doubleToTwoFloats(v2, _tempHigh, _tempLow);
329
+
330
+ normalMapVertices[vInd2] = v2.x;
331
+ normalMapVertices[vInd2 + 1] = v2.y;
332
+ normalMapVertices[vInd2 + 2] = v2.z;
333
+
334
+ normalMapVerticesHigh[vInd2] = _tempHigh.x;
335
+ normalMapVerticesHigh[vInd2 + 1] = _tempHigh.y;
336
+ normalMapVerticesHigh[vInd2 + 2] = _tempHigh.z;
337
+
338
+ normalMapVerticesLow[vInd2] = _tempLow.x;
339
+ normalMapVerticesLow[vInd2 + 1] = _tempLow.y;
340
+ normalMapVerticesLow[vInd2 + 2] = _tempLow.z;
341
+
342
+ //
343
+ // V3
344
+ //
345
+ var hInd3 = k + fileGridSize_one + 1;
346
+ var vInd3 = hInd3 * 3;
347
+ var elv = elevations[hInd3];
348
+ if(checkNoDataValue(noDataValues, elv)) {
349
+ elv = 0.0;
350
+ }
351
+ var h3 = hf * elv;
352
+ var v3 = new Vec3(nv[vInd3] + h3 * nn[vInd3], nv[vInd3 + 1] + h3 * nn[vInd3 + 1], nv[vInd3 + 2] + h3 * nn[vInd3 + 2]);
353
+
354
+ doubleToTwoFloats(v3, _tempHigh, _tempLow);
355
+
356
+ normalMapVertices[vInd3] = v3.x;
357
+ normalMapVertices[vInd3 + 1] = v3.y;
358
+ normalMapVertices[vInd3 + 2] = v3.z;
359
+
360
+ normalMapVerticesHigh[vInd3] = _tempHigh.x;
361
+ normalMapVerticesHigh[vInd3 + 1] = _tempHigh.y;
362
+ normalMapVerticesHigh[vInd3 + 2] = _tempHigh.z;
363
+
364
+ normalMapVerticesLow[vInd3] = _tempLow.x;
365
+ normalMapVerticesLow[vInd3 + 1] = _tempLow.y;
366
+ normalMapVerticesLow[vInd3 + 2] = _tempLow.z;
367
+
368
+ //
369
+ // Normal
370
+ //
371
+ var e10 = v1.sub(v0),
372
+ e20 = v2.sub(v0),
373
+ e30 = v3.sub(v0);
374
+ var sw = e20.cross(e30).normalize();
375
+ var ne = e30.cross(e10).normalize();
376
+ var n0 = ne.add(sw).normalize();
377
+
378
+ normalMapNormals[vInd0] += n0.x;
379
+ normalMapNormals[vInd0 + 1] += n0.y;
380
+ normalMapNormals[vInd0 + 2] += n0.z;
381
+
382
+ normalMapNormals[vInd1] += ne.x;
383
+ normalMapNormals[vInd1 + 1] += ne.y;
384
+ normalMapNormals[vInd1 + 2] += ne.z;
385
+
386
+ normalMapNormals[vInd2] += sw.x;
387
+ normalMapNormals[vInd2 + 1] += sw.y;
388
+ normalMapNormals[vInd2 + 2] += sw.z;
389
+
390
+ normalMapNormals[vInd3] += n0.x;
391
+ normalMapNormals[vInd3 + 1] += n0.y;
392
+ normalMapNormals[vInd3 + 2] += n0.z;
393
+ }
394
+ }
395
+
396
+ } else {
397
+
398
+ normalMapNormals = new Float32Array(gsgs3);
399
+ normalMapVertices = new Float64Array(gsgs3);
400
+ normalMapVerticesHigh = new Float32Array(gsgs3);
401
+ normalMapVerticesLow = new Float32Array(gsgs3);
402
+ normalMapNormals = new Float32Array(gsgs3);
403
+
404
+ var oneSize = tgs / fileGridSize;
405
+ var h, inside_i, inside_j, v_i, v_j;
406
+ var gsgs = gsgs3 / 3;
407
+ var fgsOne = fileGridSize + 1;
408
+
409
+ for(let i = 0; i < gsgs; i++) {
410
+ let ii = Math.floor(i / gs),
411
+ ij = i % gs;
412
+
413
+ let qii = ii % oneSize,
414
+ qij = ij % oneSize;
415
+
416
+ let hlt_ind = Math.floor(ii / oneSize) * fgsOne + Math.floor(ij / oneSize);
417
+
418
+ if (ij === tgs) {
419
+ hlt_ind -= 1;
420
+ qij = oneSize;
421
+ }
422
+
423
+ if (ii === tgs) {
424
+ hlt_ind -= fgsOne;
425
+ qii = oneSize;
426
+ }
427
+
428
+ let hrt_ind = hlt_ind + 1,
429
+ hlb_ind = hlt_ind + fgsOne,
430
+ hrb_ind = hlb_ind + 1;
431
+
432
+ let h_lt = elevations[hlt_ind],
433
+ h_rt = elevations[hrt_ind],
434
+ h_lb = elevations[hlb_ind],
435
+ h_rb = elevations[hrb_ind];
436
+
437
+ if(checkNoDataValue(noDataValues, h_lt)) {
438
+ h_lt = 0.0;
439
+ }
440
+
441
+ if(checkNoDataValue(noDataValues, h_rt)) {
442
+ h_rt = 0.0;
443
+ }
444
+
445
+ if(checkNoDataValue(noDataValues, h_lb)) {
446
+ h_lb = 0.0;
447
+ }
448
+
449
+ if(checkNoDataValue(noDataValues, h_rb)) {
450
+ h_rb = 0.0;
451
+ }
452
+
453
+ let hi = blerp(qij / oneSize, qii / oneSize, h_lt, h_rt, h_lb, h_rb);
454
+
455
+ let i3 = i * 3;
456
+
457
+ _tempVec.x = this_plainVertices[i3] + hi * this_plainNormals[i3],
458
+ _tempVec.y = this_plainVertices[i3 + 1] + hi * this_plainNormals[i3 + 1],
459
+ _tempVec.z = this_plainVertices[i3 + 2] + hi * this_plainNormals[i3 + 2];
460
+
461
+ doubleToTwoFloats(_tempVec, _tempHigh, _tempLow);
462
+
463
+ terrainVertices[i3] = _tempVec.x;
464
+ terrainVertices[i3 + 1] = _tempVec.y;
465
+ terrainVertices[i3 + 2] = _tempVec.z;
466
+
467
+ terrainVerticesHigh[i3] = _tempHigh.x;
468
+ terrainVerticesHigh[i3 + 1] = _tempHigh.y;
469
+ terrainVerticesHigh[i3 + 2] = _tempHigh.z;
470
+
471
+ terrainVerticesLow[i3] = _tempLow.x;
472
+ terrainVerticesLow[i3 + 1] = _tempLow.y;
473
+ terrainVerticesLow[i3 + 2] = _tempLow.z;
474
+
475
+ if (_tempVec.x < xmin) xmin = _tempVec.x; if (_tempVec.x > xmax) xmax = _tempVec.x;
476
+ if (_tempVec.y < ymin) ymin = _tempVec.y; if (_tempVec.y > ymax) ymax = _tempVec.y;
477
+ if (_tempVec.z < zmin) zmin = _tempVec.z; if (_tempVec.z > zmax) zmax = _tempVec.z;
478
+ }
479
+
480
+ normalMapVertices.set(terrainVertices);
481
+ normalMapVerticesHigh.set(terrainVerticesHigh);
482
+ normalMapVerticesLow.set(terrainVerticesLow);
483
+
484
+ for (let k = 0; k < gsgs; k++) {
485
+
486
+ var j = k % gs,
487
+ i = ~~(k / gs);
488
+
489
+ if (i !== tgs && j !== tgs) {
490
+ var v0ind = k * 3,
491
+ v1ind = v0ind + 3,
492
+ v2ind = v0ind + gs * 3,
493
+ v3ind = v2ind + 3;
494
+
495
+
496
+ var v0 = new Vec3(terrainVertices[v0ind], terrainVertices[v0ind + 1], terrainVertices[v0ind + 2]),
497
+ v1 = new Vec3(terrainVertices[v1ind], terrainVertices[v1ind + 1], terrainVertices[v1ind + 2]),
498
+ v2 = new Vec3(terrainVertices[v2ind], terrainVertices[v2ind + 1], terrainVertices[v2ind + 2]),
499
+ v3 = new Vec3(terrainVertices[v3ind], terrainVertices[v3ind + 1], terrainVertices[v3ind + 2]);
500
+
501
+ var e10 = v1.sub(v0).normalize(),
502
+ e20 = v2.sub(v0).normalize(),
503
+ e30 = v3.sub(v0).normalize();
504
+
505
+ var sw = e20.cross(e30).normalize();
506
+ var ne = e30.cross(e10).normalize();
507
+ var n0 = ne.add(sw).normalize();
508
+
509
+ normalMapNormals[v0ind] += n0.x;
510
+ normalMapNormals[v0ind + 1] += n0.y;
511
+ normalMapNormals[v0ind + 2] += n0.z;
512
+
513
+ normalMapNormals[v1ind] += ne.x;
514
+ normalMapNormals[v1ind + 1] += ne.y;
515
+ normalMapNormals[v1ind + 2] += ne.z;
516
+
517
+ normalMapNormals[v2ind] += sw.x;
518
+ normalMapNormals[v2ind + 1] += sw.y;
519
+ normalMapNormals[v2ind + 2] += sw.z;
520
+
521
+ normalMapNormals[v3ind] += n0.x;
522
+ normalMapNormals[v3ind + 1] += n0.y;
523
+ normalMapNormals[v3ind + 2] += n0.z;
524
+ }
525
+ }
526
+ }
527
+
528
+ self.postMessage({
529
+ id: id,
530
+ normalMapNormals: normalMapNormals,
531
+ normalMapVertices: normalMapVertices,
532
+ normalMapVerticesHigh: normalMapVerticesHigh,
533
+ normalMapVerticesLow: normalMapVerticesLow,
534
+ terrainVertices: terrainVertices,
535
+ terrainVerticesHigh: terrainVerticesHigh,
536
+ terrainVerticesLow: terrainVerticesLow,
537
+ noDataVertices: noDataVertices,
538
+ //bounds: [xmin, xmax, ymin, ymax, zmin, zmax]
539
+ bounds: [xmin, ymin, zmin, xmax, ymax, zmax]
540
+ }, [
541
+ normalMapNormals.buffer,
542
+ normalMapVertices.buffer,
543
+ normalMapVerticesHigh.buffer,
544
+ normalMapVerticesLow.buffer,
545
+ terrainVertices.buffer,
546
+ terrainVerticesHigh.buffer,
547
+ terrainVerticesLow.buffer,
548
+ noDataVertices.buffer
549
+ ]);
550
+ }`;
551
+ export { TerrainWorker };
@@ -0,0 +1,113 @@
1
+ import { ImageCanvas } from "../ImageCanvas";
2
+ import { Rectangle } from "../Rectangle";
3
+ import { ImagesCacheManager, HTMLImageElementExt, ImagesCacheManagerCallback } from "./ImagesCacheManager";
4
+ import { Handler, WebGLTextureExt } from "../webgl/Handler";
5
+ /**
6
+ * Texture atlas stores images in one texture. Each image has its own
7
+ * atlas texture coordinates.
8
+ * @class
9
+ * @param {number} [width=1024] - Texture atlas width, if it hasn't 1024 default.
10
+ * @param {number} [height=1024] - Texture atlas height, if it hasn't 1024 default.
11
+ */
12
+ declare class TextureAtlas {
13
+ /**
14
+ * Atlas nodes where input images store. It can be accessed by image.__nodeIndex.
15
+ * @public
16
+ * @type {Map<number, TextureAtlasNode>}
17
+ */
18
+ nodes: Map<number, TextureAtlasNode>;
19
+ /**
20
+ * Created gl texture.
21
+ * @public
22
+ */
23
+ texture: WebGLTextureExt | null;
24
+ /**
25
+ * Atlas canvas.
26
+ * @public
27
+ * @type {ImageCanvas}
28
+ */
29
+ canvas: ImageCanvas;
30
+ borderSize: number;
31
+ protected _handler: Handler | null;
32
+ protected _images: HTMLImageElementExt[];
33
+ protected _btree: TextureAtlasNode | null;
34
+ protected _imagesCacheManager: ImagesCacheManager;
35
+ constructor(width?: number, height?: number);
36
+ /**
37
+ * Returns atlas javascript image object.
38
+ * @public
39
+ * @returns {HTMLImageElement} -
40
+ */
41
+ getImage(): HTMLImageElement;
42
+ /**
43
+ * Returns canvas object.
44
+ * @public
45
+ * @returns {HTMLCanvasElement} -
46
+ */
47
+ getCanvas(): HTMLCanvasElement;
48
+ /**
49
+ * Clear atlas with black.
50
+ * @public
51
+ */
52
+ clearCanvas(): void;
53
+ /**
54
+ * Sets openglobus gl handler that creates gl texture.
55
+ * @public
56
+ * @param {Handler} handler - WebGL handler.
57
+ */
58
+ assignHandler(handler: Handler): void;
59
+ /**
60
+ * Returns image diagonal size.
61
+ * @param {HTMLImageElementExt} image - Image object.
62
+ * @returns {number} -
63
+ */
64
+ getDiagonal(image: HTMLImageElementExt): number;
65
+ /**
66
+ * Adds image to the atlas and returns created node with texture coordinates of the stored image.
67
+ * @public
68
+ * @param {HTMLImageElementExt} image - Input javascript image object.
69
+ * @param {boolean} [fastInsert] - If it's true atlas doesn't restore all images again
70
+ * and store image in the current atlas scheme.
71
+ * @returns {TextureAtlasNode | undefined} -
72
+ */
73
+ addImage(image: HTMLImageElementExt, fastInsert?: boolean): TextureAtlasNode | undefined;
74
+ protected _completeNode(nodes: Map<number, TextureAtlasNode>, node?: TextureAtlasNode | null): void;
75
+ /**
76
+ * Main atlas making function.
77
+ * @protected
78
+ * @param {boolean} [fastInsert] - If it's true atlas doesn't restore all images again
79
+ * and store image in the current atlas scheme.
80
+ */
81
+ protected _makeAtlas(fastInsert?: boolean): void;
82
+ get(key: number): TextureAtlasNode | undefined;
83
+ set(key: number, value: TextureAtlasNode): void;
84
+ /**
85
+ * Creates atlas gl texture.
86
+ * @public
87
+ */
88
+ createTexture(img?: HTMLImageElement | null, internalFormat?: number): void;
89
+ /**
90
+ * Asynchronous function that loads and creates image to the image cache, and call success callback when it's done.
91
+ * @public
92
+ * @param {string} src - Image object src string.
93
+ * @param {ImagesCacheManagerCallback} success - The callback that handles the image loads done.
94
+ */
95
+ loadImage(src: string, success: ImagesCacheManagerCallback): void;
96
+ getImageTexCoordinates(img: HTMLImageElementExt): number[] | undefined;
97
+ }
98
+ /**
99
+ * Atlas binary tree node.
100
+ * @class
101
+ * @param {Rectangle} rect - Node image rectangle.
102
+ * @param {number[]} texCoords - Node image rectangle.
103
+ */
104
+ declare class TextureAtlasNode {
105
+ childNodes: TextureAtlasNode[] | null;
106
+ image: HTMLImageElementExt | null;
107
+ rect: Rectangle;
108
+ texCoords: number[];
109
+ atlas: TextureAtlas | null;
110
+ constructor(rect?: Rectangle, texCoords?: number[]);
111
+ insert(img: HTMLImageElementExt): TextureAtlasNode | undefined;
112
+ }
113
+ export { TextureAtlas, TextureAtlasNode };