@openglobus/og 0.18.0 → 0.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (476) hide show
  1. package/README.md +8 -8
  2. package/lib/@openglobus/og.esm.js +2 -0
  3. package/lib/@openglobus/og.esm.js.map +1 -0
  4. package/lib/@openglobus/og.umd.js +2 -0
  5. package/lib/@openglobus/og.umd.js.map +1 -0
  6. package/lib/js/Clock.d.ts +106 -0
  7. package/{src/Clock.ts → lib/js/Clock.js} +31 -126
  8. package/lib/js/Deferred.d.ts +6 -0
  9. package/lib/js/Deferred.js +13 -0
  10. package/lib/js/Events.d.ts +90 -0
  11. package/{src/Events.ts → lib/js/Events.js} +29 -84
  12. package/lib/js/Extent.d.ts +145 -0
  13. package/{src/Extent.ts → lib/js/Extent.js} +74 -120
  14. package/lib/js/Globe.d.ts +132 -0
  15. package/{src/Globe.ts → lib/js/Globe.js} +61 -159
  16. package/lib/js/ImageCanvas.d.ts +128 -0
  17. package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
  18. package/lib/js/Lock.d.ts +15 -0
  19. package/{src/Lock.ts → lib/js/Lock.js} +7 -21
  20. package/lib/js/LonLat.d.ts +128 -0
  21. package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
  22. package/lib/js/Object3d.d.ts +49 -0
  23. package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
  24. package/lib/js/Popup.d.ts +46 -0
  25. package/{src/Popup.ts → lib/js/Popup.js} +42 -110
  26. package/lib/js/QueueArray.d.ts +16 -0
  27. package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
  28. package/lib/js/Rectangle.d.ts +76 -0
  29. package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
  30. package/lib/js/Stack.d.ts +20 -0
  31. package/{src/Stack.ts → lib/js/Stack.js} +13 -29
  32. package/lib/js/astro/astro.d.ts +39 -0
  33. package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
  34. package/lib/js/astro/earth.d.ts +8 -0
  35. package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
  36. package/lib/js/astro/jd.d.ts +234 -0
  37. package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
  38. package/lib/js/astro/orbit.d.ts +5 -0
  39. package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
  40. package/lib/js/astro/rotation.d.ts +2 -0
  41. package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
  42. package/lib/js/bv/Box.d.ts +32 -0
  43. package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
  44. package/lib/js/bv/Sphere.d.ts +37 -0
  45. package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
  46. package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
  47. package/lib/js/bv/index.js +3 -0
  48. package/lib/js/camera/Camera.d.ts +314 -0
  49. package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
  50. package/lib/js/camera/Frustum.d.ts +139 -0
  51. package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
  52. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  53. package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
  54. package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
  55. package/lib/js/camera/index.js +3 -0
  56. package/lib/js/cons.d.ts +40 -0
  57. package/{src/cons.ts → lib/js/cons.js} +10 -22
  58. package/lib/js/control/Atmosphere.d.ts +16 -0
  59. package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
  60. package/lib/js/control/CompassButton.d.ts +16 -0
  61. package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
  62. package/lib/js/control/Control.d.ts +100 -0
  63. package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
  64. package/lib/js/control/DebugInfo.d.ts +25 -0
  65. package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
  66. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  67. package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
  68. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  69. package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
  70. package/lib/js/control/EarthNavigation.d.ts +50 -0
  71. package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
  72. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  73. package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
  74. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  75. package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
  76. package/lib/js/control/LayerAnimation.d.ts +71 -0
  77. package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
  78. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  79. package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
  80. package/lib/js/control/Lighting.d.ts +49 -0
  81. package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
  82. package/lib/js/control/MouseNavigation.d.ts +62 -0
  83. package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
  84. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  85. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  86. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  87. package/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
  88. package/lib/js/control/ScaleControl.d.ts +24 -0
  89. package/lib/js/control/ScaleControl.js +91 -0
  90. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  91. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  92. package/lib/js/control/ShowFps.d.ts +9 -0
  93. package/lib/js/control/ShowFps.js +20 -0
  94. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  95. package/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
  96. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  97. package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
  98. package/lib/js/control/Sun.d.ts +33 -0
  99. package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
  100. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  101. package/lib/js/control/ToggleWireframe.js +28 -0
  102. package/lib/js/control/TouchNavigation.d.ts +52 -0
  103. package/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
  104. package/lib/js/control/ZoomControl.d.ts +27 -0
  105. package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
  106. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  107. package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
  108. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  109. package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
  110. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  111. package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
  112. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  113. package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
  114. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  115. package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
  116. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  117. package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
  118. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  119. package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
  120. package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
  121. package/lib/js/control/index.js +28 -0
  122. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  123. package/lib/js/control/ruler/Ruler.js +23 -0
  124. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  125. package/lib/js/control/ruler/RulerScene.js +324 -0
  126. package/lib/js/control/selection/Selection.d.ts +55 -0
  127. package/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
  128. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  129. package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
  130. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  131. package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
  132. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  133. package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
  134. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  135. package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
  136. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  137. package/lib/js/control/timeline/timelineUtils.js +112 -0
  138. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  139. package/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
  140. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  141. package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
  142. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  143. package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
  144. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  145. package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +85 -267
  146. package/lib/js/ellipsoid/index.d.ts +3 -0
  147. package/lib/js/ellipsoid/index.js +3 -0
  148. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  149. package/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
  150. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  151. package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
  152. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  153. package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
  154. package/lib/js/entity/Billboard.d.ts +113 -0
  155. package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
  156. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  157. package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
  158. package/lib/js/entity/Entity.d.ts +354 -0
  159. package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +102 -374
  160. package/lib/js/entity/EntityCollection.d.ts +363 -0
  161. package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +57 -359
  162. package/lib/js/entity/GeoObject.d.ts +138 -0
  163. package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
  164. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  165. package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
  166. package/lib/js/entity/Geometry.d.ts +111 -0
  167. package/lib/js/entity/Geometry.js +283 -0
  168. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  169. package/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
  170. package/lib/js/entity/Label.d.ts +207 -0
  171. package/{src/entity/Label.ts → lib/js/entity/Label.js} +63 -165
  172. package/lib/js/entity/LabelHandler.d.ts +65 -0
  173. package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
  174. package/lib/js/entity/LabelWorker.d.ts +15 -0
  175. package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
  176. package/lib/js/entity/PointCloud.d.ts +179 -0
  177. package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
  178. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  179. package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
  180. package/lib/js/entity/Polyline.d.ts +337 -0
  181. package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
  182. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  183. package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
  184. package/lib/js/entity/Ray.d.ts +133 -0
  185. package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
  186. package/lib/js/entity/RayHandler.d.ts +70 -0
  187. package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
  188. package/lib/js/entity/Strip.d.ts +127 -0
  189. package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
  190. package/lib/js/entity/StripHandler.d.ts +42 -0
  191. package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
  192. package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
  193. package/lib/js/entity/index.js +11 -0
  194. package/lib/js/index.d.ts +33 -0
  195. package/lib/js/index.js +33 -0
  196. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  197. package/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
  198. package/lib/js/input/MouseHandler.d.ts +16 -0
  199. package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
  200. package/lib/js/input/TouchHandler.d.ts +11 -0
  201. package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
  202. package/lib/js/input/input.d.ts +3 -0
  203. package/{src/input/input.ts → lib/js/input/input.js} +1 -1
  204. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  205. package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
  206. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  207. package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
  208. package/lib/js/layer/GeoImage.d.ts +61 -0
  209. package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
  210. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  211. package/lib/js/layer/GeoTexture2d.js +37 -0
  212. package/lib/js/layer/GeoVideo.d.ts +68 -0
  213. package/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
  214. package/lib/js/layer/KML.d.ts +72 -0
  215. package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
  216. package/lib/js/layer/Layer.d.ts +401 -0
  217. package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
  218. package/lib/js/layer/Material.d.ts +34 -0
  219. package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
  220. package/lib/js/layer/Vector.d.ts +243 -0
  221. package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +155 -426
  222. package/lib/js/layer/WMS.d.ts +75 -0
  223. package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
  224. package/lib/js/layer/XYZ.d.ts +149 -0
  225. package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
  226. package/lib/js/layer/index.d.ts +11 -0
  227. package/lib/js/layer/index.js +11 -0
  228. package/lib/js/light/LightSource.d.ts +174 -0
  229. package/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
  230. package/lib/js/math/Line2.d.ts +11 -0
  231. package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
  232. package/lib/js/math/Line3.d.ts +28 -0
  233. package/lib/js/math/Line3.js +85 -0
  234. package/lib/js/math/Mat3.d.ts +77 -0
  235. package/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
  236. package/lib/js/math/Mat4.d.ts +195 -0
  237. package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
  238. package/lib/js/math/Plane.d.ts +20 -0
  239. package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
  240. package/lib/js/math/Quat.d.ts +373 -0
  241. package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
  242. package/lib/js/math/Ray.d.ts +76 -0
  243. package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
  244. package/lib/js/math/Vec2.d.ts +310 -0
  245. package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
  246. package/lib/js/math/Vec3.d.ts +472 -0
  247. package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
  248. package/lib/js/math/Vec4.d.ts +163 -0
  249. package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
  250. package/lib/js/math/coder.d.ts +51 -0
  251. package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
  252. package/lib/js/math/index.d.ts +11 -0
  253. package/lib/js/math/index.js +11 -0
  254. package/lib/js/math.d.ts +266 -0
  255. package/{src/math.ts → lib/js/math.js} +37 -85
  256. package/lib/js/mercator.d.ts +92 -0
  257. package/{src/mercator.ts → lib/js/mercator.js} +13 -37
  258. package/lib/js/proj/EPSG3857.d.ts +9 -0
  259. package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
  260. package/lib/js/proj/EPSG4326.d.ts +9 -0
  261. package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
  262. package/lib/js/proj/Proj.d.ts +43 -0
  263. package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
  264. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  265. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  266. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  267. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  268. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  269. package/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
  270. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  271. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  272. package/lib/js/quadTree/Node.d.ts +61 -0
  273. package/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
  274. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  275. package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
  276. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  277. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  278. package/lib/js/quadTree/index.d.ts +12 -0
  279. package/lib/js/quadTree/index.js +12 -0
  280. package/lib/js/quadTree/quadTree.d.ts +40 -0
  281. package/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
  282. package/lib/js/renderer/Renderer.d.ts +320 -0
  283. package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +265 -622
  284. package/lib/js/renderer/RendererEvents.d.ts +239 -0
  285. package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +158 -472
  286. package/lib/js/scene/Axes.d.ts +12 -0
  287. package/lib/js/scene/Axes.js +59 -0
  288. package/lib/js/scene/BaseNode.d.ts +61 -0
  289. package/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
  290. package/lib/js/scene/Planet.d.ts +623 -0
  291. package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +257 -937
  292. package/lib/js/scene/RenderNode.d.ts +150 -0
  293. package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
  294. package/lib/js/scene/SkyBox.d.ts +13 -0
  295. package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
  296. package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
  297. package/lib/js/scene/index.js +5 -0
  298. package/lib/js/segment/Segment.d.ts +278 -0
  299. package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
  300. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  301. package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
  302. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  303. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  304. package/lib/js/segment/Slice.d.ts +13 -0
  305. package/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
  306. package/lib/js/segment/segmentHelper.d.ts +18 -0
  307. package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
  308. package/lib/js/shaders/atmos.d.ts +4 -0
  309. package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
  310. package/lib/js/shaders/billboard.d.ts +3 -0
  311. package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
  312. package/lib/js/shaders/bloom.d.ts +2 -0
  313. package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
  314. package/lib/js/shaders/blur.d.ts +3 -0
  315. package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
  316. package/lib/js/shaders/depth.d.ts +2 -0
  317. package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
  318. package/lib/js/shaders/drawnode.d.ts +8 -0
  319. package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
  320. package/lib/js/shaders/geoObject.d.ts +3 -0
  321. package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
  322. package/lib/js/shaders/label.d.ts +4 -0
  323. package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
  324. package/lib/js/shaders/lumFilter.d.ts +2 -0
  325. package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
  326. package/lib/js/shaders/pickingMask.d.ts +2 -0
  327. package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
  328. package/lib/js/shaders/pointCloud.d.ts +2 -0
  329. package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
  330. package/lib/js/shaders/polyline.d.ts +3 -0
  331. package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
  332. package/lib/js/shaders/ray.d.ts +2 -0
  333. package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
  334. package/lib/js/shaders/screenFrame.d.ts +2 -0
  335. package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
  336. package/lib/js/shaders/skybox.d.ts +2 -0
  337. package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
  338. package/lib/js/shaders/toneMapping.d.ts +2 -0
  339. package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
  340. package/lib/js/shaders/utils.d.ts +1 -0
  341. package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
  342. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  343. package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
  344. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  345. package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
  346. package/lib/js/terrain/Geoid.d.ts +33 -0
  347. package/lib/js/terrain/Geoid.js +191 -0
  348. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  349. package/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +84 -241
  350. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  351. package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
  352. package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
  353. package/lib/js/terrain/index.js +5 -0
  354. package/lib/js/ui/Button.d.ts +32 -0
  355. package/lib/js/ui/Button.js +78 -0
  356. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  357. package/lib/js/ui/ButtonGroup.js +41 -0
  358. package/lib/js/ui/Dialog.d.ts +55 -0
  359. package/lib/js/ui/Dialog.js +173 -0
  360. package/lib/js/ui/Slider.d.ts +38 -0
  361. package/lib/js/ui/Slider.js +129 -0
  362. package/lib/js/ui/ToggleButton.d.ts +20 -0
  363. package/lib/js/ui/ToggleButton.js +42 -0
  364. package/lib/js/ui/View.d.ts +37 -0
  365. package/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
  366. package/lib/js/ui/icons.d.ts +1 -0
  367. package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
  368. package/lib/js/utils/BaseWorker.d.ts +14 -0
  369. package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
  370. package/lib/js/utils/FontAtlas.d.ts +82 -0
  371. package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +46 -182
  372. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  373. package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
  374. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  375. package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
  376. package/lib/js/utils/Loader.d.ts +63 -0
  377. package/lib/js/utils/Loader.js +156 -0
  378. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  379. package/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
  380. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  381. package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
  382. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  383. package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
  384. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  385. package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
  386. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  387. package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
  388. package/lib/js/utils/colorTable.d.ts +3 -0
  389. package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
  390. package/lib/js/utils/earcut.d.ts +7 -0
  391. package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
  392. package/lib/js/utils/objParser.d.ts +24 -0
  393. package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
  394. package/lib/js/utils/shared.d.ts +267 -0
  395. package/{src/utils/shared.ts → lib/js/utils/shared.js} +185 -342
  396. package/lib/js/utils/units.d.ts +16 -0
  397. package/lib/js/utils/units.js +61 -0
  398. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  399. package/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
  400. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  401. package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
  402. package/lib/js/webgl/Handler.d.ts +473 -0
  403. package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
  404. package/lib/js/webgl/Multisample.d.ts +27 -0
  405. package/lib/js/webgl/Multisample.js +77 -0
  406. package/lib/js/webgl/Program.d.ts +159 -0
  407. package/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
  408. package/lib/js/webgl/ProgramController.d.ts +86 -0
  409. package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
  410. package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
  411. package/lib/js/webgl/index.js +6 -0
  412. package/lib/js/webgl/types.d.ts +9 -0
  413. package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
  414. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  415. package/lib/js/webgl/variableHandlers.js +78 -0
  416. package/package.json +23 -34
  417. package/dist/@openglobus/og.esm.js +0 -2
  418. package/dist/@openglobus/og.esm.js.map +0 -1
  419. package/dist/@openglobus/og.umd.js +0 -2
  420. package/dist/@openglobus/og.umd.js.map +0 -1
  421. package/src/Deferred.ts +0 -17
  422. package/src/control/MouseWheelZoomControl.ts +0 -269
  423. package/src/control/ScaleControl.ts +0 -131
  424. package/src/control/SegmentBoundVisualization.ts +0 -50
  425. package/src/control/ShowFps.ts +0 -28
  426. package/src/control/ToggleWireframe.ts +0 -35
  427. package/src/control/ruler/Ruler.ts +0 -35
  428. package/src/control/ruler/RulerScene.ts +0 -437
  429. package/src/control/timeline/timelineUtils.ts +0 -133
  430. package/src/ellipsoid/index.ts +0 -4
  431. package/src/entity/Geometry.ts +0 -486
  432. package/src/index.ts +0 -173
  433. package/src/layer/GeoTexture2d.ts +0 -56
  434. package/src/layer/index.ts +0 -12
  435. package/src/math/Line3.ts +0 -162
  436. package/src/math/index.ts +0 -26
  437. package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
  438. package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
  439. package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
  440. package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
  441. package/src/quadTree/index.ts +0 -14
  442. package/src/scene/Axes.ts +0 -78
  443. package/src/segment/SegmentLonLatWgs84.ts +0 -33
  444. package/src/terrain/Geoid.ts +0 -273
  445. package/src/ui/Button.ts +0 -121
  446. package/src/ui/ButtonGroup.ts +0 -63
  447. package/src/ui/Dialog.ts +0 -244
  448. package/src/ui/Slider.ts +0 -188
  449. package/src/ui/ToggleButton.ts +0 -68
  450. package/src/utils/Loader.ts +0 -247
  451. package/src/utils/units.ts +0 -78
  452. package/src/webgl/Multisample.ts +0 -153
  453. package/src/webgl/variableHandlers.ts +0 -114
  454. /package/{dist → lib}/@openglobus/og.css +0 -0
  455. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
  456. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
  457. /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  458. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
  459. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
  460. /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  461. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
  462. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
  463. /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  464. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
  465. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
  466. /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  467. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
  468. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
  469. /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  470. /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
  471. /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
  472. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
  473. /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
  474. /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
  475. /package/{dist → lib}/@openglobus/res/night.png +0 -0
  476. /package/{dist → lib}/@openglobus/res/spec.png +0 -0
