@openglobus/og 0.18.0 → 0.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/README.md +8 -8
  2. package/lib/@openglobus/og.esm.js +2 -0
  3. package/lib/@openglobus/og.esm.js.map +1 -0
  4. package/lib/@openglobus/og.umd.js +2 -0
  5. package/lib/@openglobus/og.umd.js.map +1 -0
  6. package/lib/js/Clock.d.ts +106 -0
  7. package/{src/Clock.ts → lib/js/Clock.js} +31 -126
  8. package/lib/js/Deferred.d.ts +6 -0
  9. package/lib/js/Deferred.js +13 -0
  10. package/lib/js/Events.d.ts +90 -0
  11. package/{src/Events.ts → lib/js/Events.js} +29 -84
  12. package/lib/js/Extent.d.ts +145 -0
  13. package/{src/Extent.ts → lib/js/Extent.js} +74 -120
  14. package/lib/js/Globe.d.ts +132 -0
  15. package/{src/Globe.ts → lib/js/Globe.js} +61 -159
  16. package/lib/js/ImageCanvas.d.ts +128 -0
  17. package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
  18. package/lib/js/Lock.d.ts +15 -0
  19. package/{src/Lock.ts → lib/js/Lock.js} +7 -21
  20. package/lib/js/LonLat.d.ts +128 -0
  21. package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
  22. package/lib/js/Object3d.d.ts +49 -0
  23. package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
  24. package/lib/js/Popup.d.ts +46 -0
  25. package/{src/Popup.ts → lib/js/Popup.js} +42 -110
  26. package/lib/js/QueueArray.d.ts +16 -0
  27. package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
  28. package/lib/js/Rectangle.d.ts +76 -0
  29. package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
  30. package/lib/js/Stack.d.ts +20 -0
  31. package/{src/Stack.ts → lib/js/Stack.js} +13 -29
  32. package/lib/js/astro/astro.d.ts +39 -0
  33. package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
  34. package/lib/js/astro/earth.d.ts +8 -0
  35. package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
  36. package/lib/js/astro/jd.d.ts +234 -0
  37. package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
  38. package/lib/js/astro/orbit.d.ts +5 -0
  39. package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
  40. package/lib/js/astro/rotation.d.ts +2 -0
  41. package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
  42. package/lib/js/bv/Box.d.ts +32 -0
  43. package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
  44. package/lib/js/bv/Sphere.d.ts +37 -0
  45. package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
  46. package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
  47. package/lib/js/bv/index.js +3 -0
  48. package/lib/js/camera/Camera.d.ts +314 -0
  49. package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
  50. package/lib/js/camera/Frustum.d.ts +139 -0
  51. package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
  52. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  53. package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
  54. package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
  55. package/lib/js/camera/index.js +3 -0
  56. package/lib/js/cons.d.ts +40 -0
  57. package/{src/cons.ts → lib/js/cons.js} +10 -22
  58. package/lib/js/control/Atmosphere.d.ts +16 -0
  59. package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
  60. package/lib/js/control/CompassButton.d.ts +16 -0
  61. package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
  62. package/lib/js/control/Control.d.ts +100 -0
  63. package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
  64. package/lib/js/control/DebugInfo.d.ts +25 -0
  65. package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
  66. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  67. package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
  68. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  69. package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
  70. package/lib/js/control/EarthNavigation.d.ts +50 -0
  71. package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
  72. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  73. package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
  74. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  75. package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
  76. package/lib/js/control/LayerAnimation.d.ts +71 -0
  77. package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
  78. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  79. package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
  80. package/lib/js/control/Lighting.d.ts +49 -0
  81. package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
  82. package/lib/js/control/MouseNavigation.d.ts +62 -0
  83. package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
  84. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  85. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  86. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  87. package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
  88. package/lib/js/control/ScaleControl.d.ts +24 -0
  89. package/lib/js/control/ScaleControl.js +91 -0
  90. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  91. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  92. package/lib/js/control/ShowFps.d.ts +9 -0
  93. package/lib/js/control/ShowFps.js +20 -0
  94. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  95. package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
  96. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  97. package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
  98. package/lib/js/control/Sun.d.ts +33 -0
  99. package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
  100. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  101. package/lib/js/control/ToggleWireframe.js +28 -0
  102. package/lib/js/control/TouchNavigation.d.ts +52 -0
  103. package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
  104. package/lib/js/control/ZoomControl.d.ts +27 -0
  105. package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
  106. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  107. package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
  108. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  109. package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
  110. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  111. package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
  112. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  113. package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
  114. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  115. package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
  116. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  117. package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
  118. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  119. package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
  120. package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
  121. package/lib/js/control/index.js +28 -0
  122. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  123. package/lib/js/control/ruler/Ruler.js +23 -0
  124. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  125. package/lib/js/control/ruler/RulerScene.js +324 -0
  126. package/lib/js/control/selection/Selection.d.ts +55 -0
  127. package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
  128. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  129. package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
  130. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  131. package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
  132. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  133. package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
  134. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  135. package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
  136. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  137. package/lib/js/control/timeline/timelineUtils.js +112 -0
  138. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  139. package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
  140. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  141. package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
  142. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  143. package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
  144. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  145. package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +82 -267
  146. package/lib/js/ellipsoid/index.d.ts +3 -0
  147. package/lib/js/ellipsoid/index.js +3 -0
  148. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  149. package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
  150. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  151. package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
  152. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  153. package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
  154. package/lib/js/entity/Billboard.d.ts +113 -0
  155. package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
  156. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  157. package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
  158. package/lib/js/entity/Entity.d.ts +354 -0
  159. package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +101 -373
  160. package/lib/js/entity/EntityCollection.d.ts +364 -0
  161. package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +51 -353
  162. package/lib/js/entity/GeoObject.d.ts +138 -0
  163. package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
  164. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  165. package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
  166. package/lib/js/entity/Geometry.d.ts +111 -0
  167. package/lib/js/entity/Geometry.js +283 -0
  168. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  169. package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
  170. package/lib/js/entity/Label.d.ts +207 -0
  171. package/{src/entity/Label.ts → lib/js/entity/Label.js} +62 -164
  172. package/lib/js/entity/LabelHandler.d.ts +65 -0
  173. package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
  174. package/lib/js/entity/LabelWorker.d.ts +15 -0
  175. package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
  176. package/lib/js/entity/PointCloud.d.ts +179 -0
  177. package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
  178. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  179. package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
  180. package/lib/js/entity/Polyline.d.ts +337 -0
  181. package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
  182. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  183. package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
  184. package/lib/js/entity/Ray.d.ts +133 -0
  185. package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
  186. package/lib/js/entity/RayHandler.d.ts +70 -0
  187. package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
  188. package/lib/js/entity/Strip.d.ts +127 -0
  189. package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
  190. package/lib/js/entity/StripHandler.d.ts +42 -0
  191. package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
  192. package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
  193. package/lib/js/entity/index.js +11 -0
  194. package/lib/js/index.d.ts +33 -0
  195. package/lib/js/index.js +33 -0
  196. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  197. package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
  198. package/lib/js/input/MouseHandler.d.ts +16 -0
  199. package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
  200. package/lib/js/input/TouchHandler.d.ts +11 -0
  201. package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
  202. package/lib/js/input/input.d.ts +3 -0
  203. package/{src/input/input.ts → lib/js/input/input.js} +1 -1
  204. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  205. package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
  206. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  207. package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
  208. package/lib/js/layer/GeoImage.d.ts +61 -0
  209. package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
  210. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  211. package/lib/js/layer/GeoTexture2d.js +37 -0
  212. package/lib/js/layer/GeoVideo.d.ts +68 -0
  213. package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
  214. package/lib/js/layer/KML.d.ts +72 -0
  215. package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
  216. package/lib/js/layer/Layer.d.ts +401 -0
  217. package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
  218. package/lib/js/layer/Material.d.ts +34 -0
  219. package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
  220. package/lib/js/layer/Vector.d.ts +244 -0
  221. package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +147 -418
  222. package/lib/js/layer/WMS.d.ts +75 -0
  223. package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
  224. package/lib/js/layer/XYZ.d.ts +149 -0
  225. package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
  226. package/lib/js/layer/index.d.ts +11 -0
  227. package/lib/js/layer/index.js +11 -0
  228. package/lib/js/light/LightSource.d.ts +174 -0
  229. package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
  230. package/lib/js/math/Line2.d.ts +11 -0
  231. package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
  232. package/lib/js/math/Line3.d.ts +28 -0
  233. package/lib/js/math/Line3.js +85 -0
  234. package/lib/js/math/Mat3.d.ts +77 -0
  235. package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
  236. package/lib/js/math/Mat4.d.ts +195 -0
  237. package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
  238. package/lib/js/math/Plane.d.ts +20 -0
  239. package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
  240. package/lib/js/math/Quat.d.ts +373 -0
  241. package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
  242. package/lib/js/math/Ray.d.ts +76 -0
  243. package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
  244. package/lib/js/math/Vec2.d.ts +310 -0
  245. package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
  246. package/lib/js/math/Vec3.d.ts +472 -0
  247. package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
  248. package/lib/js/math/Vec4.d.ts +163 -0
  249. package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
  250. package/lib/js/math/coder.d.ts +51 -0
  251. package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
  252. package/lib/js/math/index.d.ts +11 -0
  253. package/lib/js/math/index.js +11 -0
  254. package/lib/js/math.d.ts +266 -0
  255. package/{src/math.ts → lib/js/math.js} +37 -85
  256. package/lib/js/mercator.d.ts +92 -0
  257. package/{src/mercator.ts → lib/js/mercator.js} +13 -37
  258. package/lib/js/proj/EPSG3857.d.ts +9 -0
  259. package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
  260. package/lib/js/proj/EPSG4326.d.ts +9 -0
  261. package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
  262. package/lib/js/proj/Proj.d.ts +43 -0
  263. package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
  264. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  265. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  266. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  267. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  268. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  269. package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
  270. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  271. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  272. package/lib/js/quadTree/Node.d.ts +61 -0
  273. package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
  274. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  275. package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
  276. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  277. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  278. package/lib/js/quadTree/index.d.ts +12 -0
  279. package/lib/js/quadTree/index.js +12 -0
  280. package/lib/js/quadTree/quadTree.d.ts +40 -0
  281. package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
  282. package/lib/js/renderer/Renderer.d.ts +311 -0
  283. package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +169 -611
  284. package/lib/js/renderer/RendererEvents.d.ts +237 -0
  285. package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +134 -471
  286. package/lib/js/scene/Axes.d.ts +12 -0
  287. package/lib/js/scene/Axes.js +59 -0
  288. package/lib/js/scene/BaseNode.d.ts +61 -0
  289. package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
  290. package/lib/js/scene/Planet.d.ts +623 -0
  291. package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +251 -935
  292. package/lib/js/scene/RenderNode.d.ts +150 -0
  293. package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
  294. package/lib/js/scene/SkyBox.d.ts +13 -0
  295. package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
  296. package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
  297. package/lib/js/scene/index.js +5 -0
  298. package/lib/js/segment/Segment.d.ts +278 -0
  299. package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
  300. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  301. package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
  302. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  303. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  304. package/lib/js/segment/Slice.d.ts +13 -0
  305. package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
  306. package/lib/js/segment/segmentHelper.d.ts +18 -0
  307. package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
  308. package/lib/js/shaders/atmos.d.ts +4 -0
  309. package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
  310. package/lib/js/shaders/billboard.d.ts +3 -0
  311. package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
  312. package/lib/js/shaders/bloom.d.ts +2 -0
  313. package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
  314. package/lib/js/shaders/blur.d.ts +3 -0
  315. package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
  316. package/lib/js/shaders/depth.d.ts +2 -0
  317. package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
  318. package/lib/js/shaders/drawnode.d.ts +8 -0
  319. package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
  320. package/lib/js/shaders/geoObject.d.ts +3 -0
  321. package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
  322. package/lib/js/shaders/label.d.ts +4 -0
  323. package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
  324. package/lib/js/shaders/lumFilter.d.ts +2 -0
  325. package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
  326. package/lib/js/shaders/pickingMask.d.ts +2 -0
  327. package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
  328. package/lib/js/shaders/pointCloud.d.ts +2 -0
  329. package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
  330. package/lib/js/shaders/polyline.d.ts +3 -0
  331. package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
  332. package/lib/js/shaders/ray.d.ts +2 -0
  333. package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
  334. package/lib/js/shaders/screenFrame.d.ts +2 -0
  335. package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
  336. package/lib/js/shaders/skybox.d.ts +2 -0
  337. package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
  338. package/lib/js/shaders/toneMapping.d.ts +2 -0
  339. package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
  340. package/lib/js/shaders/utils.d.ts +1 -0
  341. package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
  342. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  343. package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
  344. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  345. package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
  346. package/lib/js/terrain/Geoid.d.ts +33 -0
  347. package/lib/js/terrain/Geoid.js +191 -0
  348. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  349. package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +82 -239
  350. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  351. package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
  352. package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
  353. package/lib/js/terrain/index.js +5 -0
  354. package/lib/js/ui/Button.d.ts +32 -0
  355. package/lib/js/ui/Button.js +78 -0
  356. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  357. package/lib/js/ui/ButtonGroup.js +41 -0
  358. package/lib/js/ui/Dialog.d.ts +55 -0
  359. package/lib/js/ui/Dialog.js +173 -0
  360. package/lib/js/ui/Slider.d.ts +38 -0
  361. package/lib/js/ui/Slider.js +129 -0
  362. package/lib/js/ui/ToggleButton.d.ts +20 -0
  363. package/lib/js/ui/ToggleButton.js +42 -0
  364. package/lib/js/ui/View.d.ts +37 -0
  365. package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
  366. package/lib/js/ui/icons.d.ts +1 -0
  367. package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
  368. package/lib/js/utils/BaseWorker.d.ts +14 -0
  369. package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
  370. package/lib/js/utils/FontAtlas.d.ts +82 -0
  371. package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +45 -181
  372. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  373. package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
  374. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  375. package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
  376. package/lib/js/utils/Loader.d.ts +63 -0
  377. package/lib/js/utils/Loader.js +156 -0
  378. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  379. package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
  380. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  381. package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
  382. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  383. package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
  384. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  385. package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
  386. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  387. package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
  388. package/lib/js/utils/colorTable.d.ts +3 -0
  389. package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
  390. package/lib/js/utils/earcut.d.ts +7 -0
  391. package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
  392. package/lib/js/utils/objParser.d.ts +24 -0
  393. package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
  394. package/lib/js/utils/shared.d.ts +267 -0
  395. package/{src/utils/shared.ts → lib/js/utils/shared.js} +184 -341
  396. package/lib/js/utils/units.d.ts +16 -0
  397. package/lib/js/utils/units.js +61 -0
  398. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  399. package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
  400. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  401. package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
  402. package/lib/js/webgl/Handler.d.ts +473 -0
  403. package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
  404. package/lib/js/webgl/Multisample.d.ts +27 -0
  405. package/lib/js/webgl/Multisample.js +77 -0
  406. package/lib/js/webgl/Program.d.ts +159 -0
  407. package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
  408. package/lib/js/webgl/ProgramController.d.ts +86 -0
  409. package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
  410. package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
  411. package/lib/js/webgl/index.js +6 -0
  412. package/lib/js/webgl/types.d.ts +9 -0
  413. package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
  414. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  415. package/lib/js/webgl/variableHandlers.js +78 -0
  416. package/package.json +23 -34
  417. package/dist/@openglobus/og.esm.js +0 -2
  418. package/dist/@openglobus/og.esm.js.map +0 -1
  419. package/dist/@openglobus/og.umd.js +0 -2
  420. package/dist/@openglobus/og.umd.js.map +0 -1
  421. package/src/Deferred.ts +0 -17
  422. package/src/control/MouseWheelZoomControl.ts +0 -269
  423. package/src/control/ScaleControl.ts +0 -131
  424. package/src/control/SegmentBoundVisualization.ts +0 -50
  425. package/src/control/ShowFps.ts +0 -28
  426. package/src/control/ToggleWireframe.ts +0 -35
  427. package/src/control/ruler/Ruler.ts +0 -35
  428. package/src/control/ruler/RulerScene.ts +0 -437
  429. package/src/control/timeline/timelineUtils.ts +0 -133
  430. package/src/ellipsoid/index.ts +0 -4
  431. package/src/entity/Geometry.ts +0 -486
  432. package/src/index.ts +0 -173
  433. package/src/layer/GeoTexture2d.ts +0 -56
  434. package/src/layer/index.ts +0 -12
  435. package/src/math/Line3.ts +0 -162
  436. package/src/math/index.ts +0 -26
  437. package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
  438. package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
  439. package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
  440. package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
  441. package/src/quadTree/index.ts +0 -14
  442. package/src/scene/Axes.ts +0 -78
  443. package/src/segment/SegmentLonLatWgs84.ts +0 -33
  444. package/src/terrain/Geoid.ts +0 -273
  445. package/src/ui/Button.ts +0 -121
  446. package/src/ui/ButtonGroup.ts +0 -63
  447. package/src/ui/Dialog.ts +0 -244
  448. package/src/ui/Slider.ts +0 -188
  449. package/src/ui/ToggleButton.ts +0 -68
  450. package/src/utils/Loader.ts +0 -247
  451. package/src/utils/units.ts +0 -78
  452. package/src/webgl/Multisample.ts +0 -153
  453. package/src/webgl/variableHandlers.ts +0 -114
  454. /package/{dist → lib}/@openglobus/og.css +0 -0
  455. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
  456. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
  457. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  458. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
  459. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
  460. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  461. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
  462. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
  463. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  464. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
  465. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
  466. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  467. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
  468. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
  469. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  470. /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
  471. /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
  472. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
  473. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
  474. /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
  475. /package/{dist → lib}/@openglobus/res/night.png +0 -0
  476. /package/{dist → lib}/@openglobus/res/spec.png +0 -0
