@openglobus/og 0.18.0 → 0.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/README.md +8 -8
  2. package/lib/@openglobus/og.esm.js +2 -0
  3. package/lib/@openglobus/og.esm.js.map +1 -0
  4. package/lib/@openglobus/og.umd.js +2 -0
  5. package/lib/@openglobus/og.umd.js.map +1 -0
  6. package/lib/js/Clock.d.ts +106 -0
  7. package/{src/Clock.ts → lib/js/Clock.js} +31 -126
  8. package/lib/js/Deferred.d.ts +6 -0
  9. package/lib/js/Deferred.js +13 -0
  10. package/lib/js/Events.d.ts +90 -0
  11. package/{src/Events.ts → lib/js/Events.js} +29 -84
  12. package/lib/js/Extent.d.ts +145 -0
  13. package/{src/Extent.ts → lib/js/Extent.js} +74 -120
  14. package/lib/js/Globe.d.ts +132 -0
  15. package/{src/Globe.ts → lib/js/Globe.js} +61 -159
  16. package/lib/js/ImageCanvas.d.ts +128 -0
  17. package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
  18. package/lib/js/Lock.d.ts +15 -0
  19. package/{src/Lock.ts → lib/js/Lock.js} +7 -21
  20. package/lib/js/LonLat.d.ts +128 -0
  21. package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
  22. package/lib/js/Object3d.d.ts +49 -0
  23. package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
  24. package/lib/js/Popup.d.ts +46 -0
  25. package/{src/Popup.ts → lib/js/Popup.js} +42 -110
  26. package/lib/js/QueueArray.d.ts +16 -0
  27. package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
  28. package/lib/js/Rectangle.d.ts +76 -0
  29. package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
  30. package/lib/js/Stack.d.ts +20 -0
  31. package/{src/Stack.ts → lib/js/Stack.js} +13 -29
  32. package/lib/js/astro/astro.d.ts +39 -0
  33. package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
  34. package/lib/js/astro/earth.d.ts +8 -0
  35. package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
  36. package/lib/js/astro/jd.d.ts +234 -0
  37. package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
  38. package/lib/js/astro/orbit.d.ts +5 -0
  39. package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
  40. package/lib/js/astro/rotation.d.ts +2 -0
  41. package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
  42. package/lib/js/bv/Box.d.ts +32 -0
  43. package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
  44. package/lib/js/bv/Sphere.d.ts +37 -0
  45. package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
  46. package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
  47. package/lib/js/bv/index.js +3 -0
  48. package/lib/js/camera/Camera.d.ts +314 -0
  49. package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
  50. package/lib/js/camera/Frustum.d.ts +139 -0
  51. package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
  52. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  53. package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
  54. package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
  55. package/lib/js/camera/index.js +3 -0
  56. package/lib/js/cons.d.ts +40 -0
  57. package/{src/cons.ts → lib/js/cons.js} +10 -22
  58. package/lib/js/control/Atmosphere.d.ts +16 -0
  59. package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
  60. package/lib/js/control/CompassButton.d.ts +16 -0
  61. package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
  62. package/lib/js/control/Control.d.ts +100 -0
  63. package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
  64. package/lib/js/control/DebugInfo.d.ts +25 -0
  65. package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
  66. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  67. package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
  68. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  69. package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
  70. package/lib/js/control/EarthNavigation.d.ts +50 -0
  71. package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
  72. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  73. package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
  74. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  75. package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
  76. package/lib/js/control/LayerAnimation.d.ts +71 -0
  77. package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
  78. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  79. package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
  80. package/lib/js/control/Lighting.d.ts +49 -0
  81. package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
  82. package/lib/js/control/MouseNavigation.d.ts +62 -0
  83. package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
  84. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  85. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  86. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  87. package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
  88. package/lib/js/control/ScaleControl.d.ts +24 -0
  89. package/lib/js/control/ScaleControl.js +91 -0
  90. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  91. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  92. package/lib/js/control/ShowFps.d.ts +9 -0
  93. package/lib/js/control/ShowFps.js +20 -0
  94. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  95. package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
  96. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  97. package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
  98. package/lib/js/control/Sun.d.ts +33 -0
  99. package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
  100. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  101. package/lib/js/control/ToggleWireframe.js +28 -0
  102. package/lib/js/control/TouchNavigation.d.ts +52 -0
  103. package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
  104. package/lib/js/control/ZoomControl.d.ts +27 -0
  105. package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
  106. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  107. package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
  108. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  109. package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
  110. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  111. package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
  112. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  113. package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
  114. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  115. package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
  116. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  117. package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
  118. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  119. package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
  120. package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
  121. package/lib/js/control/index.js +28 -0
  122. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  123. package/lib/js/control/ruler/Ruler.js +23 -0
  124. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  125. package/lib/js/control/ruler/RulerScene.js +324 -0
  126. package/lib/js/control/selection/Selection.d.ts +55 -0
  127. package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
  128. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  129. package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
  130. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  131. package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
  132. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  133. package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
  134. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  135. package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
  136. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  137. package/lib/js/control/timeline/timelineUtils.js +112 -0
  138. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  139. package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
  140. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  141. package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
  142. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  143. package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
  144. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  145. package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +85 -267
  146. package/lib/js/ellipsoid/index.d.ts +3 -0
  147. package/lib/js/ellipsoid/index.js +3 -0
  148. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  149. package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
  150. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  151. package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
  152. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  153. package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
  154. package/lib/js/entity/Billboard.d.ts +113 -0
  155. package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
  156. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  157. package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
  158. package/lib/js/entity/Entity.d.ts +354 -0
  159. package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +102 -374
  160. package/lib/js/entity/EntityCollection.d.ts +363 -0
  161. package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +57 -359
  162. package/lib/js/entity/GeoObject.d.ts +138 -0
  163. package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
  164. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  165. package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
  166. package/lib/js/entity/Geometry.d.ts +111 -0
  167. package/lib/js/entity/Geometry.js +283 -0
  168. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  169. package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
  170. package/lib/js/entity/Label.d.ts +207 -0
  171. package/{src/entity/Label.ts → lib/js/entity/Label.js} +63 -165
  172. package/lib/js/entity/LabelHandler.d.ts +65 -0
  173. package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
  174. package/lib/js/entity/LabelWorker.d.ts +15 -0
  175. package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
  176. package/lib/js/entity/PointCloud.d.ts +179 -0
  177. package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
  178. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  179. package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
  180. package/lib/js/entity/Polyline.d.ts +337 -0
  181. package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
  182. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  183. package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
  184. package/lib/js/entity/Ray.d.ts +133 -0
  185. package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
  186. package/lib/js/entity/RayHandler.d.ts +70 -0
  187. package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
  188. package/lib/js/entity/Strip.d.ts +127 -0
  189. package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
  190. package/lib/js/entity/StripHandler.d.ts +42 -0
  191. package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
  192. package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
  193. package/lib/js/entity/index.js +11 -0
  194. package/lib/js/index.d.ts +33 -0
  195. package/lib/js/index.js +33 -0
  196. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  197. package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
  198. package/lib/js/input/MouseHandler.d.ts +16 -0
  199. package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
  200. package/lib/js/input/TouchHandler.d.ts +11 -0
  201. package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
  202. package/lib/js/input/input.d.ts +3 -0
  203. package/{src/input/input.ts → lib/js/input/input.js} +1 -1
  204. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  205. package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
  206. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  207. package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
  208. package/lib/js/layer/GeoImage.d.ts +61 -0
  209. package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
  210. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  211. package/lib/js/layer/GeoTexture2d.js +37 -0
  212. package/lib/js/layer/GeoVideo.d.ts +68 -0
  213. package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
  214. package/lib/js/layer/KML.d.ts +72 -0
  215. package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
  216. package/lib/js/layer/Layer.d.ts +401 -0
  217. package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
  218. package/lib/js/layer/Material.d.ts +34 -0
  219. package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
  220. package/lib/js/layer/Vector.d.ts +243 -0
  221. package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +155 -426
  222. package/lib/js/layer/WMS.d.ts +75 -0
  223. package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
  224. package/lib/js/layer/XYZ.d.ts +149 -0
  225. package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
  226. package/lib/js/layer/index.d.ts +11 -0
  227. package/lib/js/layer/index.js +11 -0
  228. package/lib/js/light/LightSource.d.ts +174 -0
  229. package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
  230. package/lib/js/math/Line2.d.ts +11 -0
  231. package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
  232. package/lib/js/math/Line3.d.ts +28 -0
  233. package/lib/js/math/Line3.js +85 -0
  234. package/lib/js/math/Mat3.d.ts +77 -0
  235. package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
  236. package/lib/js/math/Mat4.d.ts +195 -0
  237. package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
  238. package/lib/js/math/Plane.d.ts +20 -0
  239. package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
  240. package/lib/js/math/Quat.d.ts +373 -0
  241. package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
  242. package/lib/js/math/Ray.d.ts +76 -0
  243. package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
  244. package/lib/js/math/Vec2.d.ts +310 -0
  245. package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
  246. package/lib/js/math/Vec3.d.ts +472 -0
  247. package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
  248. package/lib/js/math/Vec4.d.ts +163 -0
  249. package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
  250. package/lib/js/math/coder.d.ts +51 -0
  251. package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
  252. package/lib/js/math/index.d.ts +11 -0
  253. package/lib/js/math/index.js +11 -0
  254. package/lib/js/math.d.ts +266 -0
  255. package/{src/math.ts → lib/js/math.js} +37 -85
  256. package/lib/js/mercator.d.ts +92 -0
  257. package/{src/mercator.ts → lib/js/mercator.js} +13 -37
  258. package/lib/js/proj/EPSG3857.d.ts +9 -0
  259. package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
  260. package/lib/js/proj/EPSG4326.d.ts +9 -0
  261. package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
  262. package/lib/js/proj/Proj.d.ts +43 -0
  263. package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
  264. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  265. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  266. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  267. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  268. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  269. package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
  270. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  271. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  272. package/lib/js/quadTree/Node.d.ts +61 -0
  273. package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
  274. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  275. package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
  276. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  277. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  278. package/lib/js/quadTree/index.d.ts +12 -0
  279. package/lib/js/quadTree/index.js +12 -0
  280. package/lib/js/quadTree/quadTree.d.ts +40 -0
  281. package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
  282. package/lib/js/renderer/Renderer.d.ts +320 -0
  283. package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +265 -622
  284. package/lib/js/renderer/RendererEvents.d.ts +239 -0
  285. package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +158 -472
  286. package/lib/js/scene/Axes.d.ts +12 -0
  287. package/lib/js/scene/Axes.js +59 -0
  288. package/lib/js/scene/BaseNode.d.ts +61 -0
  289. package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
  290. package/lib/js/scene/Planet.d.ts +623 -0
  291. package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +257 -937
  292. package/lib/js/scene/RenderNode.d.ts +150 -0
  293. package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
  294. package/lib/js/scene/SkyBox.d.ts +13 -0
  295. package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
  296. package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
  297. package/lib/js/scene/index.js +5 -0
  298. package/lib/js/segment/Segment.d.ts +278 -0
  299. package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
  300. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  301. package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
  302. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  303. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  304. package/lib/js/segment/Slice.d.ts +13 -0
  305. package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
  306. package/lib/js/segment/segmentHelper.d.ts +18 -0
  307. package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
  308. package/lib/js/shaders/atmos.d.ts +4 -0
  309. package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
  310. package/lib/js/shaders/billboard.d.ts +3 -0
  311. package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
  312. package/lib/js/shaders/bloom.d.ts +2 -0
  313. package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
  314. package/lib/js/shaders/blur.d.ts +3 -0
  315. package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
  316. package/lib/js/shaders/depth.d.ts +2 -0
  317. package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
  318. package/lib/js/shaders/drawnode.d.ts +8 -0
  319. package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
  320. package/lib/js/shaders/geoObject.d.ts +3 -0
  321. package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
  322. package/lib/js/shaders/label.d.ts +4 -0
  323. package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
  324. package/lib/js/shaders/lumFilter.d.ts +2 -0
  325. package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
  326. package/lib/js/shaders/pickingMask.d.ts +2 -0
  327. package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
  328. package/lib/js/shaders/pointCloud.d.ts +2 -0
  329. package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
  330. package/lib/js/shaders/polyline.d.ts +3 -0
  331. package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
  332. package/lib/js/shaders/ray.d.ts +2 -0
  333. package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
  334. package/lib/js/shaders/screenFrame.d.ts +2 -0
  335. package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
  336. package/lib/js/shaders/skybox.d.ts +2 -0
  337. package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
  338. package/lib/js/shaders/toneMapping.d.ts +2 -0
  339. package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
  340. package/lib/js/shaders/utils.d.ts +1 -0
  341. package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
  342. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  343. package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
  344. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  345. package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
  346. package/lib/js/terrain/Geoid.d.ts +33 -0
  347. package/lib/js/terrain/Geoid.js +191 -0
  348. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  349. package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +84 -241
  350. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  351. package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
  352. package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
  353. package/lib/js/terrain/index.js +5 -0
  354. package/lib/js/ui/Button.d.ts +32 -0
  355. package/lib/js/ui/Button.js +78 -0
  356. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  357. package/lib/js/ui/ButtonGroup.js +41 -0
  358. package/lib/js/ui/Dialog.d.ts +55 -0
  359. package/lib/js/ui/Dialog.js +173 -0
  360. package/lib/js/ui/Slider.d.ts +38 -0
  361. package/lib/js/ui/Slider.js +129 -0
  362. package/lib/js/ui/ToggleButton.d.ts +20 -0
  363. package/lib/js/ui/ToggleButton.js +42 -0
  364. package/lib/js/ui/View.d.ts +37 -0
  365. package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
  366. package/lib/js/ui/icons.d.ts +1 -0
  367. package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
  368. package/lib/js/utils/BaseWorker.d.ts +14 -0
  369. package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
  370. package/lib/js/utils/FontAtlas.d.ts +82 -0
  371. package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +46 -182
  372. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  373. package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
  374. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  375. package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
  376. package/lib/js/utils/Loader.d.ts +63 -0
  377. package/lib/js/utils/Loader.js +156 -0
  378. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  379. package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
  380. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  381. package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
  382. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  383. package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
  384. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  385. package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
  386. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  387. package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
  388. package/lib/js/utils/colorTable.d.ts +3 -0
  389. package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
  390. package/lib/js/utils/earcut.d.ts +7 -0
  391. package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
  392. package/lib/js/utils/objParser.d.ts +24 -0
  393. package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
  394. package/lib/js/utils/shared.d.ts +267 -0
  395. package/{src/utils/shared.ts → lib/js/utils/shared.js} +185 -342
  396. package/lib/js/utils/units.d.ts +16 -0
  397. package/lib/js/utils/units.js +61 -0
  398. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  399. package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
  400. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  401. package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
  402. package/lib/js/webgl/Handler.d.ts +473 -0
  403. package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
  404. package/lib/js/webgl/Multisample.d.ts +27 -0
  405. package/lib/js/webgl/Multisample.js +77 -0
  406. package/lib/js/webgl/Program.d.ts +159 -0
  407. package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
  408. package/lib/js/webgl/ProgramController.d.ts +86 -0
  409. package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
  410. package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
  411. package/lib/js/webgl/index.js +6 -0
  412. package/lib/js/webgl/types.d.ts +9 -0
  413. package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
  414. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  415. package/lib/js/webgl/variableHandlers.js +78 -0
  416. package/package.json +23 -34
  417. package/dist/@openglobus/og.esm.js +0 -2
  418. package/dist/@openglobus/og.esm.js.map +0 -1
  419. package/dist/@openglobus/og.umd.js +0 -2
  420. package/dist/@openglobus/og.umd.js.map +0 -1
  421. package/src/Deferred.ts +0 -17
  422. package/src/control/MouseWheelZoomControl.ts +0 -269
  423. package/src/control/ScaleControl.ts +0 -131
  424. package/src/control/SegmentBoundVisualization.ts +0 -50
  425. package/src/control/ShowFps.ts +0 -28
  426. package/src/control/ToggleWireframe.ts +0 -35
  427. package/src/control/ruler/Ruler.ts +0 -35
  428. package/src/control/ruler/RulerScene.ts +0 -437
  429. package/src/control/timeline/timelineUtils.ts +0 -133
  430. package/src/ellipsoid/index.ts +0 -4
  431. package/src/entity/Geometry.ts +0 -486
  432. package/src/index.ts +0 -173
  433. package/src/layer/GeoTexture2d.ts +0 -56
  434. package/src/layer/index.ts +0 -12
  435. package/src/math/Line3.ts +0 -162
  436. package/src/math/index.ts +0 -26
  437. package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
  438. package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
  439. package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
  440. package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
  441. package/src/quadTree/index.ts +0 -14
  442. package/src/scene/Axes.ts +0 -78
  443. package/src/segment/SegmentLonLatWgs84.ts +0 -33
  444. package/src/terrain/Geoid.ts +0 -273
  445. package/src/ui/Button.ts +0 -121
  446. package/src/ui/ButtonGroup.ts +0 -63
  447. package/src/ui/Dialog.ts +0 -244
  448. package/src/ui/Slider.ts +0 -188
  449. package/src/ui/ToggleButton.ts +0 -68
  450. package/src/utils/Loader.ts +0 -247
  451. package/src/utils/units.ts +0 -78
  452. package/src/webgl/Multisample.ts +0 -153
  453. package/src/webgl/variableHandlers.ts +0 -114
  454. /package/{dist → lib}/@openglobus/og.css +0 -0
  455. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
  456. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
  457. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  458. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
  459. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
  460. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  461. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
  462. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
  463. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  464. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
  465. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
  466. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  467. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
  468. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
  469. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  470. /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
  471. /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
  472. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
  473. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
  474. /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
  475. /package/{dist → lib}/@openglobus/res/night.png +0 -0
  476. /package/{dist → lib}/@openglobus/res/spec.png +0 -0