@@ -0,0 +1,138 @@
1
+ import { Entity } from "./Entity";
2
+ import { Quat, Vec3, Vec4 } from "../math/index";
3
+ import { InstanceData } from "./GeoObjectHandler";
4
+ import { NumberArray3 } from "../math/Vec3";
5
+ import { NumberArray4 } from "../math/Vec4";
6
+ import { Object3d } from "../Object3d";
7
+ import { GeoObjectHandler } from "./GeoObjectHandler";
8
+ export interface IGeoObjectParams {
9
+ object3d: Object3d;
10
+ tag?: string;
11
+ position?: Vec3 | NumberArray3;
12
+ pitch?: number;
13
+ yaw?: number;
14
+ roll?: number;
15
+ scale?: number;
16
+ color?: Vec4 | NumberArray4 | string;
17
+ }
18
+ /**
19
+ * @class
20
+ * @param {Object} options - Geo object parameters:
21
+ * @param {Vec3} [options.position] - Geo object position.
22
+ *
23
+ * @todo: GeoObject and GeoObjectHandler provides instanced objects only.
24
+ * It would be nice if it could provide not instanced rendering loop too.
25
+ */
26
+ declare class GeoObject {
27
+ protected _tag: string;
28
+ instanced: boolean;
29
+ /**
30
+ * Entity instance that holds this geo object.
31
+ * @public
32
+ * @type {Entity}
33
+ */
34
+ _entity: Entity | null;
35
+ /**
36
+ * Geo object center cartesian position.
37
+ * @protected
38
+ * @type {Vec3}
39
+ */
40
+ protected _position: Vec3;
41
+ _positionHigh: Vec3;
42
+ _positionLow: Vec3;
43
+ protected _pitch: number;
44
+ protected _yaw: number;
45
+ protected _roll: number;
46
+ protected _scale: number;
47
+ /**
48
+ * RGBA color.
49
+ * @public
50
+ * @type {Vec4}
51
+ */
52
+ _color: Vec4;
53
+ _direction: Vec3;
54
+ _handler: GeoObjectHandler | null;
55
+ _handlerIndex: number;
56
+ _tagData: InstanceData | null;
57
+ _tagDataIndex: number;
58
+ protected _object3d: Object3d;
59
+ protected _visibility: boolean;
60
+ protected _qNorthFrame: Quat;
61
+ constructor(options: IGeoObjectParams);
62
+ get tag(): string;
63
+ getPosition(): Vec3;
64
+ getPitch(): number;
65
+ getYaw(): number;
66
+ getRoll(): number;
67
+ getDirection(): Vec3;
68
+ get object3d(): Object3d;
69
+ get vertices(): number[];
70
+ get normals(): number[];
71
+ get texCoords(): number[];
72
+ get indices(): number[];
73
+ /**
74
+ * Sets geo object opacity.
75
+ * @public
76
+ * @param {number} a - Billboard opacity.
77
+ */
78
+ setOpacity(a: number): void;
79
+ /**
80
+ * Sets color.
81
+ * @public
82
+ * @param {number} r - Red.
83
+ * @param {number} g - Green.
84
+ * @param {number} b - Blue.
85
+ * @param {number} [a] - Alpha.
86
+ */
87
+ setColor(r: number, g: number, b: number, a?: number): void;
88
+ /**
89
+ * Sets color.
90
+ * @public
91
+ * @param {Vec3 | Vec4} color - RGBA vector.
92
+ */
93
+ setColor4v(color: Vec3 | Vec4): void;
94
+ /**
95
+ * Sets geo object visibility.
96
+ * @public
97
+ * @param {boolean} visibility - Visibility flag.
98
+ */
99
+ setVisibility(visibility: boolean): void;
100
+ /**
101
+ * Returns geo object visibility.
102
+ * @public
103
+ * @returns {boolean}
104
+ */
105
+ getVisibility(): boolean;
106
+ /**
107
+ * Sets geo object position.
108
+ * @public
109
+ * @param {number} x - X coordinate.
110
+ * @param {number} y - Y coordinate.
111
+ * @param {number} z - Z coordinate.
112
+ */
113
+ setPosition(x: number, y: number, z: number): void;
114
+ /**
115
+ * Sets geo object position.
116
+ * @public
117
+ * @param {Vec3} position - Cartesian coordinates.
118
+ */
119
+ setPosition3v(position: Vec3): void;
120
+ setYaw(yaw: number): void;
121
+ setPitch(pitch: number): void;
122
+ setRoll(roll: number): void;
123
+ setScale(scale: number): void;
124
+ getScale(): number;
125
+ /**
126
+ * Removes geo object from handler.
127
+ * @public
128
+ */
129
+ remove(): void;
130
+ /**
131
+ * Sets billboard picking color.
132
+ * @public
133
+ * @param {Vec3} color - Picking color.
134
+ */
135
+ setPickingColor3v(color: Vec3): void;
136
+ updateDirection(): void;
137
+ }
138
+ export { GeoObject };
@@ -1,23 +1,5 @@
1
1
  import * as utils from "../utils/shared";
