@openglobus/og 0.17.2 → 0.18.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (845) hide show
  1. package/README.md +76 -47
  2. package/lib/@openglobus/og.esm.js +2 -0
  3. package/lib/@openglobus/og.esm.js.map +1 -0
  4. package/lib/@openglobus/og.umd.js +2 -0
  5. package/lib/@openglobus/og.umd.js.map +1 -0
  6. package/lib/@openglobus/res/fonts/Karla-Bold.json +5252 -0
  7. package/lib/@openglobus/res/fonts/Karla-Bold.ttf.cfg +920 -0
  8. package/lib/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
  9. package/lib/@openglobus/res/fonts/Karla-Light.json +5252 -0
  10. package/lib/@openglobus/res/fonts/Karla-Light.ttf.cfg +830 -0
  11. package/lib/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
  12. package/lib/@openglobus/res/fonts/Karla-Medium.json +5252 -0
  13. package/lib/@openglobus/res/fonts/Karla-Medium.ttf.cfg +1196 -0
  14. package/lib/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
  15. package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.json +3332 -0
  16. package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +1370 -0
  17. package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
  18. package/lib/@openglobus/res/fonts/Roboto-Regular.json +37147 -0
  19. package/lib/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +1340 -0
  20. package/lib/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
  21. package/lib/@openglobus/res/fonts/arial.json +4321 -0
  22. package/lib/@openglobus/res/fonts/arial.ttf.cfg +1570 -0
  23. package/lib/@openglobus/res/fonts/arial.ttf.png +0 -0
  24. package/lib/@openglobus/res/night-4326.png +0 -0
  25. package/lib/@openglobus/res/night.png +0 -0
  26. package/lib/@openglobus/res/spec.png +0 -0
  27. package/lib/js/Clock.d.ts +106 -0
  28. package/lib/js/Clock.js +141 -0
  29. package/lib/js/Deferred.d.ts +6 -0
  30. package/lib/js/Deferred.js +13 -0
  31. package/lib/js/Events.d.ts +90 -0
  32. package/lib/js/Events.js +145 -0
  33. package/lib/js/Extent.d.ts +145 -0
  34. package/lib/js/Extent.js +278 -0
  35. package/lib/js/Globe.d.ts +132 -0
  36. package/lib/js/Globe.js +265 -0
  37. package/lib/js/ImageCanvas.d.ts +128 -0
  38. package/lib/js/ImageCanvas.js +203 -0
  39. package/lib/js/Lock.d.ts +15 -0
  40. package/lib/js/Lock.js +27 -0
  41. package/lib/js/LonLat.d.ts +128 -0
  42. package/lib/js/LonLat.js +192 -0
  43. package/lib/js/Object3d.d.ts +49 -0
  44. package/lib/js/Object3d.js +309 -0
  45. package/lib/js/Popup.d.ts +46 -0
  46. package/lib/js/Popup.js +160 -0
  47. package/lib/js/QueueArray.d.ts +16 -0
  48. package/lib/js/QueueArray.js +63 -0
  49. package/lib/js/Rectangle.d.ts +76 -0
  50. package/lib/js/Rectangle.js +77 -0
  51. package/lib/js/Stack.d.ts +20 -0
  52. package/lib/js/Stack.js +42 -0
  53. package/lib/js/astro/astro.d.ts +39 -0
  54. package/lib/js/astro/astro.js +43 -0
  55. package/lib/js/astro/earth.d.ts +8 -0
  56. package/lib/js/astro/earth.js +75 -0
  57. package/lib/js/astro/jd.d.ts +234 -0
  58. package/lib/js/astro/jd.js +416 -0
  59. package/lib/js/astro/orbit.d.ts +5 -0
  60. package/lib/js/astro/orbit.js +104 -0
  61. package/lib/js/astro/rotation.d.ts +2 -0
  62. package/lib/js/astro/rotation.js +25 -0
  63. package/lib/js/bv/Box.d.ts +32 -0
  64. package/lib/js/bv/Box.js +53 -0
  65. package/lib/js/bv/Sphere.d.ts +37 -0
  66. package/lib/js/bv/Sphere.js +31 -0
  67. package/lib/js/bv/index.d.ts +3 -0
  68. package/lib/js/bv/index.js +3 -0
  69. package/lib/js/camera/Camera.d.ts +314 -0
  70. package/lib/js/camera/Camera.js +453 -0
  71. package/lib/js/camera/Frustum.d.ts +139 -0
  72. package/lib/js/camera/Frustum.js +238 -0
  73. package/lib/js/camera/PlanetCamera.d.ts +234 -0
  74. package/lib/js/camera/PlanetCamera.js +465 -0
  75. package/lib/js/camera/index.d.ts +3 -0
  76. package/lib/js/camera/index.js +3 -0
  77. package/lib/js/cons.d.ts +40 -0
  78. package/lib/js/cons.js +92 -0
  79. package/lib/js/control/Atmosphere.d.ts +16 -0
  80. package/lib/js/control/Atmosphere.js +334 -0
  81. package/lib/js/control/CompassButton.d.ts +16 -0
  82. package/lib/js/control/CompassButton.js +118 -0
  83. package/lib/js/control/Control.d.ts +100 -0
  84. package/lib/js/control/Control.js +137 -0
  85. package/lib/js/control/DebugInfo.d.ts +25 -0
  86. package/lib/js/control/DebugInfo.js +281 -0
  87. package/lib/js/control/DrawingSwitcher.d.ts +13 -0
  88. package/lib/js/control/DrawingSwitcher.js +94 -0
  89. package/lib/js/control/EarthCoordinates.d.ts +41 -0
  90. package/lib/js/control/EarthCoordinates.js +161 -0
  91. package/lib/js/control/EarthNavigation.d.ts +50 -0
  92. package/lib/js/control/EarthNavigation.js +202 -0
  93. package/lib/js/control/GeoImageDragControl.d.ts +22 -0
  94. package/lib/js/control/GeoImageDragControl.js +102 -0
  95. package/lib/js/control/KeyboardNavigation.d.ts +28 -0
  96. package/lib/js/control/KeyboardNavigation.js +143 -0
  97. package/lib/js/control/LayerAnimation.d.ts +71 -0
  98. package/lib/js/control/LayerAnimation.js +283 -0
  99. package/lib/js/control/LayerSwitcher.d.ts +21 -0
  100. package/lib/js/control/LayerSwitcher.js +51 -0
  101. package/lib/js/control/Lighting.d.ts +49 -0
  102. package/lib/js/control/Lighting.js +412 -0
  103. package/lib/js/control/MouseNavigation.d.ts +62 -0
  104. package/lib/js/control/MouseNavigation.js +362 -0
  105. package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
  106. package/lib/js/control/MouseWheelZoomControl.js +181 -0
  107. package/lib/js/control/RulerSwitcher.d.ts +17 -0
  108. package/lib/js/control/RulerSwitcher.js +57 -0
  109. package/lib/js/control/ScaleControl.d.ts +24 -0
  110. package/lib/js/control/ScaleControl.js +91 -0
  111. package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
  112. package/lib/js/control/SegmentBoundVisualization.js +37 -0
  113. package/lib/js/control/ShowFps.d.ts +9 -0
  114. package/lib/js/control/ShowFps.js +20 -0
  115. package/lib/js/control/SimpleNavigation.d.ts +25 -0
  116. package/lib/js/control/SimpleNavigation.js +96 -0
  117. package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
  118. package/lib/js/control/SimpleSkyBackground.js +177 -0
  119. package/lib/js/control/Sun.d.ts +33 -0
  120. package/lib/js/control/Sun.js +117 -0
  121. package/lib/js/control/ToggleWireframe.d.ts +14 -0
  122. package/lib/js/control/ToggleWireframe.js +28 -0
  123. package/lib/js/control/TouchNavigation.d.ts +52 -0
  124. package/lib/js/control/TouchNavigation.js +263 -0
  125. package/lib/js/control/ZoomControl.d.ts +27 -0
  126. package/lib/js/control/ZoomControl.js +86 -0
  127. package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
  128. package/lib/js/control/drawing/DrawingControl.js +35 -0
  129. package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
  130. package/lib/js/control/drawing/LineStringDrawingScene.js +139 -0
  131. package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
  132. package/lib/js/control/drawing/PolygonDrawingScene.js +534 -0
  133. package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
  134. package/lib/js/control/elevationProfile/ElevationProfile.js +217 -0
  135. package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
  136. package/lib/js/control/heightRuler/HeightRuler.js +11 -0
  137. package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
  138. package/lib/js/control/heightRuler/HeightRulerScene.js +181 -0
  139. package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
  140. package/lib/js/control/heightRuler/HeightRulerSwitcher.js +13 -0
  141. package/lib/js/control/index.d.ts +28 -0
  142. package/lib/js/control/index.js +28 -0
  143. package/lib/js/control/ruler/Ruler.d.ts +13 -0
  144. package/lib/js/control/ruler/Ruler.js +23 -0
  145. package/lib/js/control/ruler/RulerScene.d.ts +88 -0
  146. package/lib/js/control/ruler/RulerScene.js +324 -0
  147. package/lib/js/control/selection/Selection.d.ts +55 -0
  148. package/lib/js/control/selection/Selection.js +78 -0
  149. package/lib/js/control/selection/SelectionScene.d.ts +44 -0
  150. package/lib/js/control/selection/SelectionScene.js +272 -0
  151. package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
  152. package/lib/js/control/timeline/TimelineControl.js +79 -0
  153. package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
  154. package/lib/js/control/timeline/TimelineModel.js +104 -0
  155. package/lib/js/control/timeline/TimelineView.d.ts +85 -0
  156. package/lib/js/control/timeline/TimelineView.js +363 -0
  157. package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
  158. package/lib/js/control/timeline/timelineUtils.js +112 -0
  159. package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
  160. package/lib/js/control/visibleExtent/Segment.js +1301 -0
  161. package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
  162. package/lib/js/control/visibleExtent/VisibleExtent.js +56 -0
  163. package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
  164. package/lib/js/control/visibleExtent/drawnode.js +718 -0
  165. package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
  166. package/lib/js/ellipsoid/Ellipsoid.js +434 -0
  167. package/lib/js/ellipsoid/index.d.ts +3 -0
  168. package/lib/js/ellipsoid/index.js +3 -0
  169. package/lib/js/ellipsoid/wgs84.d.ts +6 -0
  170. package/lib/js/ellipsoid/wgs84.js +6 -0
  171. package/lib/js/entity/BaseBillboard.d.ts +222 -0
  172. package/lib/js/entity/BaseBillboard.js +284 -0
  173. package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
  174. package/lib/js/entity/BaseBillboardHandler.js +546 -0
  175. package/lib/js/entity/Billboard.d.ts +113 -0
  176. package/lib/js/entity/Billboard.js +127 -0
  177. package/lib/js/entity/BillboardHandler.d.ts +15 -0
  178. package/lib/js/entity/BillboardHandler.js +103 -0
  179. package/lib/js/entity/Entity.d.ts +354 -0
  180. package/lib/js/entity/Entity.js +515 -0
  181. package/lib/js/entity/EntityCollection.d.ts +364 -0
  182. package/lib/js/entity/EntityCollection.js +621 -0
  183. package/lib/js/entity/GeoObject.d.ts +138 -0
  184. package/lib/js/entity/GeoObject.js +194 -0
  185. package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
  186. package/lib/js/entity/GeoObjectHandler.js +558 -0
  187. package/lib/js/entity/Geometry.d.ts +111 -0
  188. package/lib/js/entity/Geometry.js +283 -0
  189. package/lib/js/entity/GeometryHandler.d.ts +84 -0
  190. package/lib/js/entity/GeometryHandler.js +687 -0
  191. package/lib/js/entity/Label.d.ts +207 -0
  192. package/lib/js/entity/Label.js +291 -0
  193. package/lib/js/entity/LabelHandler.d.ts +65 -0
  194. package/lib/js/entity/LabelHandler.js +696 -0
  195. package/lib/js/entity/LabelWorker.d.ts +15 -0
  196. package/lib/js/entity/LabelWorker.js +163 -0
  197. package/lib/js/entity/PointCloud.d.ts +179 -0
  198. package/lib/js/entity/PointCloud.js +327 -0
  199. package/lib/js/entity/PointCloudHandler.d.ts +42 -0
  200. package/lib/js/entity/PointCloudHandler.js +82 -0
  201. package/lib/js/entity/Polyline.d.ts +337 -0
  202. package/lib/js/entity/Polyline.js +1546 -0
  203. package/lib/js/entity/PolylineHandler.d.ts +22 -0
  204. package/lib/js/entity/PolylineHandler.js +78 -0
  205. package/lib/js/entity/Ray.d.ts +133 -0
  206. package/lib/js/entity/Ray.js +171 -0
  207. package/lib/js/entity/RayHandler.d.ts +70 -0
  208. package/lib/js/entity/RayHandler.js +496 -0
  209. package/lib/js/entity/Strip.d.ts +127 -0
  210. package/lib/js/entity/Strip.js +401 -0
  211. package/lib/js/entity/StripHandler.d.ts +42 -0
  212. package/lib/js/entity/StripHandler.js +110 -0
  213. package/lib/js/entity/index.d.ts +11 -0
  214. package/lib/js/entity/index.js +11 -0
  215. package/lib/js/index.d.ts +33 -0
  216. package/lib/js/index.js +33 -0
  217. package/lib/js/input/KeyboardHandler.d.ts +33 -0
  218. package/lib/js/input/KeyboardHandler.js +157 -0
  219. package/lib/js/input/MouseHandler.d.ts +16 -0
  220. package/lib/js/input/MouseHandler.js +81 -0
  221. package/lib/js/input/TouchHandler.d.ts +11 -0
  222. package/lib/js/input/TouchHandler.js +42 -0
  223. package/lib/js/input/input.d.ts +3 -0
  224. package/lib/js/input/input.js +42 -0
  225. package/lib/js/layer/BaseGeoImage.d.ts +145 -0
  226. package/lib/js/layer/BaseGeoImage.js +382 -0
  227. package/lib/js/layer/CanvasTiles.d.ts +103 -0
  228. package/lib/js/layer/CanvasTiles.js +302 -0
  229. package/lib/js/layer/GeoImage.d.ts +61 -0
  230. package/lib/js/layer/GeoImage.js +130 -0
  231. package/lib/js/layer/GeoTexture2d.d.ts +17 -0
  232. package/lib/js/layer/GeoTexture2d.js +37 -0
  233. package/lib/js/layer/GeoVideo.d.ts +68 -0
  234. package/lib/js/layer/GeoVideo.js +157 -0
  235. package/lib/js/layer/KML.d.ts +72 -0
  236. package/lib/js/layer/KML.js +303 -0
  237. package/lib/js/layer/Layer.d.ts +401 -0
  238. package/lib/js/layer/Layer.js +732 -0
  239. package/lib/js/layer/Material.d.ts +34 -0
  240. package/lib/js/layer/Material.js +69 -0
  241. package/lib/js/layer/Vector.d.ts +244 -0
  242. package/lib/js/layer/Vector.js +849 -0
  243. package/lib/js/layer/WMS.d.ts +75 -0
  244. package/lib/js/layer/WMS.js +112 -0
  245. package/lib/js/layer/XYZ.d.ts +149 -0
  246. package/lib/js/layer/XYZ.js +299 -0
  247. package/lib/js/layer/index.d.ts +11 -0
  248. package/lib/js/layer/index.js +11 -0
  249. package/lib/js/light/LightSource.d.ts +174 -0
  250. package/lib/js/light/LightSource.js +292 -0
  251. package/lib/js/math/Line2.d.ts +11 -0
  252. package/lib/js/math/Line2.js +21 -0
  253. package/lib/js/math/Line3.d.ts +28 -0
  254. package/lib/js/math/Line3.js +85 -0
  255. package/lib/js/math/Mat3.d.ts +77 -0
  256. package/lib/js/math/Mat3.js +139 -0
  257. package/lib/js/math/Mat4.d.ts +195 -0
  258. package/lib/js/math/Mat4.js +470 -0
  259. package/lib/js/math/Plane.d.ts +20 -0
  260. package/lib/js/math/Plane.js +108 -0
  261. package/lib/js/math/Quat.d.ts +373 -0
  262. package/lib/js/math/Quat.js +783 -0
  263. package/lib/js/math/Ray.d.ts +76 -0
  264. package/lib/js/math/Ray.js +188 -0
  265. package/lib/js/math/Vec2.d.ts +310 -0
  266. package/lib/js/math/Vec2.js +463 -0
  267. package/lib/js/math/Vec3.d.ts +472 -0
  268. package/lib/js/math/Vec3.js +799 -0
  269. package/lib/js/math/Vec4.d.ts +163 -0
  270. package/lib/js/math/Vec4.js +211 -0
  271. package/lib/js/math/coder.d.ts +51 -0
  272. package/lib/js/math/coder.js +101 -0
  273. package/lib/js/math/index.d.ts +11 -0
  274. package/lib/js/math/index.js +11 -0
  275. package/lib/js/math.d.ts +266 -0
  276. package/lib/js/math.js +379 -0
  277. package/lib/js/mercator.d.ts +92 -0
  278. package/lib/js/mercator.js +119 -0
  279. package/lib/js/proj/EPSG3857.d.ts +9 -0
  280. package/lib/js/proj/EPSG3857.js +9 -0
  281. package/lib/js/proj/EPSG4326.d.ts +9 -0
  282. package/lib/js/proj/EPSG4326.js +9 -0
  283. package/lib/js/proj/Proj.d.ts +43 -0
  284. package/lib/js/proj/Proj.js +38 -0
  285. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
  286. package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
  287. package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
  288. package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
  289. package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
  290. package/lib/js/quadTree/EntityCollectionNode.js +328 -0
  291. package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
  292. package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
  293. package/lib/js/quadTree/Node.d.ts +61 -0
  294. package/lib/js/quadTree/Node.js +660 -0
  295. package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
  296. package/lib/js/quadTree/QuadTreeStrategy.js +69 -0
  297. package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
  298. package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
  299. package/lib/js/quadTree/index.d.ts +12 -0
  300. package/lib/js/quadTree/index.js +12 -0
  301. package/lib/js/quadTree/quadTree.d.ts +40 -0
  302. package/lib/js/quadTree/quadTree.js +66 -0
  303. package/lib/js/renderer/Renderer.d.ts +311 -0
  304. package/lib/js/renderer/Renderer.js +899 -0
  305. package/lib/js/renderer/RendererEvents.d.ts +237 -0
  306. package/lib/js/renderer/RendererEvents.js +848 -0
  307. package/lib/js/scene/Axes.d.ts +12 -0
  308. package/lib/js/scene/Axes.js +59 -0
  309. package/lib/js/scene/BaseNode.d.ts +61 -0
  310. package/lib/js/scene/BaseNode.js +69 -0
  311. package/lib/js/scene/Planet.d.ts +623 -0
  312. package/lib/js/scene/Planet.js +1431 -0
  313. package/lib/js/scene/RenderNode.d.ts +150 -0
  314. package/lib/js/scene/RenderNode.js +301 -0
  315. package/lib/js/scene/SkyBox.d.ts +13 -0
  316. package/lib/js/scene/SkyBox.js +87 -0
  317. package/lib/js/scene/index.d.ts +5 -0
  318. package/lib/js/scene/index.js +5 -0
  319. package/lib/js/segment/Segment.d.ts +278 -0
  320. package/lib/js/segment/Segment.js +1142 -0
  321. package/lib/js/segment/SegmentLonLat.d.ts +48 -0
  322. package/lib/js/segment/SegmentLonLat.js +214 -0
  323. package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
  324. package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
  325. package/lib/js/segment/Slice.d.ts +13 -0
  326. package/lib/js/segment/Slice.js +33 -0
  327. package/lib/js/segment/segmentHelper.d.ts +18 -0
  328. package/lib/js/segment/segmentHelper.js +180 -0
  329. package/lib/js/shaders/atmos.d.ts +4 -0
  330. package/lib/js/shaders/atmos.js +312 -0
  331. package/lib/js/shaders/billboard.d.ts +3 -0
  332. package/lib/js/shaders/billboard.js +214 -0
  333. package/lib/js/shaders/bloom.d.ts +2 -0
  334. package/lib/js/shaders/bloom.js +32 -0
  335. package/lib/js/shaders/blur.d.ts +3 -0
  336. package/lib/js/shaders/blur.js +68 -0
  337. package/lib/js/shaders/depth.d.ts +2 -0
  338. package/lib/js/shaders/depth.js +43 -0
  339. package/lib/js/shaders/drawnode.d.ts +8 -0
  340. package/lib/js/shaders/drawnode.js +986 -0
  341. package/lib/js/shaders/geoObject.d.ts +3 -0
  342. package/lib/js/shaders/geoObject.js +256 -0
  343. package/lib/js/shaders/label.d.ts +4 -0
  344. package/lib/js/shaders/label.js +589 -0
  345. package/lib/js/shaders/lumFilter.d.ts +2 -0
  346. package/lib/js/shaders/lumFilter.js +36 -0
  347. package/lib/js/shaders/pickingMask.d.ts +2 -0
  348. package/lib/js/shaders/pickingMask.js +22 -0
  349. package/lib/js/shaders/pointCloud.d.ts +2 -0
  350. package/lib/js/shaders/pointCloud.js +32 -0
  351. package/lib/js/shaders/polyline.d.ts +3 -0
  352. package/lib/js/shaders/polyline.js +345 -0
  353. package/lib/js/shaders/ray.d.ts +2 -0
  354. package/lib/js/shaders/ray.js +76 -0
  355. package/lib/js/shaders/screenFrame.d.ts +2 -0
  356. package/lib/js/shaders/screenFrame.js +26 -0
  357. package/lib/js/shaders/skybox.d.ts +2 -0
  358. package/lib/js/shaders/skybox.js +28 -0
  359. package/lib/js/shaders/toneMapping.d.ts +2 -0
  360. package/lib/js/shaders/toneMapping.js +85 -0
  361. package/lib/js/shaders/utils.d.ts +1 -0
  362. package/lib/js/shaders/utils.js +86 -0
  363. package/lib/js/terrain/BilTerrain.d.ts +18 -0
  364. package/lib/js/terrain/BilTerrain.js +152 -0
  365. package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
  366. package/lib/js/terrain/EmptyTerrain.js +106 -0
  367. package/lib/js/terrain/Geoid.d.ts +33 -0
  368. package/lib/js/terrain/Geoid.js +191 -0
  369. package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
  370. package/lib/js/terrain/GlobusTerrain.js +332 -0
  371. package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
  372. package/lib/js/terrain/MapboxTerrain.js +298 -0
  373. package/lib/js/terrain/index.d.ts +5 -0
  374. package/lib/js/terrain/index.js +5 -0
  375. package/lib/js/ui/Button.d.ts +32 -0
  376. package/lib/js/ui/Button.js +78 -0
  377. package/lib/js/ui/ButtonGroup.d.ts +16 -0
  378. package/lib/js/ui/ButtonGroup.js +41 -0
  379. package/lib/js/ui/Dialog.d.ts +55 -0
  380. package/lib/js/ui/Dialog.js +173 -0
  381. package/lib/js/ui/Slider.d.ts +38 -0
  382. package/lib/js/ui/Slider.js +129 -0
  383. package/lib/js/ui/ToggleButton.d.ts +20 -0
  384. package/lib/js/ui/ToggleButton.js +42 -0
  385. package/lib/js/ui/View.d.ts +37 -0
  386. package/lib/js/ui/View.js +151 -0
  387. package/lib/js/ui/icons.d.ts +1 -0
  388. package/lib/js/ui/icons.js +3 -0
  389. package/lib/js/utils/BaseWorker.d.ts +14 -0
  390. package/lib/js/utils/BaseWorker.js +47 -0
  391. package/lib/js/utils/FontAtlas.d.ts +82 -0
  392. package/lib/js/utils/FontAtlas.js +220 -0
  393. package/lib/js/utils/GeoImageCreator.d.ts +34 -0
  394. package/lib/js/utils/GeoImageCreator.js +163 -0
  395. package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
  396. package/lib/js/utils/ImagesCacheManager.js +63 -0
  397. package/lib/js/utils/Loader.d.ts +63 -0
  398. package/lib/js/utils/Loader.js +156 -0
  399. package/lib/js/utils/NormalMapCreator.d.ts +52 -0
  400. package/lib/js/utils/NormalMapCreator.js +310 -0
  401. package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
  402. package/lib/js/utils/PlainSegmentWorker.js +383 -0
  403. package/lib/js/utils/TerrainWorker.d.ts +28 -0
  404. package/lib/js/utils/TerrainWorker.js +551 -0
  405. package/lib/js/utils/TextureAtlas.d.ts +113 -0
  406. package/lib/js/utils/TextureAtlas.js +231 -0
  407. package/lib/js/utils/VectorTileCreator.d.ts +18 -0
  408. package/lib/js/utils/VectorTileCreator.js +320 -0
  409. package/lib/js/utils/colorTable.d.ts +3 -0
  410. package/lib/js/utils/colorTable.js +143 -0
  411. package/lib/js/utils/earcut.d.ts +7 -0
  412. package/lib/js/utils/earcut.js +536 -0
  413. package/lib/js/utils/objParser.d.ts +24 -0
  414. package/lib/js/utils/objParser.js +201 -0
  415. package/lib/js/utils/shared.d.ts +267 -0
  416. package/lib/js/utils/shared.js +893 -0
  417. package/lib/js/utils/units.d.ts +16 -0
  418. package/lib/js/utils/units.js +61 -0
  419. package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
  420. package/lib/js/webgl/BaseFramebuffer.js +88 -0
  421. package/lib/js/webgl/Framebuffer.d.ts +69 -0
  422. package/lib/js/webgl/Framebuffer.js +149 -0
  423. package/lib/js/webgl/Handler.d.ts +473 -0
  424. package/lib/js/webgl/Handler.js +1003 -0
  425. package/lib/js/webgl/Multisample.d.ts +27 -0
  426. package/lib/js/webgl/Multisample.js +77 -0
  427. package/lib/js/webgl/Program.d.ts +159 -0
  428. package/lib/js/webgl/Program.js +314 -0
  429. package/lib/js/webgl/ProgramController.d.ts +86 -0
  430. package/lib/js/webgl/ProgramController.js +110 -0
  431. package/lib/js/webgl/index.d.ts +6 -0
  432. package/lib/js/webgl/index.js +6 -0
  433. package/lib/js/webgl/types.d.ts +9 -0
  434. package/lib/js/webgl/types.js +26 -0
  435. package/lib/js/webgl/variableHandlers.d.ts +22 -0
  436. package/lib/js/webgl/variableHandlers.js +78 -0
  437. package/package.json +29 -38
  438. package/dist/@openglobus/og.esm.js +0 -21
  439. package/dist/@openglobus/og.esm.js.map +0 -1
  440. package/dist/@openglobus/og.umd.js +0 -21
  441. package/dist/@openglobus/og.umd.js.map +0 -1
  442. package/src/og/Clock.js +0 -214
  443. package/src/og/Deferred.js +0 -11
  444. package/src/og/Events.js +0 -185
  445. package/src/og/Extent.js +0 -352
  446. package/src/og/Globe.js +0 -342
  447. package/src/og/ImageCanvas.js +0 -236
  448. package/src/og/Lock.js +0 -44
  449. package/src/og/LonLat.js +0 -220
  450. package/src/og/Object3d.js +0 -395
  451. package/src/og/Popup.js +0 -187
  452. package/src/og/QueueArray.js +0 -75
  453. package/src/og/Rectangle.js +0 -111
  454. package/src/og/Stack.js +0 -49
  455. package/src/og/astro/astro.js +0 -51
  456. package/src/og/astro/earth.js +0 -112
  457. package/src/og/astro/jd.js +0 -514
  458. package/src/og/astro/orbit.js +0 -119
  459. package/src/og/astro/rotation.js +0 -36
  460. package/src/og/bv/Box.js +0 -77
  461. package/src/og/bv/Sphere.js +0 -57
  462. package/src/og/bv/index.js +0 -4
  463. package/src/og/camera/Camera.js +0 -645
  464. package/src/og/camera/Frustum.js +0 -331
  465. package/src/og/camera/PlanetCamera.js +0 -674
  466. package/src/og/camera/index.js +0 -4
  467. package/src/og/cons.js +0 -108
  468. package/src/og/control/Atmosphere.js +0 -387
  469. package/src/og/control/CompassButton.js +0 -146
  470. package/src/og/control/Control.js +0 -198
  471. package/src/og/control/DebugInfo.js +0 -259
  472. package/src/og/control/DrawingSwitcher.js +0 -117
  473. package/src/og/control/EarthCoordinates.js +0 -214
  474. package/src/og/control/EarthNavigation.js +0 -258
  475. package/src/og/control/GeoImageDragControl.js +0 -117
  476. package/src/og/control/KeyboardNavigation.js +0 -172
  477. package/src/og/control/LayerAnimation.js +0 -379
  478. package/src/og/control/LayerSwitcher.js +0 -424
  479. package/src/og/control/Lighting.js +0 -487
  480. package/src/og/control/MouseNavigation.js +0 -436
  481. package/src/og/control/MouseWheelZoomControl.js +0 -253
  482. package/src/og/control/RulerSwitcher.js +0 -74
  483. package/src/og/control/ScaleControl.js +0 -119
  484. package/src/og/control/SegmentBoundVisualization.js +0 -54
  485. package/src/og/control/ShowFps.js +0 -40
  486. package/src/og/control/SimpleNavigation.js +0 -123
  487. package/src/og/control/SimpleSkyBackground.js +0 -206
  488. package/src/og/control/Sun.js +0 -176
  489. package/src/og/control/ToggleWireframe.js +0 -35
  490. package/src/og/control/TouchNavigation.js +0 -350
  491. package/src/og/control/ZoomControl.js +0 -115
  492. package/src/og/control/drawing/DrawingControl.js +0 -51
  493. package/src/og/control/drawing/LineStringDrawingScene.js +0 -203
  494. package/src/og/control/drawing/PolygonDrawingScene.js +0 -785
  495. package/src/og/control/elevationProfile/ElevationProfile.js +0 -275
  496. package/src/og/control/heightRuler/HeightRuler.js +0 -12
  497. package/src/og/control/heightRuler/HeightRulerScene.js +0 -228
  498. package/src/og/control/heightRuler/HeightRulerSwitcher.js +0 -15
  499. package/src/og/control/index.js +0 -56
  500. package/src/og/control/ruler/Ruler.js +0 -39
  501. package/src/og/control/ruler/RulerScene.js +0 -395
  502. package/src/og/control/selection/Selection.js +0 -95
  503. package/src/og/control/selection/SelectionScene.js +0 -345
  504. package/src/og/control/timeline/TimelineControl.js +0 -100
  505. package/src/og/control/timeline/TimelineModel.js +0 -137
  506. package/src/og/control/timeline/TimelineView.js +0 -462
  507. package/src/og/control/timeline/timelineUtils.js +0 -132
  508. package/src/og/control/visibleExtent/Segment.js +0 -1854
  509. package/src/og/control/visibleExtent/VisibleExtent.js +0 -80
  510. package/src/og/control/visibleExtent/drawnode.js +0 -747
  511. package/src/og/ellipsoid/Ellipsoid.js +0 -565
  512. package/src/og/ellipsoid/index.js +0 -4
  513. package/src/og/ellipsoid/wgs84.js +0 -9
  514. package/src/og/entity/BaseBillboard.js +0 -375
  515. package/src/og/entity/Billboard.js +0 -161
  516. package/src/og/entity/BillboardHandler.js +0 -883
  517. package/src/og/entity/Entity.js +0 -728
  518. package/src/og/entity/EntityCollection.js +0 -830
  519. package/src/og/entity/GeoObject.js +0 -244
  520. package/src/og/entity/GeoObjectHandler.js +0 -744
  521. package/src/og/entity/Geometry.js +0 -320
  522. package/src/og/entity/GeometryHandler.js +0 -1340
  523. package/src/og/entity/Label.js +0 -345
  524. package/src/og/entity/LabelHandler.js +0 -895
  525. package/src/og/entity/LabelWorker.js +0 -194
  526. package/src/og/entity/PointCloud.js +0 -491
  527. package/src/og/entity/PointCloudHandler.js +0 -122
  528. package/src/og/entity/Polyline.js +0 -2203
  529. package/src/og/entity/PolylineHandler.js +0 -105
  530. package/src/og/entity/Ray.js +0 -262
  531. package/src/og/entity/RayHandler.js +0 -841
  532. package/src/og/entity/Strip.js +0 -628
  533. package/src/og/entity/StripHandler.js +0 -158
  534. package/src/og/entity/index.js +0 -9
  535. package/src/og/index.js +0 -112
  536. package/src/og/input/KeyboardHandler.js +0 -195
  537. package/src/og/input/MouseHandler.js +0 -94
  538. package/src/og/input/TouchHandler.js +0 -59
  539. package/src/og/input/input.js +0 -44
  540. package/src/og/layer/BaseGeoImage.js +0 -480
  541. package/src/og/layer/CanvasTiles.js +0 -360
  542. package/src/og/layer/GeoImage.js +0 -150
  543. package/src/og/layer/GeoTexture2d.js +0 -50
  544. package/src/og/layer/GeoVideo.js +0 -187
  545. package/src/og/layer/KML.js +0 -358
  546. package/src/og/layer/Layer.js +0 -907
  547. package/src/og/layer/Material.js +0 -98
  548. package/src/og/layer/Vector.js +0 -1068
  549. package/src/og/layer/WMS.js +0 -182
  550. package/src/og/layer/XYZ.js +0 -374
  551. package/src/og/layer/index.js +0 -11
  552. package/src/og/light/LightSource.js +0 -362
  553. package/src/og/math/Line2.js +0 -28
  554. package/src/og/math/Line3.js +0 -140
  555. package/src/og/math/Mat3.js +0 -152
  556. package/src/og/math/Mat4.js +0 -603
  557. package/src/og/math/Plane.js +0 -117
  558. package/src/og/math/Quat.js +0 -980
  559. package/src/og/math/Ray.js +0 -237
  560. package/src/og/math/Vec2.js +0 -520
  561. package/src/og/math/Vec3.js +0 -931
  562. package/src/og/math/Vec4.js +0 -256
  563. package/src/og/math/coder.js +0 -104
  564. package/src/og/math/index.js +0 -23
  565. package/src/og/math.js +0 -430
  566. package/src/og/mercator.js +0 -149
  567. package/src/og/proj/EPSG3857.js +0 -13
  568. package/src/og/proj/EPSG4326.js +0 -13
  569. package/src/og/proj/Proj.js +0 -59
  570. package/src/og/quadTree/EPSG4326QuadTreeStrategy.js +0 -27
  571. package/src/og/quadTree/EarthQuadTreeStrategy.js +0 -30
  572. package/src/og/quadTree/EntityCollectionNode.js +0 -391
  573. package/src/og/quadTree/MarsQuadTreeStrategy.js +0 -28
  574. package/src/og/quadTree/Node.js +0 -785
  575. package/src/og/quadTree/QuadTreeStrategy.js +0 -94
  576. package/src/og/quadTree/Wgs84QuadTreeStrategy.js +0 -27
  577. package/src/og/quadTree/index.js +0 -14
  578. package/src/og/quadTree/quadTree.js +0 -77
  579. package/src/og/renderer/Renderer.js +0 -1185
  580. package/src/og/renderer/RendererEvents.js +0 -1094
  581. package/src/og/res/images.js +0 -8
  582. package/src/og/scene/Axes.js +0 -74
  583. package/src/og/scene/BaseNode.js +0 -109
  584. package/src/og/scene/Planet.js +0 -1931
  585. package/src/og/scene/RenderNode.js +0 -392
  586. package/src/og/scene/SkyBox.js +0 -104
  587. package/src/og/scene/index.js +0 -5
  588. package/src/og/segment/Segment.js +0 -1687
  589. package/src/og/segment/SegmentLonLat.js +0 -294
  590. package/src/og/segment/SegmentLonLatWgs84.js +0 -40
  591. package/src/og/segment/Slice.js +0 -45
  592. package/src/og/segment/segmentHelper.js +0 -230
  593. package/src/og/shaders/atmos.js +0 -332
  594. package/src/og/shaders/billboard.js +0 -225
  595. package/src/og/shaders/bloom.js +0 -37
  596. package/src/og/shaders/blur.js +0 -79
  597. package/src/og/shaders/depth.js +0 -48
  598. package/src/og/shaders/drawnode.js +0 -1040
  599. package/src/og/shaders/geoObject.js +0 -270
  600. package/src/og/shaders/label.js +0 -604
  601. package/src/og/shaders/lumFilter.js +0 -41
  602. package/src/og/shaders/pickingMask.js +0 -27
  603. package/src/og/shaders/pointCloud.js +0 -38
  604. package/src/og/shaders/polyline.js +0 -557
  605. package/src/og/shaders/ray.js +0 -81
  606. package/src/og/shaders/screenFrame.js +0 -31
  607. package/src/og/shaders/skybox.js +0 -33
  608. package/src/og/shaders/toneMapping.js +0 -90
  609. package/src/og/shaders/utils.js +0 -88
  610. package/src/og/terrain/BilTerrain.js +0 -243
  611. package/src/og/terrain/EmptyTerrain.js +0 -174
  612. package/src/og/terrain/Geoid.js +0 -247
  613. package/src/og/terrain/GlobusTerrain.js +0 -483
  614. package/src/og/terrain/MapboxTerrain.js +0 -470
  615. package/src/og/terrain/index.js +0 -6
  616. package/src/og/ui/Button.js +0 -107
  617. package/src/og/ui/ButtonGroup.js +0 -57
  618. package/src/og/ui/Dialog.js +0 -239
  619. package/src/og/ui/Slider.js +0 -170
  620. package/src/og/ui/ToggleButton.js +0 -51
  621. package/src/og/ui/UIhelpers.js +0 -155
  622. package/src/og/ui/View.js +0 -190
  623. package/src/og/ui/icons.js +0 -3
  624. package/src/og/utils/BaseWorker.js +0 -46
  625. package/src/og/utils/FontAtlas.js +0 -218
  626. package/src/og/utils/GeoImageCreator.js +0 -204
  627. package/src/og/utils/ImagesCacheManager.js +0 -70
  628. package/src/og/utils/Loader.js +0 -188
  629. package/src/og/utils/NormalMapCreator.js +0 -404
  630. package/src/og/utils/PlainSegmentWorker.js +0 -398
  631. package/src/og/utils/TerrainWorker.js +0 -573
  632. package/src/og/utils/TextureAtlas.js +0 -291
  633. package/src/og/utils/VectorTileCreator.js +0 -391
  634. package/src/og/utils/colorTable.js +0 -145
  635. package/src/og/utils/earcut.js +0 -661
  636. package/src/og/utils/functionComposition.js +0 -13
  637. package/src/og/utils/objParser.js +0 -227
  638. package/src/og/utils/shared.js +0 -989
  639. package/src/og/utils/units.js +0 -78
  640. package/src/og/webgl/Framebuffer.js +0 -311
  641. package/src/og/webgl/Handler.js +0 -1170
  642. package/src/og/webgl/Multisample.js +0 -275
  643. package/src/og/webgl/Program.js +0 -407
  644. package/src/og/webgl/ProgramController.js +0 -143
  645. package/src/og/webgl/callbacks.js +0 -98
  646. package/src/og/webgl/index.js +0 -13
  647. package/src/og/webgl/types.js +0 -31
  648. package/src/og.jsdoc +0 -3
  649. package/types/Clock.d.ts +0 -99
  650. package/types/Deferred.d.ts +0 -6
  651. package/types/Events.d.ts +0 -78
  652. package/types/Extent.d.ts +0 -166
  653. package/types/Globe.d.ts +0 -108
  654. package/types/ImageCanvas.d.ts +0 -128
  655. package/types/Lock.d.ts +0 -12
  656. package/types/LonLat.d.ts +0 -127
  657. package/types/Object3d.d.ts +0 -35
  658. package/types/Popup.d.ts +0 -29
  659. package/types/QueueArray.d.ts +0 -19
  660. package/types/Rectangle.d.ts +0 -80
  661. package/types/Stack.d.ts +0 -19
  662. package/types/arial.d.ts +0 -49
  663. package/types/astro/astro.d.ts +0 -38
  664. package/types/astro/earth.d.ts +0 -7
  665. package/types/astro/jd.d.ts +0 -254
  666. package/types/bv/Box.d.ts +0 -30
  667. package/types/bv/Sphere.d.ts +0 -38
  668. package/types/bv/index.d.ts +0 -3
  669. package/types/camera/Camera.d.ts +0 -314
  670. package/types/camera/Frustum.d.ts +0 -133
  671. package/types/camera/PlanetCamera.d.ts +0 -219
  672. package/types/camera/index.d.ts +0 -3
  673. package/types/cons.d.ts +0 -40
  674. package/types/control/Atmosphere.d.ts +0 -15
  675. package/types/control/CompassButton.d.ts +0 -16
  676. package/types/control/Control.d.ts +0 -104
  677. package/types/control/DebugInfo.d.ts +0 -19
  678. package/types/control/DrawingSwitcher.d.ts +0 -13
  679. package/types/control/EarthCoordinates.d.ts +0 -44
  680. package/types/control/EarthNavigation.d.ts +0 -43
  681. package/types/control/GeoImageDragControl.d.ts +0 -14
  682. package/types/control/KeyboardNavigation.d.ts +0 -24
  683. package/types/control/LayerAnimation.d.ts +0 -73
  684. package/types/control/LayerSwitcher.d.ts +0 -64
  685. package/types/control/Lighting.d.ts +0 -41
  686. package/types/control/MouseNavigation.d.ts +0 -49
  687. package/types/control/MouseWheelZoomControl.d.ts +0 -46
  688. package/types/control/ScaleControl.d.ts +0 -23
  689. package/types/control/ShowFps.d.ts +0 -11
  690. package/types/control/SimpleNavigation.d.ts +0 -26
  691. package/types/control/SimpleSkyBackground.d.ts +0 -15
  692. package/types/control/Sun.d.ts +0 -53
  693. package/types/control/ToggleWireframe.d.ts +0 -12
  694. package/types/control/TouchNavigation.d.ts +0 -54
  695. package/types/control/ZoomControl.d.ts +0 -26
  696. package/types/control/drawing/DrawingControl.d.ts +0 -14
  697. package/types/control/drawing/LineStringDrawingScene.d.ts +0 -5
  698. package/types/control/drawing/PolygonDrawingScene.d.ts +0 -99
  699. package/types/control/heightRuler/HeightRuler.d.ts +0 -6
  700. package/types/control/heightRuler/HeightRulerScene.d.ts +0 -23
  701. package/types/control/index.d.ts +0 -27
  702. package/types/control/ruler/Ruler.d.ts +0 -13
  703. package/types/control/ruler/RulerScene.d.ts +0 -51
  704. package/types/control/selection/Selection.d.ts +0 -49
  705. package/types/control/selection/SelectionScene.d.ts +0 -32
  706. package/types/control/timeline/TimelineControl.d.ts +0 -10
  707. package/types/control/timeline/TimelineModel.d.ts +0 -33
  708. package/types/control/timeline/TimelineView.d.ts +0 -57
  709. package/types/control/timeline/timelineUtils.d.ts +0 -9
  710. package/types/ellipsoid/Ellipsoid.d.ts +0 -170
  711. package/types/ellipsoid/index.d.ts +0 -3
  712. package/types/ellipsoid/wgs84.d.ts +0 -6
  713. package/types/entity/BaseBillboard.d.ts +0 -215
  714. package/types/entity/Billboard.d.ts +0 -94
  715. package/types/entity/BillboardHandler.d.ts +0 -75
  716. package/types/entity/Entity.d.ts +0 -340
  717. package/types/entity/EntityCollection.d.ts +0 -303
  718. package/types/entity/GeoObject.d.ts +0 -117
  719. package/types/entity/GeoObjectHandler.d.ts +0 -41
  720. package/types/entity/Geometry.d.ts +0 -79
  721. package/types/entity/GeometryHandler.d.ts +0 -76
  722. package/types/entity/Label.d.ts +0 -190
  723. package/types/entity/LabelHandler.d.ts +0 -31
  724. package/types/entity/LabelWorker.d.ts +0 -9
  725. package/types/entity/PointCloud.d.ts +0 -174
  726. package/types/entity/PointCloudHandler.d.ts +0 -38
  727. package/types/entity/Polyline.d.ts +0 -307
  728. package/types/entity/PolylineHandler.d.ts +0 -18
  729. package/types/entity/Ray.d.ts +0 -122
  730. package/types/entity/RayHandler.d.ts +0 -63
  731. package/types/entity/Strip.d.ts +0 -119
  732. package/types/entity/StripHandler.d.ts +0 -38
  733. package/types/entity/index.d.ts +0 -8
  734. package/types/index.d.ts +0 -53
  735. package/types/input/KeyboardHandler.d.ts +0 -17
  736. package/types/input/MouseHandler.d.ts +0 -5
  737. package/types/input/TouchHandler.d.ts +0 -5
  738. package/types/input/input.d.ts +0 -42
  739. package/types/layer/BaseGeoImage.d.ts +0 -116
  740. package/types/layer/CanvasTiles.d.ts +0 -73
  741. package/types/layer/GeoImage.d.ts +0 -51
  742. package/types/layer/GeoTexture2d.d.ts +0 -7
  743. package/types/layer/GeoVideo.d.ts +0 -47
  744. package/types/layer/KML.d.ts +0 -93
  745. package/types/layer/Layer.d.ts +0 -320
  746. package/types/layer/Material.d.ts +0 -45
  747. package/types/layer/Vector.d.ts +0 -211
  748. package/types/layer/WMS.d.ts +0 -66
  749. package/types/layer/XYZ.d.ts +0 -122
  750. package/types/layer/index.d.ts +0 -10
  751. package/types/light/LightSource.d.ts +0 -178
  752. package/types/math/Line2.d.ts +0 -11
  753. package/types/math/Line3.d.ts +0 -10
  754. package/types/math/Mat3.d.ts +0 -65
  755. package/types/math/Mat4.d.ts +0 -176
  756. package/types/math/Plane.d.ts +0 -18
  757. package/types/math/Quat.d.ts +0 -379
  758. package/types/math/Ray.d.ts +0 -82
  759. package/types/math/Vec2.d.ts +0 -309
  760. package/types/math/Vec3.d.ts +0 -472
  761. package/types/math/Vec4.d.ts +0 -161
  762. package/types/math/coder.d.ts +0 -43
  763. package/types/math/index.d.ts +0 -11
  764. package/types/math.d.ts +0 -268
  765. package/types/mercator.d.ts +0 -92
  766. package/types/proj/EPSG3857.d.ts +0 -6
  767. package/types/proj/EPSG4326.d.ts +0 -6
  768. package/types/proj/Proj.d.ts +0 -42
  769. package/types/quadTree/EPSG4326QuadTreeStrategy.d.ts +0 -3
  770. package/types/quadTree/EarthQuadTreeStrategy.d.ts +0 -3
  771. package/types/quadTree/EntityCollectionNode.d.ts +0 -41
  772. package/types/quadTree/MarsQuadTreeStrategy.d.ts +0 -3
  773. package/types/quadTree/Node.d.ts +0 -58
  774. package/types/quadTree/QuadTreeStrategy.d.ts +0 -21
  775. package/types/quadTree/Wgs84QuadTreeStrategy.d.ts +0 -3
  776. package/types/quadTree/index.d.ts +0 -12
  777. package/types/quadTree/quadTree.d.ts +0 -40
  778. package/types/renderer/Renderer.d.ts +0 -291
  779. package/types/renderer/RendererEvents.d.ts +0 -241
  780. package/types/res/images.d.ts +0 -2
  781. package/types/scene/Axes.d.ts +0 -10
  782. package/types/scene/BaseNode.d.ts +0 -60
  783. package/types/scene/Planet.d.ts +0 -594
  784. package/types/scene/RenderNode.d.ts +0 -152
  785. package/types/scene/SkyBox.d.ts +0 -9
  786. package/types/scene/index.d.ts +0 -4
  787. package/types/segment/Segment.d.ts +0 -273
  788. package/types/segment/SegmentLonLat.d.ts +0 -22
  789. package/types/segment/SegmentLonLatWgs84.d.ts +0 -4
  790. package/types/segment/Slice.d.ts +0 -10
  791. package/types/segment/segmentHelper.d.ts +0 -13
  792. package/types/shaders/atmos.d.ts +0 -4
  793. package/types/shaders/billboard.d.ts +0 -3
  794. package/types/shaders/depth.d.ts +0 -2
  795. package/types/shaders/drawnode.d.ts +0 -8
  796. package/types/shaders/geoObject.d.ts +0 -3
  797. package/types/shaders/label.d.ts +0 -4
  798. package/types/shaders/pickingMask.d.ts +0 -2
  799. package/types/shaders/pointCloud.d.ts +0 -2
  800. package/types/shaders/polyline.d.ts +0 -3
  801. package/types/shaders/ray.d.ts +0 -2
  802. package/types/shaders/screenFrame.d.ts +0 -2
  803. package/types/shaders/skybox.d.ts +0 -2
  804. package/types/shaders/toneMapping.d.ts +0 -2
  805. package/types/shaders/utils.d.ts +0 -1
  806. package/types/terrain/BilTerrain.d.ts +0 -14
  807. package/types/terrain/EmptyTerrain.d.ts +0 -87
  808. package/types/terrain/Geoid.d.ts +0 -17
  809. package/types/terrain/GlobusTerrain.d.ts +0 -122
  810. package/types/terrain/MapboxTerrain.d.ts +0 -14
  811. package/types/terrain/index.d.ts +0 -5
  812. package/types/ui/Button.d.ts +0 -21
  813. package/types/ui/ButtonGroup.d.ts +0 -12
  814. package/types/ui/Dialog.d.ts +0 -41
  815. package/types/ui/Slider.d.ts +0 -33
  816. package/types/ui/ToggleButton.d.ts +0 -10
  817. package/types/ui/UIhelpers.d.ts +0 -13
  818. package/types/ui/View.d.ts +0 -33
  819. package/types/ui/icons.d.ts +0 -1
  820. package/types/utils/BaseWorker.d.ts +0 -14
  821. package/types/utils/FontAtlas.d.ts +0 -16
  822. package/types/utils/GeoImageCreator.d.ts +0 -30
  823. package/types/utils/ImagesCacheManager.d.ts +0 -10
  824. package/types/utils/Loader.d.ts +0 -31
  825. package/types/utils/NormalMapCreator.d.ts +0 -39
  826. package/types/utils/PlainSegmentWorker.d.ts +0 -8
  827. package/types/utils/TerrainWorker.d.ts +0 -7
  828. package/types/utils/TextureAtlas.d.ts +0 -113
  829. package/types/utils/VectorTileCreator.d.ts +0 -14
  830. package/types/utils/colorTable.d.ts +0 -143
  831. package/types/utils/earcut.d.ts +0 -6
  832. package/types/utils/functionComposition.d.ts +0 -5
  833. package/types/utils/objParser.d.ts +0 -8
  834. package/types/utils/shared.d.ts +0 -241
  835. package/types/utils/units.d.ts +0 -20
  836. package/types/webgl/Framebuffer.d.ts +0 -134
  837. package/types/webgl/Handler.d.ts +0 -403
  838. package/types/webgl/Multisample.d.ts +0 -91
  839. package/types/webgl/Program.d.ts +0 -163
  840. package/types/webgl/ProgramController.d.ts +0 -89
  841. package/types/webgl/callbacks.d.ts +0 -1
  842. package/types/webgl/index.d.ts +0 -6
  843. package/types/webgl/types.d.ts +0 -2
  844. /package/{dist → lib}/@openglobus/og.css +0 -0
  845. /package/{src/og → lib/@openglobus/res/fonts}/arial.js +0 -0