@@ -0,0 +1,16 @@
1
+ export declare const ELL = 0;
2
+ export declare const MSL = 1;
3
+ export declare const GND = 2;
4
+ export declare const heightMode: Record<string, number>;
5
+ export declare const m = 0;
6
+ export declare const km = 1;
7
+ export declare const ft = 2;
8
+ export declare const s = 3;
9
+ export declare const h = 4;
10
+ export declare const ms = 5;
11
+ export declare const kmh = 6;
12
+ export declare const fts = 7;
13
+ export declare const _tenth: number[];
14
+ export declare function convert(from: number, to: number, val: number): number;
15
+ export declare function convertExt(isNotNaN: boolean, unitFrom: number, unitTo: number, val: number, fixed?: number): string;
16
+ export declare function toString(u: number): string;
@@ -0,0 +1,61 @@
1
+ export const ELL = 0;
2
+ export const MSL = 1;
3
+ export const GND = 2;
4
+ export const heightMode = {
5
+ "ell": ELL,
6
+ "msl": MSL,
7
+ "gnd": GND
8
+ };
9
+ const KM_to_M = 1000.0;
10
+ const M_to_KM = 1.0 / KM_to_M;
11
+ const FT_to_M = 0.3048;
12
+ const M_to_FT = 1.0 / FT_to_M;
13
+ const MS_to_KMH = 3.6;
14
+ const KMH_to_MS = 1.0 / MS_to_KMH;
15
+ const MS_to_FTS = 3.28084;
16
+ const FT_to_KM = FT_to_M * M_to_KM;
17
+ const KM_to_FT = 1.0 / FT_to_KM;
18
+ export const m = 0;
19
+ export const km = 1;
20
+ export const ft = 2;
21
+ export const s = 3;
22
+ export const h = 4;
23
+ export const ms = 5;
24
+ export const kmh = 6;
25
+ export const fts = 7;
26
+ const DEFAULT_NAN = "--";
27
+ const _abbr = ["m", "km", "ft", "s", "h", "m/s", "km/h", "ft/s"];
28
+ export const _tenth = [0, 2, 0, 0, 0, 0, 0, 0];
29
+ let _convFn = [];
30
+ _convFn[m] = [];
31
+ _convFn[m][m] = (v) => v;
32
+ _convFn[m][km] = (v) => v * M_to_KM;
33
+ _convFn[m][ft] = (v) => v * M_to_FT;
34
+ _convFn[ft] = [];
35
+ _convFn[ft][m] = (v) => v * FT_to_M;
36
+ _convFn[ft][km] = (v) => v * FT_to_KM;
37
+ _convFn[ft][ft] = (v) => v;
38
+ _convFn[km] = [];
39
+ _convFn[km][m] = (v) => v * KM_to_M;
40
+ _convFn[km][km] = (v) => v;
41
+ _convFn[km][ft] = (v) => v * KM_to_FT;
42
+ _convFn[ms] = [];
43
+ _convFn[ms][ms] = (v) => v;
44
+ _convFn[ms][kmh] = (v) => v * MS_to_KMH;
45
+ _convFn[ms][fts] = (v) => v * MS_to_FTS;
46
+ _convFn[kmh] = [];
47
+ _convFn[kmh][ms] = (v) => v * KMH_to_MS;
48
+ _convFn[kmh][kmh] = (v) => v;
49
+ //_convFn[kmh][fts] = (v) => v * KMH_to_FTS;
50
+ export function convert(from, to, val) {
51
+ return _convFn[from][to](val);
52
+ }
53
+ export function convertExt(isNotNaN, unitFrom, unitTo, val, fixed) {
54
+ if (isNotNaN) {
55
+ return convert(unitFrom, unitTo, val).toFixed(fixed || _tenth[unitTo]);
56
+ }
57
+ return DEFAULT_NAN;
58
+ }
59
+ export function toString(u) {
60
+ return _abbr[u];
61
+ }
@@ -0,0 +1,53 @@
1
+ import { Handler } from "./Handler";
2
+ export interface IBaseFramebufferParams {
3
+ internalFormat?: string | string[];
4
+ width?: number;
5
+ height?: number;
6
+ useDepth?: boolean;
7
+ depthComponent?: string;
8
+ size?: number;
9
+ filter?: string;
10
+ }
11
+ export declare class BaseFramebuffer {
12
+ handler: Handler;
13
+ _fbo: WebGLFramebuffer | null;
14
+ protected _depthRenderbuffer: WebGLRenderbuffer | null;
15
+ _width: number;
16
+ _height: number;
17
+ protected _depthComponent: string;
18
+ protected _size: number;
19
+ protected _active: boolean;
20
+ protected _useDepth: boolean;
21
+ protected _filter: string;
22
+ constructor(handler: Handler, options?: IBaseFramebufferParams);
23
+ get width(): number;
24
+ get height(): number;
25
+ /**
26
+ * Sets framebuffer viewport size.
27
+ * @public
28
+ * @param {number} width - Framebuffer width.
29
+ * @param {number} height - Framebuffer height.
30
+ * @param {boolean} [forceDestroy] -
31
+ */
32
+ setSize(width: number, height: number, forceDestroy?: boolean): void;
33
+ init(): void;
34
+ destroy(): void;
35
+ /**
36
+ * Returns framebuffer completed.
37
+ * @public
38
+ * @returns {boolean} -
39
+ */
40
+ isComplete(): boolean;
41
+ checkStatus(): number;
42
+ /**
43
+ * Activate framebuffer frame to draw.
44
+ * @public
45
+ * @returns {Framebuffer} Returns Current framebuffer.
46
+ */
47
+ activate(): this;
48
+ /**
49
+ * Deactivate framebuffer frame.
50
+ * @public
51
+ */
52
+ deactivate(): void;
53
+ }
@@ -1,32 +1,9 @@
1
- import {Handler} from "./Handler";
2
-
3
- export interface IBaseFramebufferParams {
4
- internalFormat?: string | string[];
5
- width?: number;
6
- height?: number;
7
- useDepth?: boolean;
8
- depthComponent?: string;
9
- size?: number;
10
- filter?: string;
11
- }
12
-
13
1
  export class BaseFramebuffer {
14
- public handler: Handler;
15
- public _fbo: WebGLFramebuffer | null;
16
- protected _depthRenderbuffer: WebGLRenderbuffer | null;
17
- public _width: number;
18
- public _height: number;
19
- protected _depthComponent: string;
20
- protected _size: number;
21
- protected _active: boolean;
22
- protected _useDepth: boolean;
23
- protected _filter: string;
24
-
25
- constructor(handler: Handler, options: IBaseFramebufferParams = {}) {
2
+ constructor(handler, options = {}) {
26
3
  this.handler = handler;
27
4
  this._fbo = null;
28
- this._width = options.width || handler.canvas!.width;
29
- this._height = options.height || handler.canvas!.height;
5
+ this._width = options.width || handler.canvas.width;
6
+ this._height = options.height || handler.canvas.height;
30
7
  this._depthComponent = options.depthComponent != undefined ? options.depthComponent : "DEPTH_COMPONENT16";
31
8
  this._useDepth = options.useDepth != undefined ? options.useDepth : true;
32
9
  this._active = false;
@@ -34,15 +11,12 @@ export class BaseFramebuffer {
34
11
  this._depthRenderbuffer = null;
35
12
  this._filter = options.filter || "NEAREST";
36
13
  }
37
-
38
- public get width(): number {
14
+ get width() {
39
15
  return this._width;
40
16
  }
41
-
42
- public get height(): number {
17
+ get height() {
43
18
  return this._height;
44
19
  }
45
-
46
20
  /**
47
21
  * Sets framebuffer viewport size.
48
22
  * @public
@@ -50,76 +24,65 @@ export class BaseFramebuffer {
50
24
  * @param {number} height - Framebuffer height.
51
25
  * @param {boolean} [forceDestroy] -
52
26
  */
53
- public setSize(width: number, height: number, forceDestroy: boolean = false) {
27
+ setSize(width, height, forceDestroy = false) {
54
28
  this._width = width;
55
29
  this._height = height;
56
-
57
30
  if (this._active) {
58
- this.handler.gl!.viewport(0, 0, this._width, this._height);
31
+ this.handler.gl.viewport(0, 0, this._width, this._height);
59
32
  }
60
-
61
33
  if (this._useDepth || forceDestroy) {
62
34
  this.destroy();
63
35
  this.init();
64
36
  }
65
37
  }
66
-
67
- public init() {
38
+ init() {
68
39
  }
69
-
70
- public destroy() {
40
+ destroy() {
71
41
  }
72
-
73
42
  /**
74
43
  * Returns framebuffer completed.
75
44
  * @public
76
45
  * @returns {boolean} -
77
46
  */
78
- public isComplete(): boolean {
79
- let gl = this.handler.gl!;
47
+ isComplete() {
48
+ let gl = this.handler.gl;
80
49
  return gl.checkFramebufferStatus(gl.FRAMEBUFFER) === gl.FRAMEBUFFER_COMPLETE;
81
50
  }
82
-
83
- public checkStatus(): number {
84
- let gl = this.handler.gl!;
51
+ checkStatus() {
52
+ let gl = this.handler.gl;
85
53
  return gl.checkFramebufferStatus(gl.FRAMEBUFFER);
86
54
  }
87
-
88
55
  /**
89
56
  * Activate framebuffer frame to draw.
90
57
  * @public
91
58
  * @returns {Framebuffer} Returns Current framebuffer.
92
59
  */
93
- public activate() {
94
- let gl = this.handler.gl!;
60
+ activate() {
61
+ let gl = this.handler.gl;
95
62
  gl.bindFramebuffer(gl.FRAMEBUFFER, null);
96
63
  gl.bindFramebuffer(gl.FRAMEBUFFER, this._fbo);
97
64
  gl.viewport(0, 0, this._width, this._height);
98
65
  this._active = true;
99
-
100
66
  let c = this.handler.framebufferStack.current().data;
101
67
  c && (c._active = false);
102
68
  this.handler.framebufferStack.push(this);
103
69
  return this;
104
70
  }
105
-
106
71
  /**
107
72
  * Deactivate framebuffer frame.
108
73
  * @public
109
74
  */
110
- public deactivate() {
111
- let h = this.handler,
112
- gl = h.gl!;
113
- gl.bindFramebuffer(gl.FRAMEBUFFER, null!);
75
+ deactivate() {
76
+ let h = this.handler, gl = h.gl;
77
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
114
78
  this._active = false;
115
-
116
79
  let f = this.handler.framebufferStack.popPrev();
117
-
118
80
  if (f) {
119
81
  gl.bindFramebuffer(gl.FRAMEBUFFER, f._fbo);
120
82
  gl.viewport(0, 0, f._width, f._height);
121
- } else {
122
- gl.viewport(0, 0, h.canvas!.width, h.canvas!.height);
83
+ }
84
+ else {
85
+ gl.viewport(0, 0, h.canvas.width, h.canvas.height);
123
86
  }
124
87
  }
125
- }
88
+ }
@@ -0,0 +1,69 @@
1
+ import { BaseFramebuffer, IBaseFramebufferParams } from "./BaseFramebuffer";
2
+ import { Handler } from "./Handler";
3
+ export interface IFrameBufferParams extends IBaseFramebufferParams {
4
+ isBare?: boolean;
5
+ format?: string | string[];
6
+ type?: string | string[];
7
+ attachment?: string | string[];
8
+ renderbufferTarget?: string;
9
+ textures?: WebGLTexture[];
10
+ }
11
+ /**
12
+ * Class represents framebuffer.
13
+ * @class
14
+ * @param {Handler} handler - WebGL handler.
15
+ * @param {IFrameBufferParams} [options] - Framebuffer options:
16
+ */
17
+ export declare class Framebuffer extends BaseFramebuffer {
18
+ protected _isBare: boolean;
19
+ protected _internalFormatArr: string[];
20
+ protected _formatArr: string[];
21
+ protected _typeArr: string[];
22
+ protected _attachmentArr: string[];
23
+ protected _renderbufferTarget: string;
24
+ /**
25
+ * Framebuffer texture.
26
+ * @public
27
+ * @type {number}
28
+ */
29
+ textures: WebGLTexture[];
30
+ constructor(handler: Handler, options?: IFrameBufferParams);
31
+ destroy(): void;
32
+ /**
33
+ * Framebuffer initialization.
34
+ * @public
35
+ * @override
36
+ */
37
+ init(): void;
38
+ /**
39
+ * Bind buffer texture.
40
+ * @public
41
+ * @param {WebGLTexture} texture - Output texture.
42
+ * @param {number} [glAttachment=0] - color attachment index.
43
+ */
44
+ bindOutputTexture(texture: WebGLTexture, glAttachment?: number): void;
45
+ /**
46
+ * Gets pixel RGBA color from framebuffer by coordinates.
47
+ * @public
48
+ * @param {Uint8Array} res - Normalized x - coordinate.
49
+ * @param {number} nx - Normalized x - coordinate.
50
+ * @param {number} ny - Normalized y - coordinate.
51
+ * @param {number} [w=1] - Normalized width.
52
+ * @param {number} [h=1] - Normalized height.
53
+ * @param {number} [index=0] - color attachment index.
54
+ */
55
+ readPixels(res: Uint8Array, nx: number, ny: number, index?: number, w?: number, h?: number): void;
56
+ /**
57
+ * Reads all pixels(RGBA colors) from framebuffer.
58
+ * @public
59
+ * @param {Uint8Array} res - Result array.
60
+ * @param {number} [attachmentIndex=0] - color attachment index.
61
+ */
62
+ readAllPixels(res: Uint8Array, attachmentIndex?: number): void;
63
+ /**
64
+ * Gets JavaScript image that in the framebuffer.
65
+ * @public
66
+ * @returns {HTMLImageElement} -
67
+ */
68
+ getImage(): HTMLImageElement;
69
+ }
@@ -1,16 +1,5 @@
1
- import {BaseFramebuffer, IBaseFramebufferParams} from "./BaseFramebuffer";
2
- import {ImageCanvas} from "../ImageCanvas";
3
- import {Handler} from "./Handler";
4
-
5
- export interface IFrameBufferParams extends IBaseFramebufferParams {
6
- isBare?: boolean;
7
- format?: string | string[];
8
- type?: string | string[];
9
- attachment?: string | string[];
10
- renderbufferTarget?: string;
11
- textures?: WebGLTexture[];
12
- }
13
-
1
+ import { BaseFramebuffer } from "./BaseFramebuffer";
2
+ import { ImageCanvas } from "../ImageCanvas";
14
3
  /**
15
4
  * Class represents framebuffer.
16
5
  * @class
@@ -18,55 +7,27 @@ export interface IFrameBufferParams extends IBaseFramebufferParams {
18
7
  * @param {IFrameBufferParams} [options] - Framebuffer options:
19
8
  */
20
9
  export class Framebuffer extends BaseFramebuffer {
21
-
22
- protected _isBare: boolean;
23
-
24
- protected _internalFormatArr: string[];
25
-
26
- protected _formatArr: string[];
27
-
28
- protected _typeArr: string[];
29
-
30
- protected _attachmentArr: string[];
31
-
32
- protected _renderbufferTarget: string;
33
-
34
- /**
35
- * Framebuffer texture.
36
- * @public
37
- * @type {number}
38
- */
39
- public textures: WebGLTexture[];
40
-
41
- constructor(handler: Handler, options: IFrameBufferParams = {}) {
42
-
10
+ constructor(handler, options = {}) {
43
11
  super(handler, options);
44
-
45
12
  this._isBare = options.isBare || false;
46
-
47
13
  this._internalFormatArr = options.internalFormat instanceof Array ? options.internalFormat : [options.internalFormat || "RGBA"];
48
-
49
14
  this._formatArr = options.format instanceof Array ? options.format : [options.format || "RGBA"];
50
-
51
15
  this._typeArr = options.type instanceof Array ? options.type : [options.type || "UNSIGNED_BYTE"];
52
-
53
16
  if (options.attachment instanceof Array) {
54
- this._attachmentArr = options.attachment.map((a: string, i: number) => {
17
+ this._attachmentArr = options.attachment.map((a, i) => {
55
18
  let res = a.toUpperCase();
56
19
  if (res === "COLOR_ATTACHMENT") {
57
20
  return `${res}${i.toString()}`;
58
21
  }
59
22
  return res;
60
- })
61
- } else {
62
- this._attachmentArr = [options.attachment as string || "COLOR_ATTACHMENT0"];
23
+ });
24
+ }
25
+ else {
26
+ this._attachmentArr = [options.attachment || "COLOR_ATTACHMENT0"];
63
27
  }
64
-
65
28
  this._renderbufferTarget = options.renderbufferTarget != undefined ? options.renderbufferTarget : "DEPTH_ATTACHMENT";
66
-
67
29
  this.textures = options.textures || new Array(this._size);
68
30
  }
69
-
70
31
  // static blit(sourceFramebuffer: Framebuffer, destFramebuffer: Framebuffer, glAttachment: number, glMask: number, glFilter: number) {
71
32
  // let gl = sourceFramebuffer.handler.gl!;
72
33
  //
@@ -82,83 +43,67 @@ export class Framebuffer extends BaseFramebuffer {
82
43
  // gl.bindFramebuffer(gl.READ_FRAMEBUFFER, null!);
83
44
  // gl.bindFramebuffer(gl.DRAW_FRAMEBUFFER, null!);
84
45
  // }
85
-
86
- public override destroy() {
46
+ destroy() {
87
47
  let gl = this.handler.gl;
88
-
89
- if (!gl) return;
90
-
48
+ if (!gl)
49
+ return;
91
50
  for (let i = 0; i < this.textures.length; i++) {
92
51
  gl.deleteTexture(this.textures[i]);
93
52
  }
94
53
  this.textures = new Array(this._size);
95
-
96
54
  gl.deleteFramebuffer(this._fbo);
97
55
  gl.deleteRenderbuffer(this._depthRenderbuffer);
98
-
99
56
  this._depthRenderbuffer = null;
100
57
  this._fbo = null;
101
-
102
58
  this._active = false;
103
59
  }
104
-
105
60
  /**
106
61
  * Framebuffer initialization.
107
62
  * @public
108
63
  * @override
109
64
  */
110
- public override init() {
65
+ init() {
111
66
  let gl = this.handler.gl;
112
-
113
- if (!gl) return;
114
-
67
+ if (!gl)
68
+ return;
115
69
  this._fbo = gl.createFramebuffer();
116
-
117
70
  gl.bindFramebuffer(gl.FRAMEBUFFER, this._fbo);
118
-
119
71
  if (!this._isBare) {
120
72
  let attachmentArr = [];
121
73
  for (let i = 0; i < this.textures.length; i++) {
122
74
  let ti = this.textures[i] || this.handler.createEmptyTexture2DExt(this._width, this._height, this._filter, this._internalFormatArr[i], this._formatArr[i], this._typeArr[i]);
123
-
124
- let att_i = (gl as any)[this._attachmentArr[i]];
125
-
75
+ let att_i = gl[this._attachmentArr[i]];
126
76
  if (ti) {
127
77
  this.bindOutputTexture(ti, att_i);
128
78
  this.textures[i] = ti;
129
79
  }
130
-
131
80
  if (this._attachmentArr[i] != "DEPTH_ATTACHMENT") {
132
81
  attachmentArr.push(att_i);
133
82
  }
134
83
  }
135
84
  gl.drawBuffers && gl.drawBuffers(attachmentArr);
136
85
  }
137
-
138
86
  if (this._useDepth) {
139
87
  this._depthRenderbuffer = gl.createRenderbuffer();
140
88
  gl.bindRenderbuffer(gl.RENDERBUFFER, this._depthRenderbuffer);
141
- gl.renderbufferStorage(gl.RENDERBUFFER, (gl as any)[this._depthComponent], this._width, this._height);
142
- gl.framebufferRenderbuffer(gl.FRAMEBUFFER, (gl as any)[this._renderbufferTarget], gl.RENDERBUFFER, this._depthRenderbuffer);
89
+ gl.renderbufferStorage(gl.RENDERBUFFER, gl[this._depthComponent], this._width, this._height);
90
+ gl.framebufferRenderbuffer(gl.FRAMEBUFFER, gl[this._renderbufferTarget], gl.RENDERBUFFER, this._depthRenderbuffer);
143
91
  gl.bindRenderbuffer(gl.RENDERBUFFER, null);
144
92
  }
145
-
146
- gl.bindFramebuffer(gl.FRAMEBUFFER, null!);
93
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
147
94
  }
148
-
149
95
  /**
150
96
  * Bind buffer texture.
151
97
  * @public
152
98
  * @param {WebGLTexture} texture - Output texture.
153
99
  * @param {number} [glAttachment=0] - color attachment index.
154
100
  */
155
- public bindOutputTexture(texture: WebGLTexture, glAttachment?: number) {
156
- let gl = this.handler.gl!;
101
+ bindOutputTexture(texture, glAttachment) {
102
+ let gl = this.handler.gl;
157
103
  gl.bindTexture(gl.TEXTURE_2D, texture);
158
104
  gl.framebufferTexture2D(gl.FRAMEBUFFER, glAttachment || gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture, 0);
159
- gl.bindTexture(gl.TEXTURE_2D, null!);
105
+ gl.bindTexture(gl.TEXTURE_2D, null);
160
106
  }
161
-
162
107
  /**
163
108
  * Gets pixel RGBA color from framebuffer by coordinates.
164
109
  * @public
@@ -169,34 +114,32 @@ export class Framebuffer extends BaseFramebuffer {
169
114
  * @param {number} [h=1] - Normalized height.
170
115
  * @param {number} [index=0] - color attachment index.
171
116
  */
172
- public readPixels(res: Uint8Array, nx: number, ny: number, index: number = 0, w: number = 1, h: number = 1) {
173
- let gl = this.handler.gl!;
117
+ readPixels(res, nx, ny, index = 0, w = 1, h = 1) {
118
+ let gl = this.handler.gl;
174
119
  gl.bindFramebuffer(gl.FRAMEBUFFER, this._fbo);
175
120
  gl.readBuffer && gl.readBuffer(gl.COLOR_ATTACHMENT0 + index || 0);
176
- gl.readPixels(nx * this._width, ny * this._height, w, h, gl.RGBA, (gl as any)[this._typeArr[index]], res);
177
- gl.bindFramebuffer(gl.FRAMEBUFFER, null!);
121
+ gl.readPixels(nx * this._width, ny * this._height, w, h, gl.RGBA, gl[this._typeArr[index]], res);
122
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
178
123
  }
179
-
180
124
  /**
181
125
  * Reads all pixels(RGBA colors) from framebuffer.
182
126
  * @public
183
127
  * @param {Uint8Array} res - Result array.
184
128
  * @param {number} [attachmentIndex=0] - color attachment index.
185
129
  */
186
- public readAllPixels(res: Uint8Array, attachmentIndex: number = 0) {
187
- let gl = this.handler.gl!;
130
+ readAllPixels(res, attachmentIndex = 0) {
131
+ let gl = this.handler.gl;
188
132
  gl.bindFramebuffer(gl.FRAMEBUFFER, this._fbo);
189
133
  gl.readBuffer && gl.readBuffer(gl.COLOR_ATTACHMENT0 + attachmentIndex);
190
- gl.readPixels(0, 0, this._width, this._height, gl.RGBA, (gl as any)[this._typeArr[attachmentIndex]], res);
191
- gl.bindFramebuffer(gl.FRAMEBUFFER, null!);
134
+ gl.readPixels(0, 0, this._width, this._height, gl.RGBA, gl[this._typeArr[attachmentIndex]], res);
135
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
192
136
  }
193
-
194
137
  /**
195
138
  * Gets JavaScript image that in the framebuffer.
196
139
  * @public
197
140
  * @returns {HTMLImageElement} -
198
141
  */
199
- public getImage(): HTMLImageElement {
142
+ getImage() {
200
143
  let data = new Uint8Array(4 * this._width * this._height);
201
144
  this.readAllPixels(data);
202
145
  let imageCanvas = new ImageCanvas(this._width, this._height);