2
- import {Entity} from "./Entity";
3
- import {Quat, Vec3, Vec4} from "../math/index";
4
- import {InstanceData} from "./GeoObjectHandler";
5
- import {NumberArray3} from "../math/Vec3";
6
- import {NumberArray4} from "../math/Vec4";
7
- import {Object3d} from "../Object3d";
8
- import {GeoObjectHandler} from "./GeoObjectHandler";
9
-
10
- export interface IGeoObjectParams {
11
- object3d: Object3d;
12
- tag?: string;
13
- position?: Vec3 | NumberArray3;
14
- pitch?: number;
15
- yaw?: number;
16
- roll?: number;
17
- scale?: number;
18
- color?: Vec4 | NumberArray4 | string;
19
- }
20
-
2
+ import { Quat, Vec3 } from "../math/index";
21
3
  /**
22
4
  * @class
23
5
  * @param {Object} options - Geo object parameters:
@@ -27,144 +9,71 @@ export interface IGeoObjectParams {
27
9
  * It would be nice if it could provide not instanced rendering loop too.
28
10
  */
29
11
  class GeoObject {
30
- protected _tag: string;
31
-
32
- public instanced: boolean;
33
-
34
- /**
35
- * Entity instance that holds this geo object.
36
- * @public
37
- * @type {Entity}
38
- */
39
- public _entity: Entity | null;
40
-
41
- /**
42
- * Geo object center cartesian position.
43
- * @protected
44
- * @type {Vec3}
45
- */
46
- protected _position: Vec3;
47
- public _positionHigh: Vec3;
48
- public _positionLow: Vec3;
49
-
50
- protected _pitch: number;
51
- protected _yaw: number;
52
- protected _roll: number;
53
-
54
- protected _scale: number;
55
-
56
- /**
57
- * RGBA color.
58
- * @public
59
- * @type {Vec4}
60
- */
61
- public _color: Vec4;
62
-
63
- public _direction: Vec3;
64
-
65
- public _handler: GeoObjectHandler | null;
66
- public _handlerIndex = -1;
67
-
68
- public _tagData: InstanceData | null;
69
- public _tagDataIndex: number;
70
-
71
- protected _object3d: Object3d;
72
-
73
- protected _visibility: boolean;
74
-
75
- protected _qNorthFrame: Quat;
76
-
77
- constructor(options: IGeoObjectParams) {
78
-
12
+ constructor(options) {
13
+ this._handlerIndex = -1;
79
14
  this._tag = options.tag || "none";
80
-
81
15
  this.instanced = true;
82
-
83
16
  this._entity = null;
84
-
85
17
  this._position = utils.createVector3(options.position);
86
-
87
18
  this._positionHigh = new Vec3();
88
19
  this._positionLow = new Vec3();
89
20
  Vec3.doubleToTwoFloats(this._position, this._positionHigh, this._positionLow);
90
-
91
21
  this._pitch = options.pitch || 0.0;
92
22
  this._yaw = options.yaw || 0.0;
93
23
  this._roll = options.roll || 0.0;
94
-
95
24
  this._scale = options.scale || 1.0;
96
-
97
25
  this._color = utils.createColorRGBA(options.color);
98
-
99
26
  this._direction = new Vec3(0, 1, 0);
100
-
101
27
  this._handler = null;
102
28
  this._handlerIndex = -1;
103
-
104
29
  this._tagData = null;
105
30
  this._tagDataIndex = -1;
106
-
107
31
  this._object3d = options.object3d;
108
-
109
32
  this._visibility = true;
110
-
111
33
  this._qNorthFrame = new Quat();
112
34
  }
113
-
114
- public get tag() {
35
+ get tag() {
115
36
  return this._tag;
116
37
  }
117
-
118
- public getPosition(): Vec3 {
38
+ getPosition() {
119
39
  return this._position;
120
40
  }
121
-
122
- public getPitch(): number {
41
+ getPitch() {
123
42
  return this._pitch;
124
43
  }
125
-
126
- public getYaw(): number {
44
+ getYaw() {
127
45
  return this._yaw;
128
46
  }
129
-
130
- public getRoll(): number {
47
+ getRoll() {
131
48
  return this._roll;
132
49
  }
133
-
134
- public getDirection(): Vec3 {
50
+ getDirection() {
135
51
  return this._direction;
136
52
  }
137
-
138
- public get object3d(): Object3d {
53
+ get object3d() {
139
54
  return this._object3d;
140
55
  }
141
-
142
- public get vertices(): number[] {
56
+ get vertices() {
143
57
  return this._object3d.vertices;
144
58
  }
145
-
146
- public get normals(): number[] {
59
+ get normals() {
147
60
  return this._object3d.normals;
148
61
  }
149
-
150
- public get texCoords(): number[] {
62
+ get texCoords() {
151
63
  return this._object3d.texCoords;
152
64
  }
153
-
154
- public get indices(): number[] {
65
+ get indices() {
155
66
  return this._object3d.indices;
156
67
  }
157
-
158
68
  /**
159
69
  * Sets geo object opacity.
160
70
  * @public
161
71
  * @param {number} a - Billboard opacity.
162
72
  */
163
- public setOpacity(a: number) {
73
+ setOpacity(a) {
164
74
  this._color.w = a;
165
75
  this.setColor(this._color.x, this._color.y, this._color.z, a);
166
76
  }
167
-
168
77
  /**
169
78
  * Sets color.
170
79
  * @public
@@ -173,46 +82,42 @@ class GeoObject {
173
82
  * @param {number} b - Blue.
174
83
  * @param {number} [a] - Alpha.
175
84
  */
176
- public setColor(r: number, g: number, b: number, a?: number) {
85
+ setColor(r, g, b, a) {
177
86
  this._color.x = r;
178
87
  this._color.y = g;
179
88
  this._color.z = b;
180
89
  a != undefined && (this._color.w = a);
181
- this._handler && this._handler.setRgbaArr(this._tagData!, this._tagDataIndex, this._color);
90
+ this._handler && this._handler.setRgbaArr(this._tagData, this._tagDataIndex, this._color);
182
91
  }
183
-
184
92
  /**
185
93
  * Sets color.
186
94
  * @public
187
95
  * @param {Vec3 | Vec4} color - RGBA vector.
188
96
  */
189
- public setColor4v(color: Vec3 | Vec4) {
97
+ setColor4v(color) {
190
98
  this._color.x = color.x;
191
99
  this._color.y = color.y;
192
100
  this._color.z = color.z;
193
- (color as Vec4).w != undefined && (this._color.w = (color as Vec4).w);
194
- this._handler && this._handler.setRgbaArr(this._tagData!, this._tagDataIndex, this._color);
101
+ color.w != undefined && (this._color.w = color.w);
102
+ this._handler && this._handler.setRgbaArr(this._tagData, this._tagDataIndex, this._color);
195
103
  }
196
-
197
104
  /**
198
105
  * Sets geo object visibility.
199
106
  * @public
200
107
  * @param {boolean} visibility - Visibility flag.
201
108
  */
202
- public setVisibility(visibility: boolean) {
109
+ setVisibility(visibility) {
203
110
  this._visibility = visibility;
204
- this._handler && this._handler.setVisibility(this._tagData!, this._tagDataIndex, visibility);
111
+ this._handler && this._handler.setVisibility(this._tagData, this._tagDataIndex, visibility);
205
112
  }
206
-
207
113
  /**
208
114
  * Returns geo object visibility.
209
115
  * @public
210
116
  * @returns {boolean}
211
117
  */
212
- public getVisibility(): boolean {
118
+ getVisibility() {
213
119
  return this._visibility;
214
120
  }
215
-
216
121
  /**
217
122
  * Sets geo object position.
218
123
  * @public
@@ -220,80 +125,70 @@ class GeoObject {
220
125
  * @param {number} y - Y coordinate.
221
126
  * @param {number} z - Z coordinate.
222
127
  */
223
- public setPosition(x: number, y: number, z: number) {
128
+ setPosition(x, y, z) {
224
129
  this._position.x = x;
225
130
  this._position.y = y;
226
131
  this._position.z = z;
227
132
  Vec3.doubleToTwoFloats(this._position, this._positionHigh, this._positionLow);
228
133
  this._handler &&
229
- this._handler.setPositionArr(this._tagData!, this._tagDataIndex, this._positionHigh, this._positionLow);
134
+ this._handler.setPositionArr(this._tagData, this._tagDataIndex, this._positionHigh, this._positionLow);
230
135
  this.updateDirection();
231
136
  }
232
-
233
137
  /**
234
138
  * Sets geo object position.
235
139
  * @public
236
140
  * @param {Vec3} position - Cartesian coordinates.
237
141
  */
238
- public setPosition3v(position: Vec3) {
142
+ setPosition3v(position) {
239
143
  this._position.x = position.x;
240
144
  this._position.y = position.y;
241
145
  this._position.z = position.z;
242
146
  Vec3.doubleToTwoFloats(position, this._positionHigh, this._positionLow);
243
- this._handler && this._handler.setPositionArr(this._tagData!, this._tagDataIndex, this._positionHigh, this._positionLow);
147
+ this._handler && this._handler.setPositionArr(this._tagData, this._tagDataIndex, this._positionHigh, this._positionLow);
244
148
  this.updateDirection();
245
149
  }
246
-
247
- public setYaw(yaw: number) {
150
+ setYaw(yaw) {
248
151
  this._yaw = yaw;
249
152
  this.updateDirection();
250
153
  }
251
-
252
- public setPitch(pitch: number) {
154
+ setPitch(pitch) {
253
155
  this._pitch = pitch;
254
- this._handler && this._handler.setPitchRollArr(this._tagData!, this._tagDataIndex, pitch, this._roll);
156
+ this._handler && this._handler.setPitchRollArr(this._tagData, this._tagDataIndex, pitch, this._roll);
255
157
  }
256
-
257
- public setRoll(roll: number) {
158
+ setRoll(roll) {
258
159
  this._roll = roll;
259
- this._handler && this._handler.setPitchRollArr(this._tagData!, this._tagDataIndex, this._pitch, roll);
160
+ this._handler && this._handler.setPitchRollArr(this._tagData, this._tagDataIndex, this._pitch, roll);
260
161
  }
261
-
262
- public setScale(scale: number) {
162
+ setScale(scale) {
263
163
  this._scale = scale;
264
- this._handler && this._handler.setScaleArr(this._tagData!, this._tagDataIndex, scale);
164
+ this._handler && this._handler.setScaleArr(this._tagData, this._tagDataIndex, scale);
265
165
  }
266
-
267
- public getScale(): number {
166
+ getScale() {
268
167
  return this._scale;
269
168
  }
270
-
271
169
  /**
272
170
  * Removes geo object from handler.
273
171
  * @public
274
172
  */
275
- public remove() {
173
+ remove() {
276
174
  this._entity = null;
277
175
  this._handler && this._handler.remove(this);
278
176
  }
279
-
280
177
  /**
281
178
  * Sets billboard picking color.
282
179
  * @public
283
180
  * @param {Vec3} color - Picking color.
284
181
  */
285
- public setPickingColor3v(color: Vec3) {
286
- this._handler && this._handler.setPickingColorArr(this._tagData!, this._tagDataIndex, color);
182
+ setPickingColor3v(color) {
183
+ this._handler && this._handler.setPickingColorArr(this._tagData, this._tagDataIndex, color);
287
184
  }
288
-
289
- public updateDirection() {
185
+ updateDirection() {
290
186
  if (this._handler && this._handler._planet) {
291
187
  this._qNorthFrame = this._handler._planet.getNorthFrameRotation(this._position);
292
188
  let qq = Quat.yRotation(this._yaw).mul(this._qNorthFrame).conjugate();
293
189
  this._direction = qq.mulVec3(new Vec3(0.0, 0.0, -1.0)).normalize();
294
- this._handler.setDirectionArr(this._tagData!, this._tagDataIndex, this._direction);
190
+ this._handler.setDirectionArr(this._tagData, this._tagDataIndex, this._direction);
295
191
  }
296
192
  }
297
193
  }
298
-
299
- export {GeoObject};
194
+ export { GeoObject };
@@ -0,0 +1,99 @@
1
+ import { TypedArray } from "../utils/shared";
2
+ import { EntityCollection } from "./EntityCollection";
3
+ import { GeoObject } from "./GeoObject";
4
+ import { Planet } from "../scene/Planet";
5
+ import { Vec3 } from "../math/Vec3";
6
+ import { Vec4 } from "../math/Vec4";
7
+ import { WebGLBufferExt, WebGLTextureExt } from "../webgl/Handler";
8
+ declare class InstanceData {
9
+ isFree: boolean;
10
+ _geoObjectHandler: GeoObjectHandler;
11
+ geoObjects: GeoObject[];
12
+ numInstances: number;
13
+ _texture: WebGLTextureExt | null;
14
+ _textureSrc: string | null;
15
+ _pitchRollArr: number[] | TypedArray;
16
+ _sizeArr: number[] | TypedArray;
17
+ _vertexArr: number[] | TypedArray;
18
+ _positionHighArr: number[] | TypedArray;
19
+ _positionLowArr: number[] | TypedArray;
20
+ _directionArr: number[] | TypedArray;
21
+ _rgbaArr: number[] | TypedArray;
22
+ _normalsArr: number[] | TypedArray;
23
+ _indicesArr: number[] | TypedArray;
24
+ _pickingColorArr: number[] | TypedArray;
25
+ _visibleArr: number[] | TypedArray;
26
+ _texCoordArr: number[] | TypedArray;
27
+ _pitchRollBuffer: WebGLBufferExt | null;
28
+ _sizeBuffer: WebGLBufferExt | null;
29
+ _vertexBuffer: WebGLBufferExt | null;
30
+ _positionHighBuffer: WebGLBufferExt | null;
31
+ _positionLowBuffer: WebGLBufferExt | null;
32
+ _directionBuffer: WebGLBufferExt | null;
33
+ _rgbaBuffer: WebGLBufferExt | null;
34
+ _normalsBuffer: WebGLBufferExt | null;
35
+ _indicesBuffer: WebGLBufferExt | null;
36
+ _pickingColorBuffer: WebGLBufferExt | null;
37
+ _visibleBuffer: WebGLBufferExt | null;
38
+ _texCoordBuffer: WebGLBufferExt | null;
39
+ _buffersUpdateCallbacks: Function[];
40
+ _changedBuffers: boolean[];
41
+ constructor(geoObjectHandler: GeoObjectHandler);
42
+ createTexture(image: HTMLCanvasElement | ImageBitmap | ImageData | HTMLImageElement): void;
43
+ clear(): void;
44
+ _deleteBuffers(): void;
45
+ createVertexBuffer(): void;
46
+ createPitchRollBuffer(): void;
47
+ createVisibleBuffer(): void;
48
+ createSizeBuffer(): void;
49
+ createTexCoordBuffer(): void;
50
+ createPositionBuffer(): void;
51
+ createRgbaBuffer(): void;
52
+ createDirectionBuffer(): void;
53
+ createNormalsBuffer(): void;
54
+ createIndicesBuffer(): void;
55
+ createPickingColorBuffer(): void;
56
+ refresh(): void;
57
+ update(): void;
58
+ }
59
+ declare class GeoObjectHandler {
60
+ static __counter__: number;
61
+ protected __id: number;
62
+ /**
63
+ * Picking rendering option.
64
+ * @public
65
+ * @type {boolean}
66
+ */
67
+ pickingEnabled: boolean;
68
+ protected _entityCollection: EntityCollection;
69
+ _planet: Planet | null;
70
+ protected _geoObjects: GeoObject[];
71
+ protected _instanceDataMap: Map<string, InstanceData>;
72
+ protected _instanceDataMapValues: InstanceData[];
73
+ protected _dataTagUpdateQueue: InstanceData[];
74
+ constructor(entityCollection: EntityCollection);
75
+ initProgram(): void;
76
+ setRenderNode(renderNode: Planet): void;
77
+ protected _addGeoObjectToArray(geoObject: GeoObject): void;
78
+ _displayPASS(): void;
79
+ drawPicking(): void;
80
+ protected _pickingPASS(): void;
81
+ _loadDataTagTexture(tagData: InstanceData): Promise<void>;
82
+ setDirectionArr(tagData: InstanceData, tagDataIndex: number, direction: Vec3): void;
83
+ setVisibility(tagData: InstanceData, tagDataIndex: number, visibility: boolean): void;
84
+ setPositionArr(tagData: InstanceData, tagDataIndex: number, positionHigh: Vec3, positionLow: Vec3): void;
85
+ setRgbaArr(tagData: InstanceData, tagDataIndex: number, rgba: Vec4): void;
86
+ setPickingColorArr(tagData: InstanceData, tagDataIndex: number, color: Vec3): void;
87
+ setPitchRollArr(tagData: InstanceData, tagDataIndex: number, pitch: number, roll: number): void;
88
+ setScaleArr(tagData: InstanceData, tagDataIndex: number, scale: number): void;
89
+ protected _updateTag(dataTag: InstanceData): void;
90
+ update(): void;
91
+ _removeAll(): void;
92
+ clear(): void;
93
+ draw(): void;
94
+ add(geoObject: GeoObject): void;
95
+ remove(geoObject: GeoObject): void;
96
+ _clearDataTagQueue(): void;
97
+ _removeGeoObject(geoObject: GeoObject): void;
98
+ }
99
+ export { GeoObjectHandler, InstanceData };