@@ -1,931 +0,0 @@
1
- "use strict";
2
-
3
- import { Quat } from "./Quat.js";
4
- import { Vec4 } from "./Vec4.js";
5
-
6
- /**
7
- * Class represents a 3d vector.
8
- * @class
9
- * @param {number} [x] - First value.
10
- * @param {number} [y] - Second value.
11
- * @param {number} [z] - Third value.
12
- */
13
- export class Vec3 {
14
- constructor(x = 0.0, y = 0.0, z = 0.0) {
15
- /**
16
- * @public
17
- * @type {number}
18
- */
19
- this.x = x || 0.0;
20
-
21
- /**
22
- * @public
23
- * @type {number}
24
- */
25
- this.y = y || 0.0;
26
-
27
- /**
28
- * @public
29
- * @type {number}
30
- */
31
- this.z = z || 0.0;
32
- }
33
-
34
- /** @const */
35
- static get UP() {
36
- return new Vec3(0, 1, 0);
37
- }
38
-
39
- /** @const */
40
- static get DOWN() {
41
- return new Vec3(0, -1, 0);
42
- }
43
-
44
- /** @const */
45
- static get RIGHT() {
46
- return new Vec3(1, 0, 0);
47
- }
48
-
49
- /** @const */
50
- static get LEFT() {
51
- return new Vec3(-1, 0, 0);
52
- }
53
-
54
- /** @const */
55
- static get FORWARD() {
56
- return new Vec3(0, 0, -1);
57
- }
58
-
59
- /** @const */
60
- static get BACKWARD() {
61
- return new Vec3(0, 0, 1);
62
- }
63
-
64
- /** @const */
65
- static get ZERO() {
66
- return new Vec3();
67
- }
68
-
69
- /** @const */
70
- static get UNIT_X() {
71
- return new Vec3(1, 0, 0);
72
- }
73
-
74
- /** @const */
75
- static get UNIT_Y() {
76
- return new Vec3(0, 1, 0);
77
- }
78
-
79
- /** @const */
80
- static get UNIT_Z() {
81
- return new Vec3(0, 0, 1);
82
- }
83
-
84
- /** @const */
85
- static get NORTH() {
86
- return Vec3.UNIT_Z;
87
- }
88
-
89
- /**
90
- * Separate 63 bit Vec3 to two Vec3 32 bit float values.
91
- * @function
92
- * @param {number} value - Double type value.
93
- * @param {Vec3} high - Out vector high values.
94
- * @param {Vec3} low - Out vector low values.
95
- * @returns {Array.<number>} Encoded array. (exactly 2 entries)
96
- */
97
- static doubleToTwoFloats(v, high, low) {
98
- let x = v.x,
99
- y = v.y,
100
- z = v.z;
101
-
102
- if (x >= 0.0) {
103
- let doubleHigh = Math.floor(x / 65536.0) * 65536.0;
104
- high.x = Math.fround(doubleHigh);
105
- low.x = Math.fround(x - doubleHigh);
106
- } else {
107
- let doubleHigh = Math.floor(-x / 65536.0) * 65536.0;
108
- high.x = Math.fround(-doubleHigh);
109
- low.x = Math.fround(x + doubleHigh);
110
- }
111
-
112
- if (y >= 0.0) {
113
- let doubleHigh = Math.floor(y / 65536.0) * 65536.0;
114
- high.y = Math.fround(doubleHigh);
115
- low.y = Math.fround(y - doubleHigh);
116
- } else {
117
- let doubleHigh = Math.floor(-y / 65536.0) * 65536.0;
118
- high.y = Math.fround(-doubleHigh);
119
- low.y = Math.fround(y + doubleHigh);
120
- }
121
-
122
- if (z >= 0.0) {
123
- let doubleHigh = Math.floor(z / 65536.0) * 65536.0;
124
- high.z = Math.fround(doubleHigh);
125
- low.z = Math.fround(z - doubleHigh);
126
- } else {
127
- let doubleHigh = Math.floor(-z / 65536.0) * 65536.0;
128
- high.z = Math.fround(-doubleHigh);
129
- low.z = Math.fround(z + doubleHigh);
130
- }
131
- }
132
-
133
- /**
134
- * Separate 63 bit Vec3 to two Vec3 32 bit float values.
135
- * @function
136
- * @param {number} value - Double type value.
137
- * @param {Float32Array} high - Out vector high values.
138
- * @param {Float32Array} low - Out vector low values.
139
- * @returns {Array.<number>} Encoded array. (exactly 2 entries)
140
- */
141
- static doubleToTwoFloat32Array(v, high, low) {
142
- let x = v.x,
143
- y = v.y,
144
- z = v.z;
145
-
146
- if (x >= 0.0) {
147
- let doubleHigh = Math.floor(x / 65536.0) * 65536.0;
148
- high[0] = Math.fround(doubleHigh);
149
- low[0] = Math.fround(x - doubleHigh);
150
- } else {
151
- let doubleHigh = Math.floor(-x / 65536.0) * 65536.0;
152
- high[0] = Math.fround(-doubleHigh);
153
- low[0] = Math.fround(x + doubleHigh);
154
- }
155
-
156
- if (y >= 0.0) {
157
- let doubleHigh = Math.floor(y / 65536.0) * 65536.0;
158
- high[1] = Math.fround(doubleHigh);
159
- low[1] = Math.fround(y - doubleHigh);
160
- } else {
161
- let doubleHigh = Math.floor(-y / 65536.0) * 65536.0;
162
- high[1] = Math.fround(-doubleHigh);
163
- low[1] = Math.fround(y + doubleHigh);
164
- }
165
-
166
- if (z >= 0.0) {
167
- let doubleHigh = Math.floor(z / 65536.0) * 65536.0;
168
- high[2] = Math.fround(doubleHigh);
169
- low[2] = Math.fround(z - doubleHigh);
170
- } else {
171
- let doubleHigh = Math.floor(-z / 65536.0) * 65536.0;
172
- high[2] = Math.fround(-doubleHigh);
173
- low[2] = Math.fround(z + doubleHigh);
174
- }
175
- }
176
-
177
- /**
178
- * Creates 3d vector from array.
179
- * @function
180
- * @param {Array.<number>} arr - Input array (exactly 3 entries)
181
- * @returns {Vec3} -
182
- */
183
- static fromVec(arr) {
184
- return new Vec3(arr[0], arr[1], arr[2]);
185
- }
186
-
187
- /**
188
- * Gets angle between two vectors.
189
- * @static
190
- * @param {Vec3} a - First vector.
191
- * @param {Vec3} b - Second vector.
192
- * @returns {number} -
193
- */
194
- static angle(a, b) {
195
- return Math.acos(a.dot(b) / Math.sqrt(a.length2() * b.length2()));
196
- }
197
-
198
- /**
199
- * Returns two vectors linear interpolation.
200
- * @static
201
- * @param {Vec3} v1 - Start vector.
202
- * @param {Vec3} v2 - End vector.
203
- * @param {number} l - Interpolate value.
204
- * @returns {Vec3} -
205
- */
206
- static lerp(v1, v2, l) {
207
- return new Vec3(v1.x + (v2.x - v1.x) * l, v1.y + (v2.y - v1.y) * l, v1.z + (v2.z - v1.z) * l);
208
- }
209
-
210
- /**
211
- * Returns summary vector.
212
- * @static
213
- * @param {Vec3} a - First vector.
214
- * @param {Vec3} b - Second vector.
215
- * @returns {Vec3} - Summary vector.
216
- */
217
- static add(a, b) {
218
- var res = new Vec3(a.x, a.y, a.z);
219
- res.addA(b);
220
- return res;
221
- }
222
-
223
- /**
224
- * Returns two vectors subtraction.
225
- * @static
226
- * @param {Vec3} a - First vector.
227
- * @param {Vec3} b - Second vector.
228
- * @returns {Vec3} - Vectors subtraction.
229
- */
230
- static sub(a, b) {
231
- var res = new Vec3(a.x, a.y, a.z);
232
- res.subA(b);
233
- return res;
234
- }
235
-
236
- /**
237
- * Returns scaled vector.
238
- * @static
239
- * @param {Vec3} a - Input vector.
240
- * @param {number} scale - Scale value.
241
- * @returns {Vec3} -
242
- */
243
- static scale(a, scale) {
244
- return a.scaleTo(scale);
245
- }
246
-
247
- /**
248
- * Returns two vectors production.
249
- * @static
250
- * @param {Vec3} a - First vector.
251
- * @param {Vec3} b - Second vector.
252
- * @returns {Vec3} -
253
- */
254
- static mul(a, b) {
255
- var res = new Vec3(a.x, a.y, a.z);
256
- res.mulA(b);
257
- return res;
258
- }
259
-
260
- /**
261
- * Returns true if two vectors are non collinear.
262
- * @public
263
- * @param {Vec3} a - First vector.
264
- * @param {Vec3} b - Second vector.
265
- * @returns {Vec3} -
266
- */
267
- static noncollinear(a, b) {
268
- return a.y * b.z - a.z * b.y || a.z * b.x - a.x * b.z || a.x * b.y - a.y * b.z;
269
- }
270
-
271
- /**
272
- * Get projection of the vector to plane where n - normal to the plane.
273
- * @static
274
- * @param {Vec3} b - Vector to project.
275
- * @param {Vec3} n - Plane normal.
276
- * @param {Vec3} [def] - Default value for non existed result.
277
- * @returns {Vec3} -
278
- */
279
- static proj_b_to_plane(b, n, def) {
280
- var res = b.sub(n.scaleTo(n.dot(b) / n.dot(n)));
281
- if (def && res.isZero()) {
282
- return new Vec3(def.x, def.y, def.z);
283
- }
284
- return res;
285
- }
286
-
287
- /**
288
- * Get projection of the first vector to the second.
289
- * @static
290
- * @param {Vec3} b - First vector.
291
- * @param {Vec3} a - Second vector.
292
- * @returns {Vec3} -
293
- */
294
- static proj_b_to_a(b, a) {
295
- return a.scaleTo(a.dot(b) / a.dot(a));
296
- }
297
-
298
- /**
299
- * Makes vectors normalized and orthogonal to each other.
300
- * Normalizes normal. Normalizes tangent and makes sure it is orthogonal to normal (that is, angle between them is 90 degrees).
301
- * @static
302
- * @param {Vec3} normal - Normal vector.
303
- * @param {Vec3} tangent - Tangent vector.
304
- * @returns {Vec3} -
305
- */
306
- static orthoNormalize(normal, tangent) {
307
- normal = normal.normal();
308
- normal.scale(tangent.dot(normal));
309
- return tangent.subA(normal).normalize();
310
- }
311
-
312
- /**
313
- * Returns vector components division product one to another.
314
- * @static
315
- * @param {Vec3} a - First vector.
316
- * @param {Vec3} b - Second vector.
317
- * @returns {Vec3} -
318
- */
319
- static div(a, b) {
320
- var res = new Vec3(a.x, a.y, a.z);
321
- res.divA(b);
322
- return res;
323
- }
324
-
325
- static length2(a) {
326
- return a.length2();
327
- }
328
-
329
- static length(a) {
330
- return a.length();
331
- }
332
-
333
- static dot(a, b) {
334
- return a.dot(b);
335
- }
336
-
337
- /**
338
- * Converts to 4d vector, Fourth value is 1.0.
339
- * @public
340
- * @returns {Vec4} -
341
- */
342
- toVec4() {
343
- return new Vec4(this.x, this.y, this.z, 1.0);
344
- }
345
-
346
- /**
347
- * Returns clone vector.
348
- * @public
349
- * @returns {Vec3} -
350
- */
351
- clone() {
352
- return new Vec3(this.x, this.y, this.z);
353
- }
354
-
355
- /**
356
- * Converts vector to text string.
357
- * @public
358
- * @returns {string} -
359
- */
360
- toString() {
361
- return "(" + this.x + "," + this.y + "," + this.z + ")";
362
- }
363
-
364
- /**
365
- * Returns true if vector's values are zero.
366
- * @public
367
- * @returns {boolean} -
368
- */
369
- isZero() {
370
- return !(this.x || this.y || this.z);
371
- }
372
-
373
- /**
374
- * Get projection of the first vector to the second.
375
- * @static
376
- * @param {Vec3} a - Project vector.
377
- * @returns {Vec3} -
378
- */
379
- projToVec(a) {
380
- return a.scaleTo(a.dot(this) / a.dot(a));
381
- }
382
-
383
- /**
384
- * Compares with vector. Returns true if it equals another.
385
- * @public
386
- * @param {Vec3} p - Vector to compare.
387
- * @returns {boolean} -
388
- */
389
- equal(p) {
390
- return this.x === p.x && this.y === p.y && this.z === p.z;
391
- }
392
-
393
- /**
394
- * Copy input vector's values.
395
- * @param {Vec3} p - Vector to copy.
396
- * @returns {Vec3} -
397
- */
398
- copy(p) {
399
- this.x = p.x;
400
- this.y = p.y;
401
- this.z = p.z;
402
- return this;
403
- }
404
-
405
- /**
406
- * Gets vector's length.
407
- * @public
408
- * @returns {number} -
409
- */
410
- length() {
411
- return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
412
- }
413
-
414
- /**
415
- * Returns squared vector's length.
416
- * @public
417
- * @returns {number} -
418
- */
419
- length2() {
420
- return this.x * this.x + this.y * this.y + this.z * this.z;
421
- }
422
-
423
- /**
424
- * Converts vector's values to a quaternion object.
425
- * @public
426
- * @returns {Quat} -
427
- */
428
- getQuat() {
429
- return new Quat(this.x, this.y, this.z);
430
- }
431
-
432
- /**
433
- * Adds vector to the current.
434
- * @public
435
- * @param {Vec3} p - Point to add.
436
- * @returns {Vec3} -
437
- */
438
- addA(p) {
439
- this.x += p.x;
440
- this.y += p.y;
441
- this.z += p.z;
442
- return this;
443
- }
444
-
445
- /**
446
- * Gets two vectors summarization.
447
- * @public
448
- * @param {Vec3} p - Vector to add.
449
- * @returns {Vec3} Returns a sum vector.
450
- */
451
- add(p) {
452
- return new Vec3(this.x + p.x, this.y + p.y, this.z + p.z);
453
- }
454
-
455
- /**
456
- * Subtract vector from the current.
457
- * @public
458
- * @param {Vec3} p - Subtract vector.
459
- * @returns {Vec3} -
460
- */
461
- subA(p) {
462
- this.x -= p.x;
463
- this.y -= p.y;
464
- this.z -= p.z;
465
- return this;
466
- }
467
-
468
- /**
469
- * Gets vector subtraction.
470
- * @public
471
- * @param {Vec3} p - Subtract vector.
472
- * @return {Vec3} Returns new instance of a subtraction
473
- */
474
- sub(p) {
475
- return new Vec3(this.x - p.x, this.y - p.y, this.z - p.z);
476
- }
477
-
478
- /**
479
- * Scale current vector.
480
- * @public
481
- * @param {number} scale - Scale value.
482
- * @returns {Vec3} -
483
- */
484
- scale(scale) {
485
- this.x *= scale;
486
- this.y *= scale;
487
- this.z *= scale;
488
- return this;
489
- }
490
-
491
- /**
492
- * Scale current vector to another instance.
493
- * @public
494
- * @param {number} scale - Scale value.
495
- * @returns {Vec3} -
496
- */
497
- scaleTo(scale) {
498
- return new Vec3(this.x * scale, this.y * scale, this.z * scale);
499
- }
500
-
501
- /**
502
- * Multiply current vector object to another and store result in the current instance.
503
- * @public
504
- * @param {Vec3} vec - Multiply vector.
505
- * @returns {Vec3} -
506
- */
507
- mulA(vec) {
508
- this.x *= vec.x;
509
- this.y *= vec.y;
510
- this.z *= vec.z;
511
- return this;
512
- }
513
-
514
- /**
515
- * Multiply current vector object to another and returns new vector instance.
516
- * @public
517
- * @param {Vec3} vec - Multiply vector.
518
- * @returns {Vec3} -
519
- */
520
- mul(vec) {
521
- return new Vec3(this.x * vec.x, this.y * vec.y, this.z * vec.z);
522
- }
523
-
524
- /**
525
- * Divide current vector's components to another. Results stores in the current vector object.
526
- * @public
527
- * @param {Vec3} vec - Div vector.
528
- * @returns {Vec3} -
529
- */
530
- divA(vec) {
531
- this.x /= vec.x;
532
- this.y /= vec.y;
533
- this.z /= vec.z;
534
- return this;
535
- }
536
-
537
- /**
538
- * Divide current vector's components to another and returns new vector instance.
539
- * @public
540
- * @param {Vec3} vec - Div vector.
541
- * @returns {Vec3} -
542
- */
543
- div(vec) {
544
- return new Vec3(this.x / vec.x, this.y / vec.y, this.z / vec.z);
545
- }
546
-
547
- /**
548
- * Gets vectors dot production.
549
- * @public
550
- * @param {Vec3} a - Another vector.
551
- * @returns {number} -
552
- */
553
- dot(a) {
554
- return a.x * this.x + a.y * this.y + a.z * this.z;
555
- }
556
-
557
- /**
558
- * Gets vectors dot production.
559
- * @public
560
- * @param {Array.<number>} arr - Array vector. (exactly 3 entries)
561
- * @returns {number} -
562
- */
563
- dotArr(arr) {
564
- return arr[0] * this.x + arr[1] * this.y + arr[2] * this.z;
565
- }
566
-
567
- /**
568
- * Gets vectors cross production.
569
- * @public
570
- * @param {Vec3} point3 - Another vector.
571
- * @returns {Vec3} -
572
- */
573
- cross(point3) {
574
- return new Vec3(
575
- this.y * point3.z - this.z * point3.y,
576
- this.z * point3.x - this.x * point3.z,
577
- this.x * point3.y - this.y * point3.x
578
- );
579
- }
580
-
581
- /**
582
- * Sets vector to zero.
583
- * @public
584
- * @returns {Vec3} -
585
- */
586
- clear() {
587
- this.x = this.y = this.z = 0;
588
- return this;
589
- }
590
-
591
- /**
592
- * Returns normalized vector.
593
- * @public
594
- * @returns {Vec3} -
595
- */
596
- getNormal() {
597
- var res = new Vec3();
598
- res.copy(this);
599
-
600
- var length = 1.0 / res.length();
601
-
602
- res.x *= length;
603
- res.y *= length;
604
- res.z *= length;
605
-
606
- return res;
607
- }
608
-
609
- /**
610
- * Returns normalized vector.
611
- * @deprecated
612
- * @public
613
- * @returns {Vec3} -
614
- */
615
- normal() {
616
- var res = new Vec3();
617
- res.copy(this);
618
-
619
- var length = 1.0 / res.length();
620
-
621
- res.x *= length;
622
- res.y *= length;
623
- res.z *= length;
624
-
625
- return res;
626
- }
627
-
628
- /**
629
- * Returns normalized negate vector.
630
- * @public
631
- * @returns {Vec3} -
632
- */
633
- normalNegate() {
634
- var res = new Vec3();
635
- res.copy(this);
636
-
637
- var length = -1.0 / res.length();
638
-
639
- res.x *= length;
640
- res.y *= length;
641
- res.z *= length;
642
-
643
- return res;
644
- }
645
-
646
- /**
647
- * Returns normalized negate scale vector.
648
- * @public
649
- * @returns {Vec3} -
650
- */
651
- normalNegateScale(scale) {
652
- var res = new Vec3();
653
- res.copy(this);
654
-
655
- var length = -scale / res.length();
656
-
657
- res.x *= length;
658
- res.y *= length;
659
- res.z *= length;
660
-
661
- return res;
662
- }
663
-
664
- /**
665
- * Returns normalized scale vector.
666
- * @public
667
- * @returns {Vec3} -
668
- */
669
- normalScale(scale) {
670
- var res = new Vec3();
671
- res.copy(this);
672
-
673
- var length = scale / res.length();
674
-
675
- res.x *= length;
676
- res.y *= length;
677
- res.z *= length;
678
-
679
- return res;
680
- }
681
-
682
- /**
683
- * Normalize current vector.
684
- * @public
685
- * @returns {Vec3} -
686
- */
687
- normalize() {
688
- var length = 1.0 / this.length();
689
-
690
- this.x *= length;
691
- this.y *= length;
692
- this.z *= length;
693
-
694
- return this;
695
- }
696
-
697
- /**
698
- * Converts vector to a number array.
699
- * @public
700
- * @returns {Array.<number>} - (exactly 3 entries)
701
- * @deprecated
702
- */
703
- toVec() {
704
- return [this.x, this.y, this.z];
705
- }
706
-
707
- /**
708
- * Converts vector to a number array.
709
- * @public
710
- * @returns {Array.<number>} - (exactly 3 entries)
711
- */
712
- toArray() {
713
- return [this.x, this.y, this.z];
714
- }
715
-
716
- /**
717
- * Gets distance to point.
718
- * @public
719
- * @param {Vec3} p - Distant point.
720
- * @returns {number} -
721
- */
722
- distance(p) {
723
- let dx = this.x - p.x,
724
- dy = this.y - p.y,
725
- dz = this.z - p.z;
726
- return Math.sqrt(dx * dx + dy * dy + dz * dz);
727
- }
728
-
729
- /**
730
- * Gets square distance to point.
731
- * @public
732
- * @param {Vec3} p - Distant point.
733
- * @returns {number} -
734
- */
735
- distance2(p) {
736
- let dx = this.x - p.x,
737
- dy = this.y - p.y,
738
- dz = this.z - p.z;
739
- return dx * dx + dy * dy + dz * dz;
740
- }
741
-
742
- /**
743
- * Sets vector's values.
744
- * @public
745
- * @param {number} x - Value X.
746
- * @param {number} y - Value Y.
747
- * @param {number} z - Value Z.
748
- * @returns {Vec3} -
749
- */
750
- set(x, y, z) {
751
- this.x = x;
752
- this.y = y;
753
- this.z = z;
754
- return this;
755
- }
756
-
757
- /**
758
- * Negate current vector.
759
- * @public
760
- * @returns {Vec3} -
761
- */
762
- negate() {
763
- this.x = -this.x;
764
- this.y = -this.y;
765
- this.z = -this.z;
766
- return this;
767
- }
768
-
769
- /**
770
- * Negate current vector to another instance.
771
- * @public
772
- * @returns {Vec3} -
773
- */
774
- negateTo() {
775
- return new Vec3(-this.x, -this.y, -this.z);
776
- }
777
-
778
- /**
779
- * Gets projected point coordinates of the current vector on the ray.
780
- * @public
781
- * @param {Vec3} pos - Ray position.
782
- * @param {Vec3} direction - Ray direction.
783
- * @returns {Vec3} -
784
- */
785
- projToRay(pos, direction) {
786
- var v = Vec3.proj_b_to_a(Vec3.sub(this, pos), direction);
787
- v.addA(pos);
788
- return v;
789
- }
790
-
791
- /**
792
- * Gets angle between two vectors.
793
- * @public
794
- * @param {Vec3} a - Another vector.
795
- * @returns {number} -
796
- */
797
- angle(a) {
798
- return Vec3.angle(this, a);
799
- }
800
-
801
- /**
802
- * Returns two vectors linear interpolation.
803
- * @public
804
- * @param {Vec3} v2 - End vector.
805
- * @param {number} l - Interpolate value.
806
- * @returns {Vec3} -
807
- */
808
- lerp(v2, l) {
809
- return new Vec3(
810
- this.x + (v2.x - this.x) * l,
811
- this.y + (v2.y - this.y) * l,
812
- this.z + (v2.z - this.z) * l
813
- );
814
- }
815
-
816
- /**
817
- * Returns vector interpolation by v(t) = v1 * t + v2 * (1 - t)
818
- * @public
819
- * @param {Vec3} v2 - End vector.
820
- * @param {number} t - Interpolate value.
821
- * @returns {Vec3} -
822
- */
823
- smerp(v2, t) {
824
- var one_d = 1 - t;
825
- return new Vec3(
826
- this.x * t + v2.x * one_d,
827
- this.y * t + v2.y * one_d,
828
- this.z * t + v2.z * one_d
829
- );
830
- }
831
-
832
- static get LERP_DELTA() {
833
- return 1e-6;
834
- }
835
-
836
- /**
837
- * Spherically interpolates between two vectors.
838
- * Interpolates between current and v2 vector by amount t. The difference between this and linear interpolation (aka, "lerp") is that
839
- * the vectors are treated as directions rather than points in space. The direction of the returned vector is interpolated
840
- * by the angle and its magnitude is interpolated between the magnitudes of from and to.
841
- * @public
842
- * @param {Vec3} v2 -
843
- * @param {number} t - The parameter t is clamped to the range [0, 1].
844
- * @returns {Vec3} -
845
- */
846
- slerp(v2, t) {
847
- var res = new Vec3();
848
-
849
- if (t <= 0.0) {
850
- res.copy(this);
851
- return;
852
- } else if (t >= 1.0) {
853
- res.copy(v2);
854
- return;
855
- }
856
-
857
- var omega, sinom, scale0, scale1;
858
- var cosom = this.dot(v2);
859
-
860
- if (1.0 - cosom > Vec3.LERP_DELTA) {
861
- omega = Math.acos(cosom);
862
- sinom = Math.sin(omega);
863
- scale0 = Math.sin((1.0 - t) * omega) / sinom;
864
- scale1 = Math.sin(t * omega) / sinom;
865
- } else {
866
- scale0 = 1.0 - t;
867
- scale1 = t;
868
- }
869
-
870
- return Vec3.add(this.scaleTo(scale0), v2.scale(scale1));
871
- }
872
-
873
- /**
874
- * Gets the shortest arc quaternion to rotate this vector to the destination vector.
875
- * @param {Vec3} dest -
876
- * @param {Vec3} fallbackAxis -
877
- * @returns {Quat} -
878
- * @todo: TEST IT!
879
- */
880
- getRotationTo(dest, fallbackAxis) {
881
- // Based on Stan Melax's article in Game Programming Gems
882
- // Copy, since cannot modify local
883
- let v0 = this.clone();
884
- let v1 = dest.clone();
885
- v0.normalize();
886
- v1.normalize();
887
-
888
- let d = v0.dot(v1);
889
- // If dot == 1, vectors are the same
890
- if (d >= 1.0) {
891
- return Quat.IDENTITY.clone();
892
- }
893
-
894
- if (d < 1e-6 - 1.0) {
895
- if (!fallbackAxis.isEqual(Vec3.ZERO)) {
896
- // rotate 180 degrees about the fallback axis
897
- return Quat.axisAngleToQuat(Math.PI, fallbackAxis);
898
- } else {
899
- // Generate an axis
900
- let axis = Vec3.UNIT_X.cross(v0);
901
- if (axis.isZero()) {
902
- // pick another if colinear
903
- axis = Vec3.UNIT_Y.cross(v0);
904
- }
905
- axis.normalize();
906
- return Quat.axisAngleToQuat(Math.PI, axis);
907
- }
908
- } else {
909
- let s = Math.sqrt((1 + d) * 2);
910
- let invs = 1.0 / s;
911
-
912
- let c = v0.cross(v1);
913
-
914
- let q = new Quat(c.x * invs, c.y * invs, c.z * invs, s * 0.5);
915
- q.normalise();
916
- return q;
917
- }
918
- }
919
- }
920
-
921
- /**
922
- * Vector 3d object creator.
923
- * @function
924
- * @param {number} [x] - First cvalue.
925
- * @param {number} [y] - Second value.
926
- * @param {number} [z] - Third value.
927
- * @returns {Vec3} -
928
- */
929
- export function vec3(x, y, z) {
930
- return new Vec3(x, y, z);
931
- }