@@ -1,31 +1,17 @@
1
1
  /**
2
2
  * @module og/segment/SegmentHelper
3
3
  */
4
-
5
- import {N, W, S, E} from '../quadTree/quadTree';
6
-
7
- type IndexTypeArray = Uint32Array;
8
- type IndexesTable = [IndexTypeArray[][], IndexTypeArray[][], IndexTypeArray[][], IndexTypeArray[][]];
9
-
10
-
11
- function NewIndexesTypedArray(arr: number[]): IndexTypeArray {
4
+ import { N, W, S, E } from '../quadTree/quadTree';
5
+ function NewIndexesTypedArray(arr) {
12
6
  return new Uint32Array(arr);
13
7
  }
14
-
15
- function NewIndexesTypedArrayEmpty(size: number): IndexTypeArray {
8
+ function NewIndexesTypedArrayEmpty(size) {
16
9
  return new Uint32Array(size);
17
10
  }
18
-
19
- function createCenterBodyIndexes(size: number): IndexTypeArray {
20
-
11
+ function createCenterBodyIndexes(size) {
21
12
  let indexes = [];
22
-
23
- let i0 = 1,
24
- j0 = 1;
25
-
26
- let i1 = 1,
27
- j1 = 1;
28
-
13
+ let i0 = 1, j0 = 1;
14
+ let i1 = 1, j1 = 1;
29
15
  let ind1 = 0, ind2 = 0, nr = 0;
30
16
  for (let i = i0; i < size - 1 - i1; i++) {
31
17
  for (let j = j0; j < size - j1; j++) {
@@ -37,11 +23,9 @@ function createCenterBodyIndexes(size: number): IndexTypeArray {
37
23
  indexes.push(ind2, nr + j0);
38
24
  }
39
25
  indexes.push(indexes[indexes.length - 1], size * size - size);
40
-
41
26
  return NewIndexesTypedArray(indexes);
42
27
  }
43
-
44
- function createWestNeighborSkirt(size: number, deltaGr: number): IndexTypeArray {
28
+ function createWestNeighborSkirt(size, deltaGr) {
45
29
  let indexes = [];
46
30
  const grCount = (size - 1) / deltaGr;
47
31
  const b = size * size - size;
@@ -50,20 +34,16 @@ function createWestNeighborSkirt(size: number, deltaGr: number): IndexTypeArray
50
34
  if (i % grCount === 0) {
51
35
  k = i;
52
36
  }
53
- let rind = b - size * i - size + 1,
54
- lind = b - size * k;
37
+ let rind = b - size * i - size + 1, lind = b - size * k;
55
38
  indexes.push(lind, rind);
56
39
  }
57
-
58
40
  if (deltaGr === (size - 1)) {
59
41
  indexes.push(size);
60
42
  indexes.push(0);
61
43
  }
62
-
63
44
  return NewIndexesTypedArray(indexes);
64
45
  }
65
-
66
- function createNorthNeighborSkirt(size: number, deltaGr: number): IndexTypeArray {
46
+ function createNorthNeighborSkirt(size, deltaGr) {
67
47
  let indexes = [];
68
48
  const grCount = (size - 1) / deltaGr;
69
49
  let k = 0;
@@ -71,20 +51,16 @@ function createNorthNeighborSkirt(size: number, deltaGr: number): IndexTypeArray
71
51
  if (i % grCount === 0) {
72
52
  k = i;
73
53
  }
74
- let rind = size + i + 1,
75
- lind = k;
54
+ let rind = size + i + 1, lind = k;
76
55
  indexes.push(lind, rind);
77
56
  }
78
-
79
57
  if (deltaGr === (size - 1)) {
80
58
  indexes.push(size - 2);
81
59
  indexes.push(size - 1);
82
60
  }
83
-
84
61
  return NewIndexesTypedArray(indexes);
85
62
  }
86
-
87
- function createEastNeighborSkirt(size: number, deltaGr: number): IndexTypeArray {
63
+ function createEastNeighborSkirt(size, deltaGr) {
88
64
  let indexes = [];
89
65
  const grCount = (size - 1) / deltaGr;
90
66
  let k = 0;
@@ -92,20 +68,16 @@ function createEastNeighborSkirt(size: number, deltaGr: number): IndexTypeArray
92
68
  if (i % grCount === 0) {
93
69
  k = i;
94
70
  }
95
- let rind = size * (i + 1) + size - 2,
96
- lind = size + size * k - 1;
71
+ let rind = size * (i + 1) + size - 2, lind = size + size * k - 1;
97
72
  indexes.push(lind, rind);
98
73
  }
99
-
100
74
  if (deltaGr === (size - 1)) {
101
75
  indexes.push(size * (size - 1) - 1);
102
76
  indexes.push(size * size - 1);
103
77
  }
104
-
105
78
  return NewIndexesTypedArray(indexes);
106
79
  }
107
-
108
- function createSouthNeighborSkirt(size: number, deltaGr: number): IndexTypeArray {
80
+ function createSouthNeighborSkirt(size, deltaGr) {
109
81
  let indexes = [];
110
82
  const grCount = (size - 1) / deltaGr;
111
83
  let k = 0;
@@ -115,44 +87,34 @@ function createSouthNeighborSkirt(size: number, deltaGr: number): IndexTypeArray
115
87
  if (i % grCount === 0) {
116
88
  k = i;
117
89
  }
118
- let rind = rb - i,
119
- lind = lb - k;
90
+ let rind = rb - i, lind = lb - k;
120
91
  indexes.push(lind, rind);
121
92
  }
122
-
123
93
  if (deltaGr === (size - 1)) {
124
94
  indexes.push(size * size - size + 1);
125
95
  }
126
96
  indexes.push(size * size - size);
127
-
128
97
  return NewIndexesTypedArray(indexes);
129
98
  }
130
-
131
- function initIndexesBodySkirts(pow: number): IndexesTable {
132
- let table: IndexesTable = [[], [], [], []];
133
-
99
+ function initIndexesBodySkirts(pow) {
100
+ let table = [[], [], [], []];
134
101
  for (let i = 0; i <= pow; i++) {
135
- let d = Math.pow(2, i),
136
- d1 = d + 1;
137
-
102
+ let d = Math.pow(2, i), d1 = d + 1;
138
103
  table[N][i] = [];
139
104
  table[W][i] = [];
140
105
  table[S][i] = [];
141
106
  table[E][i] = [];
142
-
143
107
  for (let j = 0; j <= pow; j++) {
144
108
  let dd = Math.pow(2, j);
145
109
  table[W][i][j] = createWestNeighborSkirt(d1, dd);
146
110
  table[N][i][j] = createNorthNeighborSkirt(d1, dd);
147
111
  table[E][i][j] = createEastNeighborSkirt(d1, dd);
148
112
  table[S][i][j] = createSouthNeighborSkirt(d1, dd);
149
-
150
113
  }
151
114
  }
152
115
  return table;
153
116
  }
154
-
155
- function initIndexBodiesTable(pow: number): IndexTypeArray[] {
117
+ function initIndexBodiesTable(pow) {
156
118
  let table = [];
157
119
  for (let i = 0; i <= pow; i++) {
158
120
  const d = Math.pow(2, i);
@@ -160,8 +122,7 @@ function initIndexBodiesTable(pow: number): IndexTypeArray[] {
160
122
  }
161
123
  return table;
162
124
  }
163
-
164
- function createTextureCoords(size: number): Uint16Array {
125
+ function createTextureCoords(size) {
165
126
  let texCoords = new Uint16Array((size + 1) * (size + 1) * 2);
166
127
  let k = 0;
167
128
  for (let i = 0; i <= size; i++) {
@@ -172,56 +133,39 @@ function createTextureCoords(size: number): Uint16Array {
172
133
  }
173
134
  return texCoords;
174
135
  }
175
-
176
136
  class SegmentHelper {
177
-
178
- protected _maxGridSize: number;
179
- public centerIndexesTable: IndexTypeArray[];
180
- public skirtsIndexesTable: IndexesTable;
181
-
182
- constructor(maxGridSize: number = 0) {
137
+ constructor(maxGridSize = 0) {
183
138
  this._maxGridSize = maxGridSize;
184
- this.centerIndexesTable = initIndexBodiesTable(this._maxGridSize)
139
+ this.centerIndexesTable = initIndexBodiesTable(this._maxGridSize);
185
140
  this.skirtsIndexesTable = initIndexesBodySkirts(this._maxGridSize);
186
141
  }
187
-
188
- public get maxGridSize(): number {
142
+ get maxGridSize() {
189
143
  return this._maxGridSize;
190
144
  }
191
-
192
- public init() {
145
+ init() {
193
146
  this.centerIndexesTable = initIndexBodiesTable(this._maxGridSize);
194
147
  this.skirtsIndexesTable = initIndexesBodySkirts(this._maxGridSize);
195
148
  }
196
-
197
- public setMaxGridSize(gridSize: number) {
149
+ setMaxGridSize(gridSize) {
198
150
  this._maxGridSize = gridSize;
199
151
  this.init();
200
152
  }
201
-
202
- public createSegmentIndexes(size: number, sidesSizes: [number, number, number, number]) {
153
+ createSegmentIndexes(size, sidesSizes) {
203
154
  if (size) {
204
- let c = this.centerIndexesTable[size],
205
- w = this.skirtsIndexesTable[W][size][sidesSizes[W]],
206
- n = this.skirtsIndexesTable[N][size][sidesSizes[N]],
207
- e = this.skirtsIndexesTable[E][size][sidesSizes[E]],
208
- s = this.skirtsIndexesTable[S][size][sidesSizes[S]];
209
-
155
+ let c = this.centerIndexesTable[size], w = this.skirtsIndexesTable[W][size][sidesSizes[W]], n = this.skirtsIndexesTable[N][size][sidesSizes[N]], e = this.skirtsIndexesTable[E][size][sidesSizes[E]], s = this.skirtsIndexesTable[S][size][sidesSizes[S]];
210
156
  let indexes = NewIndexesTypedArrayEmpty(c.length + w.length + n.length + e.length + s.length);
211
-
212
157
  indexes.set(c, 0);
213
158
  indexes.set(w, c.length);
214
159
  indexes.set(n, c.length + w.length);
215
160
  indexes.set(e, c.length + w.length + n.length);
216
161
  indexes.set(s, c.length + w.length + n.length + e.length);
217
-
218
162
  return indexes;
219
- } else {
163
+ }
164
+ else {
220
165
  return NewIndexesTypedArray([0, 2, 1, 3]);
221
166
  }
222
167
  }
223
-
224
- public initTextureCoordsTable(pow: number): Uint16Array[] {
168
+ initTextureCoordsTable(pow) {
225
169
  let table = [];
226
170
  for (let i = 0; i <= pow; i++) {
227
171
  const d = Math.pow(2, i);
@@ -230,9 +174,7 @@ class SegmentHelper {
230
174
  return table;
231
175
  }
232
176
  }
233
-
234
177
  let instance = new SegmentHelper();
235
-
236
178
  export function getInstance() {
237
179
  return instance;
238
- }
180
+ }
@@ -0,0 +1,4 @@
1
+ import { Program } from '../webgl/Program';
2
+ export declare const COMMON = "\n \n \n float getLerpValue(in float min, in float max, in float between)\n {\n return (clamp(between, min, max) - min) / (max - min);\n }\n \n vec3 aces(vec3 color) \n {\n float a = 2.51;\n float b = 0.03;\n float c = 2.43;\n float d = 0.59;\n float e = 0.14;\n return clamp((color * (a * color + b)) / (color * (c * color + d ) + e), 0.0, 1.0);\n }\n \n bool intersectSphere(vec3 rayOrigin, vec3 rayDirection, float radius, inout float t1, inout float t2) \n {\n float b = dot(rayDirection, rayOrigin);\n float c = dot(rayOrigin, rayOrigin) - radius * radius;\n float d = b * b - c;\n if (d < 0.0) {\n return false;\n }\n t1 = -b - sqrt(d);\n t2 = -b + sqrt(d);\n return true;\n }\n \n bool intersectSphere(vec3 rayOrigin, vec3 rayDirection, float radius, inout float t) \n {\n float b = dot(rayDirection, rayOrigin);\n float c = dot(rayOrigin, rayOrigin) - radius * radius;\n float d = b * b - c;\n if (d < 0.0) {\n return false;\n }\n t = -b - sqrt(d);\n return true;\n }\n \n bool intersectEllipsoid( in vec3 ro, in vec3 rd, in vec3 ra, inout float t )\n {\n vec3 ocn = ro/ra;\n vec3 rdn = rd/ra;\n float a = dot( rdn, rdn );\n float b = dot( ocn, rdn );\n float c = dot( ocn, ocn );\n float h = b*b - a*(c-1.0);\n \n if (h < 0.0) \n { \n return false; \n }\n \n t = (-b-sqrt(h))/a;\n \n return true;\n }\n \n bool intersectEllipsoid( in vec3 ro, in vec3 rd, in vec3 ra, inout float t1, inout float t2)\n {\n vec3 ocn = ro/ra;\n vec3 rdn = rd/ra;\n float a = dot( rdn, rdn );\n float b = dot( ocn, rdn );\n float c = dot( ocn, ocn );\n float h = b*b - a*(c-1.0);\n \n if (h < 0.0) \n { \n return false; \n }\n \n h = sqrt(h);\n t1 = (-b-h)/a;\n t2 = (-b+h)/a;\n \n return true;\n }\n \n vec3 normalEllipsoid( in vec3 pos, in vec3 ra )\n {\n return normalize( pos/(ra*ra) );\n }\n\n \n #define PI 3.1415926538\n #define ATMOS_HEIGHT 100000.0\n #define RAYLEIGH_SCALE 0.08\n #define MIE_SCALE 0.012\n \n #define SAMPLE_COUNT 16\n #define SQRT_SAMPLE_COUNT 4\n \n const float GROUND_ALBEDO = 0.05 / PI;\n\n // Sphere\n const float BOTTOM_RADIUS = 6356752.3142451793;\n const float TOP_RADIUS = 6356752.3142451793 + ATMOS_HEIGHT;\n \n // Ellipsoid\n const vec3 bottomRadii = vec3(6378137.0, 6378137.0, 6356752.3142451793); \n const vec3 topRadii = bottomRadii + ATMOS_HEIGHT;\n \n const vec3 SPHERE_TO_ELLIPSOID_SCALE = vec3(BOTTOM_RADIUS) / bottomRadii; \n \n const vec2 rayleighMieHeights = vec2(RAYLEIGH_SCALE, MIE_SCALE) * ATMOS_HEIGHT;\n \n const vec3 rayleighScatteringCoefficient = vec3(5.802, 13.558, 33.100) * 1e-6;\n \n const float mieScatteringCoefficient = 3.996e-06;\n const float mieExtinctionCoefficient = 4.440e-06;\n const vec3 ozoneAbsorptionCoefficient = vec3(0.650, 1.881, 0.085) * 1e-6;\n \n const float SUN_ANGULAR_RADIUS = 0.004685;\n const float SUN_INTENSITY = 1.0; \n \n vec3 sunWithBloom(vec3 rayDir, vec3 sunDir) \n {\n float minSunCosTheta = cos(SUN_ANGULAR_RADIUS); \n float cosTheta = dot(rayDir, sunDir);\n if (cosTheta >= minSunCosTheta) return vec3(1.0); \n float offset = minSunCosTheta - cosTheta;\n float gaussianBloom = exp(-offset*15000.0)*0.7;\n float invBloom = 1.0/(0.09 + offset*200.0)*0.01;\n return vec3(gaussianBloom + invBloom);\n }\n \n float rayleighPhase(float angle) \n {\n return 3.0 / (16.0 * PI) * (1.0 + (angle * angle));\n }\n \n float miePhase(float angle) \n {\n float g = 0.8;\n return 3.0 / (8.0 * PI) * ((1.0 - g * g) * (1.0 + angle * angle)) / ((2.0 + g * g) * pow(1.0 + g * g - 2.0 * g * angle, 1.5));\n }\n \n vec3 opticalDepth(float height, float angle) \n {\n vec3 rayOrigin = vec3(0.0, BOTTOM_RADIUS + height, 0.0);\n vec3 rayDirection = vec3(sqrt(1.0 - angle * angle), angle, 0.0);\n float t1, t2;\n intersectSphere(rayOrigin, rayDirection, TOP_RADIUS, t1, t2);\n float segmentLength = t2 / float(SAMPLE_COUNT);\n \n float t = segmentLength * 0.5;\n vec3 opticalDepth = vec3(0.0);\n \n for (int i = 0; i < SAMPLE_COUNT; i++) \n {\n vec3 position = rayOrigin + t * rayDirection;\n float height = length(position) - BOTTOM_RADIUS;\n opticalDepth.xy += exp(-height / rayleighMieHeights) * segmentLength;\n \n // density of the ozone layer is modeled as a triangular \n // function that is 30 km wide and centered at 25 km altitude\n opticalDepth.z += (1.0 - min(abs(height - 25e3) / 15e3, 1.0)) * segmentLength; \n t += segmentLength;\n }\n \n return opticalDepth;\n }\n \n vec3 transmittance(float height, float angle) \n {\n vec3 opticalDepth = opticalDepth(height, angle);\n return exp(-(rayleighScatteringCoefficient * opticalDepth.x + mieExtinctionCoefficient * opticalDepth.y + ozoneAbsorptionCoefficient * opticalDepth.z));\n }";
3
+ export declare function transmittance(): Program;
4
+ export declare function scattering(): Program;
@@ -1,8 +1,6 @@
1
1
  import { Program } from '../webgl/Program';
2
2
  import { UTILS } from './utils';
3
-
4
- export const COMMON =
5
- `
3
+ export const COMMON = `
6
4
 
7
5
  ${UTILS}
8
6
 
@@ -90,8 +88,7 @@ export const COMMON =
90
88
  vec3 opticalDepth = opticalDepth(height, angle);
91
89
  return exp(-(rayleighScatteringCoefficient * opticalDepth.x + mieExtinctionCoefficient * opticalDepth.y + ozoneAbsorptionCoefficient * opticalDepth.z));
92
90
  }`;
93
-
94
- export function transmittance(): Program {
91
+ export function transmittance() {
95
92
  return new Program("transmittance", {
96
93
  uniforms: {
97
94
  iResolution: "vec2"
@@ -99,18 +96,14 @@ export function transmittance(): Program {
99
96
  attributes: {
100
97
  a_position: "vec2"
101
98
  },
102
-
103
- vertexShader:
104
- `
99
+ vertexShader: `
105
100
  attribute vec2 a_position;
106
101
 
107
102
  void main(void)
108
103
  {
109
104
  gl_Position = vec4(a_position, 0.0, 1.0);
110
105
  }`,
111
-
112
- fragmentShader:
113
- `
106
+ fragmentShader: `
114
107
  precision highp float;
115
108
 
116
109
  ${COMMON}
@@ -126,8 +119,7 @@ export function transmittance(): Program {
126
119
  }`
127
120
  });
128
121
  }
129
-
130
- export function scattering(): Program {
122
+ export function scattering() {
131
123
  return new Program("scattering", {
132
124
  uniforms: {
133
125
  iResolution: "vec2",
@@ -136,18 +128,14 @@ export function scattering(): Program {
136
128
  attributes: {
137
129
  a_position: "vec2"
138
130
  },
139
-
140
- vertexShader:
141
- `
131
+ vertexShader: `
142
132
  attribute vec2 a_position;
143
133
 
144
134
  void main(void)
145
135
  {
146
136
  gl_Position = vec4(a_position, 0.0, 1.0);
147
137
  }`,
148
-
149
- fragmentShader:
150
- `
138
+ fragmentShader: `
151
139
  precision highp float;
152
140
 
153
141
  uniform sampler2D transmittanceTexture;
@@ -248,7 +236,6 @@ export function scattering(): Program {
248
236
  }`
249
237
  });
250
238
  }
251
-
252
239
  // const vec3 solar_irradiance = vec3(1.474000,1.850400,1.911980);
253
240
  // float GetTextureCoordFromUnitRange(float x, int texture_size) {
254
241
  // return 0.5 / float(texture_size) + x * (1.0 - 1.0 / float(texture_size));
@@ -261,7 +248,6 @@ export function scattering(): Program {
261
248
  // float SafeSqrt(float a) {
262
249
  // return sqrt(max(a, 0.0 * m2));
263
250
  // }
264
-
265
251
  // float DistanceToTopAtmosphereBoundary(float r, float mu) {
266
252
  //
267
253
  // //assert(r <= atmosphere.top_radius);
@@ -270,7 +256,6 @@ export function scattering(): Program {
270
256
  // float discriminant = r * r * (mu * mu - 1.0) + TOP_RADIUS * TOP_RADIUS;
271
257
  // return ClampDistance(-r * mu + SafeSqrt(discriminant));
272
258
  // }
273
-
274
259
  // vec2 GetTransmittanceTextureUvFromRMu(
275
260
  // float r,
276
261
  // float mu)
@@ -291,7 +276,6 @@ export function scattering(): Program {
291
276
  // GetTextureCoordFromUnitRange(x_r, TRANSMITTANCE_TEXTURE_HEIGHT)
292
277
  // );
293
278
  // }
294
-
295
279
  // vec3 GetTransmittanceToTopAtmosphereBoundary(in sampler2D transmittance_texture, float r, float mu)
296
280
  // {
297
281
  // //assert(r >= BOTTOM_RADIUS && r <= TOP_RADIUS);
@@ -299,7 +283,6 @@ export function scattering(): Program {
299
283
  // vec2 uv = GetTransmittanceTextureUvFromRMu(r, mu);
300
284
  // return texture(transmittance_texture, uv).xyz;
301
285
  // }
302
-
303
286
  // vec3 GetTransmittanceToSun(
304
287
  // in sampler2D transmittance_texture,
305
288
  // float r,
@@ -313,7 +296,6 @@ export function scattering(): Program {
313
296
  // mu_s - cos_theta_h
314
297
  // );
315
298
  // }
316
-
317
299
  // vec3 GetSunAndSkyIrradiance(
318
300
  // in sampler2D transmittance_texture,
319
301
  // in vec3 point,
@@ -327,4 +309,4 @@ export function scattering(): Program {
327
309
  // sky_irradiance = vec3(0.0); // GetIrradiance(atmosphere, irradiance_texture, r, mu_s) * (1.0 + dot(normal, point) / r) * 0.5;
328
310
  //
329
311
  // return solar_irradiance * GetTransmittanceToSun(transmittance_texture, r, mu_s) * max(dot(normal, sun_direction), 0.0);
330
- // }
312
+ // }
@@ -0,0 +1,3 @@
1
+ import { Program } from '../webgl/Program';
2
+ export declare function billboardPicking(): Program;
3
+ export declare function billboard_screen(): Program;
@@ -1,16 +1,12 @@
1
- import {Program} from '../webgl/Program';
2
-
1
+ import { Program } from '../webgl/Program';
3
2
  const PROJECT = `vec2 project(vec4 p) {
4
3
  return (0.5 * p.xyz / p.w + 0.5).xy * viewport;
5
4
  }`;
6
-
7
- const ROTATE2D =
8
- `mat2 rotate2d(float angle) {
5
+ const ROTATE2D = `mat2 rotate2d(float angle) {
9
6
  return mat2(cos(angle), -sin(angle),
10
7
  sin(angle), cos(angle));
11
8
  }`;
12
-
13
- export function billboardPicking(): Program {
9
+ export function billboardPicking() {
14
10
  return new Program("billboardPicking", {
15
11
  uniforms: {
16
12
  viewport: "vec2",
@@ -32,8 +28,7 @@ export function billboardPicking(): Program {
32
28
  a_rotation: "float",
33
29
  a_rgba: "vec4"
34
30
  },
35
- vertexShader:
36
- `precision highp float;
31
+ vertexShader: `precision highp float;
37
32
  attribute vec2 a_vertices;
38
33
  attribute vec3 a_positionsHigh;
39
34
  attribute vec3 a_positionsLow;
@@ -102,16 +97,14 @@ export function billboardPicking(): Program {
102
97
 
103
98
  gl_Position = vec4((2.0 * v / viewport - 1.0) * projPos.w, projPos.z, projPos.w);
104
99
  }`,
105
- fragmentShader:
106
- `precision highp float;
100
+ fragmentShader: `precision highp float;
107
101
  varying vec3 v_rgb;
108
102
  void main () {
109
103
  gl_FragColor = vec4(v_rgb, 1.0);
110
104
  }`
111
105
  });
112
106
  }
113
-
114
- export function billboard_screen(): Program {
107
+ export function billboard_screen() {
115
108
  return new Program("billboard", {
116
109
  uniforms: {
117
110
  viewport: "vec2",
@@ -135,8 +128,7 @@ export function billboard_screen(): Program {
135
128
  a_rotation: "float",
136
129
  a_rgba: "vec4",
137
130
  },
138
- vertexShader:
139
- `precision highp float;
131
+ vertexShader: `precision highp float;
140
132
  attribute vec2 a_vertices;
141
133
  attribute vec2 a_texCoord;
142
134
  attribute vec3 a_positionsHigh;
@@ -208,8 +200,7 @@ export function billboard_screen(): Program {
208
200
 
209
201
  gl_Position = vec4((2.0 * v / viewport - 1.0) * projPos.w, projPos.z, projPos.w);
210
202
  }`,
211
- fragmentShader:
212
- `precision highp float;
203
+ fragmentShader: `precision highp float;
213
204
  uniform sampler2D u_texture;
214
205
  varying vec2 v_texCoords;
215
206
  varying vec4 v_rgba;
@@ -220,4 +211,4 @@ export function billboard_screen(): Program {
220
211
  gl_FragColor = color * v_rgba;
221
212
  }`
222
213
  });
223
- }
214
+ }
@@ -0,0 +1,2 @@
1
+ import { Program } from '../webgl/Program';
2
+ export declare function bloom(): Program;
@@ -1,6 +1,5 @@
1
- import {Program} from '../webgl/Program';
2
-
3
- export function bloom(): Program {
1
+ import { Program } from '../webgl/Program';
2
+ export function bloom() {
4
3
  return new Program("bloom", {
5
4
  uniforms: {
6
5
  uTextureOriginal: "sampler2d",
@@ -10,15 +9,13 @@ export function bloom(): Program {
10
9
  attributes: {
11
10
  corners: "vec3"
12
11
  },
13
- vertexShader:
14
- `attribute vec2 corners;
12
+ vertexShader: `attribute vec2 corners;
15
13
  varying vec2 uv;
16
14
  void main(void) {
17
15
  gl_Position = vec4(corners, 0.0, 1.0);
18
16
  uv = corners * 0.5 + 0.5;
19
17
  }`,
20
- fragmentShader:
21
- `precision highp float;
18
+ fragmentShader: `precision highp float;
22
19
  uniform sampler2D uTextureOriginal;
23
20
  uniform sampler2D uTexture1;
24
21
  uniform sampler2D uTexture2;
@@ -32,4 +29,4 @@ export function bloom(): Program {
32
29
  gl_FragColor = vOriginal + vT1 + vT2;
33
30
  }`
34
31
  });
35
- }
32
+ }
@@ -0,0 +1,3 @@
1
+ import { Program } from '../webgl/Program';
2
+ export declare function buildKernel(sigma: number): number[];
3
+ export declare function blur(): Program;
@@ -1,30 +1,24 @@
1
- import {Program} from '../webgl/Program';
2
-
3
- export function buildKernel(sigma: number): number[] {
4
- function gauss(x: number, sigma: number) {
1
+ import { Program } from '../webgl/Program';
2
+ export function buildKernel(sigma) {
3
+ function gauss(x, sigma) {
5
4
  return Math.exp(-(x * x) / (2.0 * sigma * sigma));
6
5
  }
7
-
8
6
  var i, values, sum, halfWidth, kMaxKernelSize = 25, kernelSize = 2 * Math.ceil(sigma * 3.0) + 1;
9
-
10
- if (kernelSize > kMaxKernelSize) kernelSize = kMaxKernelSize;
7
+ if (kernelSize > kMaxKernelSize)
8
+ kernelSize = kMaxKernelSize;
11
9
  halfWidth = (kernelSize - 1) * 0.5;
12
-
13
10
  values = new Array(kernelSize);
14
11
  sum = 0.0;
15
12
  for (i = 0; i < kernelSize; ++i) {
16
13
  values[i] = gauss(i - halfWidth, sigma);
17
14
  sum += values[i];
18
15
  }
19
-
20
16
  // normalize the kernel
21
- for (i = 0; i < kernelSize; ++i) values[i] /= sum;
22
-
17
+ for (i = 0; i < kernelSize; ++i)
18
+ values[i] /= sum;
23
19
  return values;
24
20
  }
25
-
26
- export function blur(): Program {
27
-
21
+ export function blur() {
28
22
  return new Program("blur", {
29
23
  uniforms: {
30
24
  uImageIncrement: "vec2",
@@ -34,8 +28,7 @@ export function blur(): Program {
34
28
  attributes: {
35
29
  corners: "vec3"
36
30
  },
37
- vertexShader:
38
- `
31
+ vertexShader: `
39
32
  #define KERNEL_SIZE_FLOAT 25.0
40
33
 
41
34
  attribute vec2 corners;
@@ -48,8 +41,7 @@ export function blur(): Program {
48
41
  vec2 uv = corners * 0.5 + 0.5;
49
42
  vUv = uv - ( ( KERNEL_SIZE_FLOAT - 1.0 ) / 2.0 ) * uImageIncrement;
50
43
  }`,
51
- fragmentShader:
52
- `precision highp float;
44
+ fragmentShader: `precision highp float;
53
45
 
54
46
  #define KERNEL_SIZE_INT 25
55
47
 
@@ -73,4 +65,4 @@ export function blur(): Program {
73
65
  gl_FragColor = sum;
74
66
  }`
75
67
  });
76
- }
68
+ }
@@ -0,0 +1,2 @@
1
+ import { Program } from '../webgl/Program';
2
+ export declare function depth(): Program;
@@ -1,5 +1,4 @@
1
1
  import { Program } from '../webgl/Program';
2
-
3
2
  export function depth() {
4
3
  return new Program("depth", {
5
4
  uniforms: {
@@ -8,8 +7,7 @@ export function depth() {
8
7
  attributes: {
9
8
  corners: "vec2"
10
9
  },
11
- vertexShader:
12
- `#version 300 es
10
+ vertexShader: `#version 300 es
13
11
 
14
12
  in vec2 corners;
15
13
 
@@ -19,8 +17,7 @@ export function depth() {
19
17
  gl_Position = vec4(corners, 0.0, 1.0);
20
18
  tc = corners * 0.5 + 0.5;
21
19
  }`,
22
- fragmentShader:
23
- `#version 300 es
20
+ fragmentShader: `#version 300 es
24
21
 
25
22
  precision highp float;
26
23
 
@@ -43,4 +40,4 @@ export function depth() {
43
40
  fragColor = vec4(c, c, c, 1.0);
44
41
  }`
45
42
  });
46
- }
43
+ }
@@ -0,0 +1,8 @@
1
+ import { Program } from "../webgl/Program";
2
+ export declare function drawnode_screen_nl(): Program;
3
+ export declare function drawnode_screen_wl_webgl1NoAtmos(): Program;
4
+ export declare function drawnode_screen_wl_webgl2NoAtmos(): Program;
5
+ export declare function drawnode_screen_wl_webgl2Atmos(): Program;
6
+ export declare function drawnode_colorPicking(): Program;
7
+ export declare function drawnode_heightPicking(): Program;
8
+ export declare function drawnode_depth(): Program;