@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
@@ -1,76 +1,40 @@
1
- import {htmlColorToFloat32Array, TypedArray} from './utils/shared';
2
- import {NumberArray3, Vec3} from './math/Vec3';
3
- import {MAX, MIN} from './math';
4
- import {transformLeftToRightCoordinateSystem, objParser} from "./utils/objParser";
5
-
6
- function getColor(color?: number[] | TypedArray | string): Float32Array {
1
+ import { htmlColorToFloat32Array } from './utils/shared';
2
+ import { Vec3 } from './math/Vec3';
3
+ import { MAX, MIN } from './math';
4
+ import { transformLeftToRightCoordinateSystem, objParser } from "./utils/objParser";
5
+ function getColor(color) {
7
6
  if (color instanceof Array) {
8
7
  return new Float32Array(color);
9
- } else if (typeof color === 'string') {
8
+ }
9
+ else if (typeof color === 'string') {
10
10
  return htmlColorToFloat32Array(color);
11
11
  }
12
12
  return new Float32Array([1.0, 1.0, 1.0, 1.0]);
13
13
  }
14
-
15
- interface IObject3dParams {
16
- name?: string;
17
- vertices?: number[];
18
- texCoords?: number[];
19
- indices?: number[];
20
- normals?: number[];
21
- center?: boolean;
22
- src?: string;
23
- color?: number[] | TypedArray | string;
24
- scale?: number;
25
- }
26
-
27
14
  class Object3d {
28
-
29
- protected _name: string;
30
- protected _vertices: number[];
31
- protected _numVertices: number;
32
- protected _texCoords: number[];
33
-
34
- /**
35
- * Image src.
36
- * @protected
37
- * @type {string}
38
- */
39
- protected _src: string | null;
40
-
41
- protected color: Float32Array;
42
-
43
- protected _indices: number[];
44
- protected _normals: number[];
45
-
46
- constructor(data: IObject3dParams = {}) {
47
-
15
+ constructor(data = {}) {
48
16
  this._name = data.name || "noname";
49
17
  this._vertices = data.vertices || [];
50
18
  this._numVertices = this._vertices.length / 3;
51
19
  this._texCoords = data.texCoords || new Array(2 * this._numVertices);
52
-
53
20
  if (data.center) {
54
21
  Object3d.centering(this._vertices);
55
22
  }
56
-
57
23
  /**
58
24
  * Image src.
59
25
  * @protected
60
26
  * @type {string}
61
27
  */
62
28
  this._src = data.src || null;
63
-
64
29
  this.color = getColor(data.color);
65
-
66
30
  if (data.scale) {
67
31
  Object3d.scale(this._vertices, data.scale);
68
32
  }
69
-
70
33
  if (data.indices) {
71
34
  this._indices = data.indices;
72
35
  this._normals = data.normals || [];
73
- } else {
36
+ }
37
+ else {
74
38
  this._normals = Object3d.getNormals(this._vertices);
75
39
  this._indices = new Array(this._vertices.length / 3);
76
40
  for (let i = 0, len = this._indices.length; i < len; i++) {
@@ -78,136 +42,113 @@ class Object3d {
78
42
  }
79
43
  }
80
44
  }
81
-
82
- static centering(verts: number[]) {
45
+ static centering(verts) {
83
46
  let min_x = MAX, min_y = MAX, min_z = MAX, max_x = MIN, max_y = MIN, max_z = MIN;
84
47
  for (let i = 0, len = verts.length; i < len; i += 3) {
85
48
  let x = verts[i], y = verts[i + 1], z = verts[i + 2];
86
- if (x < min_x) min_x = x;
87
- if (y < min_y) min_y = y;
88
- if (z < min_z) min_z = z;
89
- if (x > max_x) max_x = x;
90
- if (y > max_y) max_y = y;
91
- if (z > max_z) max_z = z;
49
+ if (x < min_x)
50
+ min_x = x;
51
+ if (y < min_y)
52
+ min_y = y;
53
+ if (z < min_z)
54
+ min_z = z;
55
+ if (x > max_x)
56
+ max_x = x;
57
+ if (y > max_y)
58
+ max_y = y;
59
+ if (z > max_z)
60
+ max_z = z;
92
61
  }
93
-
94
62
  let c_x = min_x + (max_x - min_x) * 0.5;
95
63
  let c_y = min_y + (max_y - min_y) * 0.5;
96
64
  let c_z = min_z + (max_z - min_z) * 0.5;
97
-
98
65
  for (let i = 0, len = verts.length; i < len; i += 3) {
99
66
  verts[i] -= c_x;
100
67
  verts[i + 1] -= c_y;
101
68
  verts[i + 2] -= c_z;
102
69
  }
103
70
  }
104
-
105
- public get src(): string | null {
71
+ get src() {
106
72
  return this._src;
107
73
  }
108
-
109
- public set src(src: string | null) {
74
+ set src(src) {
110
75
  this._src = src;
111
76
  }
112
-
113
- public get name(): string {
77
+ get name() {
114
78
  return this._name;
115
79
  }
116
-
117
- public get vertices(): number[] {
80
+ get vertices() {
118
81
  return this._vertices;
119
82
  }
120
-
121
- public get normals(): number[] {
83
+ get normals() {
122
84
  return this._normals;
123
85
  }
124
-
125
- public get indices(): number[] {
86
+ get indices() {
126
87
  return this._indices;
127
88
  }
128
-
129
- public get texCoords(): number[] {
89
+ get texCoords() {
130
90
  return this._texCoords;
131
91
  }
132
-
133
- public get numVertices(): number {
92
+ get numVertices() {
134
93
  return this._numVertices;
135
94
  }
136
-
137
- static scale(vertices: number[], s: number) {
95
+ static scale(vertices, s) {
138
96
  for (let i = 0; i < vertices.length; i++) {
139
97
  vertices[i] *= s;
140
98
  }
141
99
  }
142
-
143
- static centroid(vertices: number[]) {
100
+ static centroid(vertices) {
144
101
  let minX = 1000.0, minY = 1000.0, minZ = 1000.0, maxX = -1000.0, maxY = -1000.0, maxZ = -1000.0;
145
-
146
102
  for (let i = 0; i < vertices.length; i += 3) {
147
103
  let x = vertices[i], y = vertices[i + 1], z = vertices[i + 2];
148
- if (x < minX) minX = x;
149
- if (y < minY) minY = y;
150
- if (z < minZ) minZ = z;
151
- if (x > maxX) maxX = x;
152
- if (y > maxY) maxY = y;
153
- if (z > maxZ) maxZ = z;
104
+ if (x < minX)
105
+ minX = x;
106
+ if (y < minY)
107
+ minY = y;
108
+ if (z < minZ)
109
+ minZ = z;
110
+ if (x > maxX)
111
+ maxX = x;
112
+ if (y > maxY)
113
+ maxY = y;
114
+ if (z > maxZ)
115
+ maxZ = z;
154
116
  }
155
-
156
117
  return [minX + (maxX - minX) * 0.5, minY + (maxY - minY) * 0.5, minZ + (maxZ - minZ) * 0.5];
157
118
  }
158
-
159
- static translate(vertices: number[], v: NumberArray3) {
119
+ static translate(vertices, v) {
160
120
  for (let i = 0; i < vertices.length; i += 3) {
161
121
  vertices[i] -= v[0];
162
122
  vertices[i + 1] -= v[1];
163
123
  vertices[i + 2] -= v[2];
164
124
  }
165
125
  }
166
-
167
- static getNormals(vertices: number[]): number[] {
126
+ static getNormals(vertices) {
168
127
  let res = new Array(vertices.length);
169
-
170
128
  for (let i = 0; i < vertices.length; i += 9) {
171
-
172
- let t03 = i, t13 = i + 3, t23 = i + 6, v0_x = vertices[t03], v0_y = vertices[t03 + 1],
173
- v0_z = vertices[t03 + 2], v1_x = vertices[t13], v1_y = vertices[t13 + 1], v1_z = vertices[t13 + 2],
174
- v2_x = vertices[t23], v2_y = vertices[t23 + 1], v2_z = vertices[t23 + 2], vv0_x = v1_x - v0_x,
175
- vv0_y = v1_y - v0_y, vv0_z = v1_z - v0_z, vv1_x = v2_x - v0_x, vv1_y = v2_y - v0_y, vv1_z = v2_z - v0_z,
176
- n_x = vv0_y * vv1_z - vv0_z * vv1_y, n_y = vv0_z * vv1_x - vv0_x * vv1_z,
177
- n_z = vv0_x * vv1_y - vv0_y * vv1_x;
178
-
129
+ let t03 = i, t13 = i + 3, t23 = i + 6, v0_x = vertices[t03], v0_y = vertices[t03 + 1], v0_z = vertices[t03 + 2], v1_x = vertices[t13], v1_y = vertices[t13 + 1], v1_z = vertices[t13 + 2], v2_x = vertices[t23], v2_y = vertices[t23 + 1], v2_z = vertices[t23 + 2], vv0_x = v1_x - v0_x, vv0_y = v1_y - v0_y, vv0_z = v1_z - v0_z, vv1_x = v2_x - v0_x, vv1_y = v2_y - v0_y, vv1_z = v2_z - v0_z, n_x = vv0_y * vv1_z - vv0_z * vv1_y, n_y = vv0_z * vv1_x - vv0_x * vv1_z, n_z = vv0_x * vv1_y - vv0_y * vv1_x;
179
130
  let l = Math.sqrt(n_x * n_x + n_y * n_y + n_z * n_z);
180
-
181
131
  n_x /= l;
182
132
  n_y /= l;
183
133
  n_z /= l;
184
-
185
134
  res[t03] = n_x;
186
135
  res[t03 + 1] = n_y;
187
136
  res[t03 + 2] = n_z;
188
-
189
137
  res[t13] = n_x;
190
138
  res[t13 + 1] = n_y;
191
139
  res[t13 + 2] = n_z;
192
-
193
140
  res[t23] = n_x;
194
141
  res[t23 + 1] = n_y;
195
142
  res[t23 + 2] = n_z;
196
143
  }
197
-
198
144
  return res;
199
145
  }
200
-
201
- static createSphere(lonBands: number = 16, latBands: number = 16, radius: number = 1.0,
202
- offsetX: number = 0, offsetY: number = 0, offsetZ: number = 0): Object3d {
203
-
146
+ static createSphere(lonBands = 16, latBands = 16, radius = 1.0, offsetX = 0, offsetY = 0, offsetZ = 0) {
204
147
  let vertices = [], indices = [], normals = [];
205
-
206
148
  for (let latNumber = 0; latNumber <= latBands; latNumber++) {
207
149
  let theta = latNumber * Math.PI / latBands;
208
150
  let sinTheta = Math.sin(theta);
209
151
  let cosTheta = Math.cos(theta);
210
-
211
152
  for (let longNumber = 0; longNumber <= lonBands; longNumber++) {
212
153
  let phi = longNumber * 2 * Math.PI / lonBands;
213
154
  let sinPhi = Math.sin(phi);
@@ -227,181 +168,124 @@ class Object3d {
227
168
  vertices.push(radius * z);
228
169
  }
229
170
  }
230
-
231
171
  for (let latNumber = 0; latNumber < latBands; latNumber++) {
232
172
  for (let longNumber = 0; longNumber < lonBands; longNumber++) {
233
173
  let first = (latNumber * (lonBands + 1)) + longNumber;
234
174
  let second = first + lonBands + 1;
235
-
236
175
  indices.push(first);
237
176
  indices.push(first + 1);
238
177
  indices.push(second);
239
-
240
178
  indices.push(second);
241
179
  indices.push(first + 1);
242
180
  indices.push(second + 1);
243
181
  }
244
182
  }
245
-
246
183
  return new Object3d({
247
184
  'vertices': vertices, 'normals': normals, 'indices': indices
248
185
  });
249
186
  }
250
-
251
- static createDisc(radius: number = 1.0, height: number = 0.0,
252
- radialSegments: number = 8, isTop: boolean = true, startIndex: number = 0,
253
- offsetX: number = 0, offsetY: number = 0, offsetZ: number = 0
254
- ): Object3d {
255
-
187
+ static createDisc(radius = 1.0, height = 0.0, radialSegments = 8, isTop = true, startIndex = 0, offsetX = 0, offsetY = 0, offsetZ = 0) {
256
188
  let vertices = [], indices = [], normals = [];
257
-
258
189
  let thetaStart = 0.0, thetaLength = Math.PI * 2;
259
-
260
190
  let sign = isTop ? 1.0 : -1.0;
261
-
262
191
  let centerIndexStart = startIndex;
263
-
264
192
  for (let x = 1; x <= radialSegments; x++) {
265
193
  vertices.push(offsetX, height * sign + offsetY, offsetZ);
266
194
  normals.push(0, sign, 0);
267
195
  //texCoords.push(0.5, 0.5);
268
196
  startIndex++;
269
197
  }
270
-
271
198
  let centerIndexEnd = startIndex;
272
-
273
199
  for (let x = 0; x <= radialSegments; x++) {
274
-
275
200
  let u = x / radialSegments;
276
201
  let theta = u * thetaLength + thetaStart;
277
-
278
202
  let cosTheta = Math.cos(theta);
279
203
  let sinTheta = Math.sin(theta);
280
-
281
204
  vertices.push(radius * sinTheta + offsetX, height * sign + offsetY, radius * cosTheta + offsetZ);
282
205
  normals.push(0, sign, 0);
283
206
  //texCoords.push((cosTheta * 0.5) + 0.5, (sinTheta * 0.5 * sign) + 0.5);
284
-
285
207
  startIndex++;
286
208
  }
287
-
288
209
  for (let x = 0; x < radialSegments; x++) {
289
210
  let c = centerIndexStart + x, i = centerIndexEnd + x;
290
211
  if (isTop) {
291
212
  indices.push(i, i + 1, c);
292
- } else {
213
+ }
214
+ else {
293
215
  indices.push(i + 1, i, c);
294
216
  }
295
217
  }
296
-
297
218
  return new Object3d({
298
219
  'vertices': vertices, 'normals': normals, 'indices': indices
299
220
  });
300
221
  }
301
-
302
- static createCylinder(radiusTop: number = 1.0, radiusBottom: number = 1.0, height: number = 1.0,
303
- radialSegments: number = 32, heightSegments: number = 1.0, isTop: boolean = true,
304
- isBottom: boolean = true, offsetX: number = 0, offsetY: number = 0, offsetZ: number = 0): Object3d {
305
-
306
- let vertices: number[] = [],
307
- indices: number[] = [],
308
- normals: number[] = [];
309
-
222
+ static createCylinder(radiusTop = 1.0, radiusBottom = 1.0, height = 1.0, radialSegments = 32, heightSegments = 1.0, isTop = true, isBottom = true, offsetX = 0, offsetY = 0, offsetZ = 0) {
223
+ let vertices = [], indices = [], normals = [];
310
224
  let thetaStart = 0.0, thetaLength = Math.PI * 2;
311
-
312
225
  let index = 0;
313
226
  let indexArray = [];
314
-
315
227
  let normal = new Vec3();
316
-
317
228
  let slope = (radiusBottom - radiusTop) / height;
318
-
319
229
  for (let y = 0; y <= heightSegments; y++) {
320
-
321
230
  let indexRow = [];
322
-
323
231
  let v = y / heightSegments;
324
-
325
232
  let radius = v * (radiusBottom - radiusTop) + radiusTop;
326
-
327
233
  for (let x = 0; x <= radialSegments; x++) {
328
-
329
234
  let u = x / radialSegments;
330
-
331
235
  let theta = u * thetaLength + thetaStart;
332
-
333
236
  let sinTheta = Math.sin(theta), cosTheta = Math.cos(theta);
334
-
335
237
  vertices.push(radius * sinTheta + offsetX, -v * height + height + offsetY, radius * cosTheta + offsetZ);
336
-
337
238
  normal.set(sinTheta, slope, cosTheta).normalize();
338
239
  normals.push(normal.x, normal.y, normal.z);
339
-
340
240
  //texCoords.push(u, 1 - v);
341
-
342
241
  indexRow.push(index++);
343
242
  }
344
243
  indexArray.push(indexRow);
345
244
  }
346
-
347
245
  for (let x = 0; x < radialSegments; x++) {
348
246
  for (let y = 0; y < heightSegments; y++) {
349
-
350
- let a = indexArray[y][x], b = indexArray[y + 1][x], c = indexArray[y + 1][x + 1],
351
- d = indexArray[y][x + 1];
352
-
247
+ let a = indexArray[y][x], b = indexArray[y + 1][x], c = indexArray[y + 1][x + 1], d = indexArray[y][x + 1];
353
248
  indices.push(a, b, d);
354
249
  indices.push(b, c, d);
355
250
  }
356
251
  }
357
-
358
252
  if (radiusTop !== 0.0 && isTop) {
359
253
  let cap = Object3d.createDisc(radiusTop, height, radialSegments, true, index, offsetX, offsetY, offsetZ);
360
254
  vertices.push(...cap.vertices);
361
255
  normals.push(...cap.normals);
362
256
  indices.push(...cap.indices);
363
257
  }
364
-
365
258
  if (radiusBottom !== 0.0 && isBottom) {
366
259
  let cap = Object3d.createDisc(radiusBottom, 0, radialSegments, false, index + (isTop ? (1 + 2 * radialSegments) : 0), offsetX, offsetY, offsetZ);
367
260
  vertices.push(...cap.vertices);
368
261
  normals.push(...cap.normals);
369
262
  indices.push(...cap.indices);
370
263
  }
371
-
372
264
  return new Object3d({
373
265
  vertices: vertices,
374
266
  normals: normals,
375
267
  indices: indices
376
268
  });
377
269
  }
378
-
379
- static createCube(length: number = 1, height: number = 1, depth: number = 1,
380
- xOffset: number = 0, yOffset: number = 0, zOffset: number = 0): Object3d {
270
+ static createCube(length = 1, height = 1, depth = 1, xOffset = 0, yOffset = 0, zOffset = 0) {
381
271
  let l = length * 0.5 + xOffset, h = height * 0.5 + yOffset, d = depth * 0.5 + zOffset;
382
-
383
272
  return new Object3d({
384
- vertices: [//bottom
273
+ vertices: [
385
274
  -l, -h, d, l, -h, -d, l, -h, d, -l, -h, d, -l, -h, -d, l, -h, -d,
386
-
387
275
  //top
388
276
  -l, h, d, l, h, d, l, h, -d, -l, h, d, l, h, -d, -l, h, -d,
389
-
390
277
  //front
391
278
  -l, -h, d, l, -h, d, -l, h, d, -l, h, d, l, -h, d, l, h, d,
392
-
393
279
  //back
394
280
  -l, -h, -d, -l, h, -d, l, -h, -d, -l, h, -d, l, h, -d, l, -h, -d,
395
-
396
281
  //left
397
282
  l, -h, d, l, -h, -d, l, h, d, l, h, d, l, -h, -d, l, h, -d,
398
-
399
283
  //right
400
- -l, -h, d, -l, h, d, -l, -h, -d, -l, h, d, -l, h, -d, -l, -h, -d]
284
+ -l, -h, d, -l, h, d, -l, -h, -d, -l, h, d, -l, h, -d, -l, -h, -d
285
+ ]
401
286
  });
402
287
  }
403
-
404
- static createArrow(back: number = 0.0, height: number = 2.1, front: number = -15): Object3d {
288
+ static createArrow(back = 0.0, height = 2.1, front = -15) {
405
289
  return new Object3d({
406
290
  vertices: [0, height, 0, 7, 0, 6, 0, 0, front,
407
291
  0, 0, back, 7, 0, 6, 0, height, 0,
@@ -410,20 +294,16 @@ class Object3d {
410
294
  -7, 0, 6, 0, 0, front, 0, 0, back, 0, 0, back, 0, 0, front, 7, 0, 6]
411
295
  });
412
296
  }
413
-
414
-
415
- static async loadObj(src: string): Promise<Object3d[]> {
416
- const obj: any = await fetch(src, {mode: "cors",})
297
+ static async loadObj(src) {
298
+ const obj = await fetch(src, { mode: "cors", })
417
299
  .then((response) => response.text())
418
300
  .then((data) => transformLeftToRightCoordinateSystem(objParser(data)))
419
301
  .catch(() => []);
420
-
421
- return obj.geometries.map(({data: {vertices, normals, textures}}: any) => new Object3d({
302
+ return obj.geometries.map(({ data: { vertices, normals, textures } }) => new Object3d({
422
303
  vertices,
423
304
  normals,
424
305
  texCoords: textures
425
306
  }));
426
307
  }
427
308
  }
428
-
429
- export {Object3d};
309
+ export { Object3d };
@@ -0,0 +1,46 @@
1
+ import { EventsHandler } from "./Events";
2
+ import { LonLat } from "./LonLat";
3
+ import { Planet } from "./scene/Planet";
4
+ import { NumberArray2, Vec2 } from "./math/Vec2";
5
+ import { NumberArray3, Vec3 } from "./math/Vec3";
6
+ import { View, IViewParams, ViewEventsList } from './ui/View';
7
+ interface IPopupParams extends IViewParams {
8
+ planet: Planet;
9
+ title?: string;
10
+ className?: string;
11
+ visibility?: boolean;
12
+ content?: string;
13
+ offset?: NumberArray2;
14
+ lonLat?: LonLat | NumberArray2 | NumberArray3;
15
+ }
16
+ type PopupEventsList = ["open", "close"];
17
+ declare class Popup extends View<null> {
18
+ events: EventsHandler<PopupEventsList> & EventsHandler<ViewEventsList>;
19
+ $content: HTMLElement | null;
20
+ $tip: HTMLElement | null;
21
+ $title: HTMLElement | null;
22
+ protected _content: string | HTMLElement | null;
23
+ protected _planet: Planet;
24
+ protected _offset: NumberArray2;
25
+ protected _lonLat: LonLat;
26
+ protected _cartPos: Vec3;
27
+ protected _visibility: boolean;
28
+ constructor(options: IPopupParams);
29
+ _updatePosition(): void;
30
+ setScreen(p: Vec2): void;
31
+ get clientWidth(): number;
32
+ get clientHeight(): number;
33
+ setOffset(x?: number, y?: number): this;
34
+ render(params?: any): this;
35
+ setVisibility(visibility: boolean): this;
36
+ getContainer(): HTMLElement | null;
37
+ getToolbarContainer(): HTMLElement;
38
+ show(): this;
39
+ hide(): this;
40
+ setCartesian3v(cart: Vec3, height?: number): this;
41
+ setTitle(html: string): void;
42
+ setLonLat(lonLat: LonLat): void;
43
+ setContent(content?: string | HTMLElement | null): void;
44
+ clear(): void;
45
+ }
46
+ export { Popup };