@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
@@ -0,0 +1,470 @@
1
+ import { Mat3 } from "./Mat3";
2
+ import { Quat } from "./Quat";
3
+ import { Vec3 } from "./Vec3";
4
+ import { Vec4 } from "./Vec4";
5
+ /**
6
+ * Class represents a 4x4 matrix.
7
+ * @class
8
+ */
9
+ export class Mat4 {
10
+ constructor() {
11
+ /**
12
+ * A 4x4 matrix, index-able as a column-major order array.
13
+ * @public
14
+ * @type {Array.<number>}
15
+ */
16
+ this._m = [
17
+ 0, 0, 0, 0,
18
+ 0, 0, 0, 0,
19
+ 0, 0, 0, 0,
20
+ 0, 0, 0, 0
21
+ ];
22
+ }
23
+ /**
24
+ * Returns identity matrix instance.
25
+ * @static
26
+ * @returns {Mat4} -
27
+ */
28
+ static identity() {
29
+ let res = new Mat4();
30
+ res._m[0] = 1;
31
+ res._m[1] = 0;
32
+ res._m[2] = 0;
33
+ res._m[3] = 0;
34
+ res._m[4] = 0;
35
+ res._m[5] = 1;
36
+ res._m[6] = 0;
37
+ res._m[7] = 0;
38
+ res._m[8] = 0;
39
+ res._m[9] = 0;
40
+ res._m[10] = 1;
41
+ res._m[11] = 0;
42
+ res._m[12] = 0;
43
+ res._m[13] = 0;
44
+ res._m[14] = 0;
45
+ res._m[15] = 1;
46
+ return res;
47
+ }
48
+ /**
49
+ * Sets column-major order array matrix.
50
+ * @public
51
+ * @param {Array.<number>} m - Matrix array.
52
+ * @returns {Mat4} -
53
+ */
54
+ set(m) {
55
+ this._m[0] = m[0];
56
+ this._m[1] = m[1];
57
+ this._m[2] = m[2];
58
+ this._m[3] = m[3];
59
+ this._m[4] = m[4];
60
+ this._m[5] = m[5];
61
+ this._m[6] = m[6];
62
+ this._m[7] = m[7];
63
+ this._m[8] = m[8];
64
+ this._m[9] = m[9];
65
+ this._m[10] = m[10];
66
+ this._m[11] = m[11];
67
+ this._m[12] = m[12];
68
+ this._m[13] = m[13];
69
+ this._m[14] = m[14];
70
+ this._m[15] = m[15];
71
+ return this;
72
+ }
73
+ /**
74
+ * Duplicates a Matrix3 instance.
75
+ * @public
76
+ * @returns {Mat4} -
77
+ */
78
+ clone() {
79
+ let res = new Mat4();
80
+ res.set(this._m);
81
+ return res;
82
+ }
83
+ /**
84
+ * Copy matrix.
85
+ * @public
86
+ * @param {Mat4} a - Matrix to copy.
87
+ * @return {Mat4}
88
+ */
89
+ copy(a) {
90
+ return this.set(a._m);
91
+ }
92
+ /**
93
+ * Converts to 3x3 matrix.
94
+ * @public
95
+ * @returns {Mat3} -
96
+ */
97
+ toMatrix3() {
98
+ let res = new Mat3();
99
+ let a = this._m, b = res._m;
100
+ b[0] = a[0];
101
+ b[1] = a[1];
102
+ b[2] = a[2];
103
+ b[3] = a[4];
104
+ b[4] = a[5];
105
+ b[5] = a[6];
106
+ b[6] = a[8];
107
+ b[7] = a[9];
108
+ b[8] = a[10];
109
+ return res;
110
+ }
111
+ /**
112
+ * Multiply to 3d vector.
113
+ * @public
114
+ * @param {Vec3} p - 3d vector.
115
+ * @returns {Vec3} -
116
+ */
117
+ mulVec3(p) {
118
+ let d = p.x, e = p.y, g = p.z;
119
+ return new Vec3(this._m[0] * d + this._m[4] * e + this._m[8] * g + this._m[12], this._m[1] * d + this._m[5] * e + this._m[9] * g + this._m[13], this._m[2] * d + this._m[6] * e + this._m[10] * g + this._m[14]);
120
+ }
121
+ /**
122
+ * Multiply to 4d vector.
123
+ * @public
124
+ * @param {Vec4} p - 4d vector.
125
+ * @returns {Vec4} -
126
+ */
127
+ mulVec4(p) {
128
+ let d = p.x, e = p.y, g = p.z, f = p.w;
129
+ return new Vec4(this._m[0] * d + this._m[4] * e + this._m[8] * g + this._m[12] * f, this._m[1] * d + this._m[5] * e + this._m[9] * g + this._m[13] * f, this._m[2] * d + this._m[6] * e + this._m[10] * g + this._m[14] * f, this._m[3] * d + this._m[7] * e + this._m[11] * g + this._m[15] * f);
130
+ }
131
+ /**
132
+ * Creates an inverse 3x3 matrix of the current.
133
+ * @public
134
+ * @returns {Mat3} -
135
+ */
136
+ toInverseMatrix3() {
137
+ let a = this._m;
138
+ let c = a[0], d = a[1], e = a[2], g = a[4], f = a[5], h = a[6], i = a[8], j = a[9], k = a[10], l = k * f - h * j, o = -k * g + h * i, m = j * g - f * i, n = c * l + d * o + e * m;
139
+ if (!n) {
140
+ return;
141
+ }
142
+ n = 1.0 / n;
143
+ let res = new Mat3();
144
+ res._m[0] = l * n;
145
+ res._m[1] = (-k * d + e * j) * n;
146
+ res._m[2] = (h * d - e * f) * n;
147
+ res._m[3] = o * n;
148
+ res._m[4] = (k * c - e * i) * n;
149
+ res._m[5] = (-h * c + e * g) * n;
150
+ res._m[6] = m * n;
151
+ res._m[7] = (-j * c + d * i) * n;
152
+ res._m[8] = (f * c - d * g) * n;
153
+ return res;
154
+ }
155
+ /**
156
+ * Creates an inverse matrix of the current.
157
+ * @public
158
+ * @returns {Mat4} -
159
+ */
160
+ inverseTo(res = new Mat4()) {
161
+ let c = this._m[0], d = this._m[1], e = this._m[2], g = this._m[3], f = this._m[4], h = this._m[5], i = this._m[6], j = this._m[7], k = this._m[8], l = this._m[9], o = this._m[10], m = this._m[11], n = this._m[12], p = this._m[13], r = this._m[14], s = this._m[15], A = c * h - d * f, B = c * i - e * f, t = c * j - g * f, u = d * i - e * h, v = d * j - g * h, w = e * j - g * i, x = k * p - l * n, y = k * r - o * n, z = k * s - m * n, C = l * r - o * p, D = l * s - m * p, E = o * s - m * r, q = 1 / (A * E - B * D + t * C + u * z - v * y + w * x);
162
+ res._m[0] = (h * E - i * D + j * C) * q;
163
+ res._m[1] = (-d * E + e * D - g * C) * q;
164
+ res._m[2] = (p * w - r * v + s * u) * q;
165
+ res._m[3] = (-l * w + o * v - m * u) * q;
166
+ res._m[4] = (-f * E + i * z - j * y) * q;
167
+ res._m[5] = (c * E - e * z + g * y) * q;
168
+ res._m[6] = (-n * w + r * t - s * B) * q;
169
+ res._m[7] = (k * w - o * t + m * B) * q;
170
+ res._m[8] = (f * D - h * z + j * x) * q;
171
+ res._m[9] = (-c * D + d * z - g * x) * q;
172
+ res._m[10] = (n * v - p * t + s * A) * q;
173
+ res._m[11] = (-k * v + l * t - m * A) * q;
174
+ res._m[12] = (-f * C + h * y - i * x) * q;
175
+ res._m[13] = (c * C - d * y + e * x) * q;
176
+ res._m[14] = (-n * u + p * B - r * A) * q;
177
+ res._m[15] = (k * u - l * B + o * A) * q;
178
+ return res;
179
+ }
180
+ /**
181
+ * Creates a transposed matrix of the current.
182
+ * @public
183
+ * @returns {Mat4} -
184
+ */
185
+ transposeTo() {
186
+ let res = new Mat4();
187
+ res._m[0] = this._m[0];
188
+ res._m[1] = this._m[4];
189
+ res._m[2] = this._m[8];
190
+ res._m[3] = this._m[12];
191
+ res._m[4] = this._m[1];
192
+ res._m[5] = this._m[5];
193
+ res._m[6] = this._m[9];
194
+ res._m[7] = this._m[13];
195
+ res._m[8] = this._m[2];
196
+ res._m[9] = this._m[6];
197
+ res._m[10] = this._m[10];
198
+ res._m[11] = this._m[14];
199
+ res._m[12] = this._m[3];
200
+ res._m[13] = this._m[7];
201
+ res._m[14] = this._m[11];
202
+ res._m[15] = this._m[15];
203
+ return res;
204
+ }
205
+ /**
206
+ * Sets matrix to identity.
207
+ * @public
208
+ * @returns {Mat4} -
209
+ */
210
+ setIdentity() {
211
+ this._m[0] = 1;
212
+ this._m[1] = 0;
213
+ this._m[2] = 0;
214
+ this._m[3] = 0;
215
+ this._m[4] = 0;
216
+ this._m[5] = 1;
217
+ this._m[6] = 0;
218
+ this._m[7] = 0;
219
+ this._m[8] = 0;
220
+ this._m[9] = 0;
221
+ this._m[10] = 1;
222
+ this._m[11] = 0;
223
+ this._m[12] = 0;
224
+ this._m[13] = 0;
225
+ this._m[14] = 0;
226
+ this._m[15] = 1;
227
+ return this;
228
+ }
229
+ /**
230
+ * Computes the product of two matrices.
231
+ * @public
232
+ * @param {Mat4} mx - Matrix to multiply.
233
+ * @returns {Mat4} -
234
+ */
235
+ mul(mx) {
236
+ let d = this._m[0], e = this._m[1], g = this._m[2], f = this._m[3], h = this._m[4], i = this._m[5], j = this._m[6], k = this._m[7], l = this._m[8], o = this._m[9], m = this._m[10], n = this._m[11], p = this._m[12], r = this._m[13], s = this._m[14], a = this._m[15];
237
+ let A = mx._m[0], B = mx._m[1], t = mx._m[2], u = mx._m[3], v = mx._m[4], w = mx._m[5], x = mx._m[6], y = mx._m[7], z = mx._m[8], C = mx._m[9], D = mx._m[10], E = mx._m[11], q = mx._m[12], F = mx._m[13], G = mx._m[14], b = mx._m[15];
238
+ let res = new Mat4();
239
+ res._m[0] = A * d + B * h + t * l + u * p;
240
+ res._m[1] = A * e + B * i + t * o + u * r;
241
+ res._m[2] = A * g + B * j + t * m + u * s;
242
+ res._m[3] = A * f + B * k + t * n + u * a;
243
+ res._m[4] = v * d + w * h + x * l + y * p;
244
+ res._m[5] = v * e + w * i + x * o + y * r;
245
+ res._m[6] = v * g + w * j + x * m + y * s;
246
+ res._m[7] = v * f + w * k + x * n + y * a;
247
+ res._m[8] = z * d + C * h + D * l + E * p;
248
+ res._m[9] = z * e + C * i + D * o + E * r;
249
+ res._m[10] = z * g + C * j + D * m + E * s;
250
+ res._m[11] = z * f + C * k + D * n + E * a;
251
+ res._m[12] = q * d + F * h + G * l + b * p;
252
+ res._m[13] = q * e + F * i + G * o + b * r;
253
+ res._m[14] = q * g + F * j + G * m + b * s;
254
+ res._m[15] = q * f + F * k + G * n + b * a;
255
+ return res;
256
+ }
257
+ /**
258
+ * Add translation vector to the current matrix.
259
+ * @public
260
+ * @param {Vec3} v - Translate vector.
261
+ * @returns {Mat4} -
262
+ */
263
+ translate(v) {
264
+ let d = v.x, e = v.y, b = v.z;
265
+ let a = this._m;
266
+ a[12] = a[0] * d + a[4] * e + a[8] * b + a[12];
267
+ a[13] = a[1] * d + a[5] * e + a[9] * b + a[13];
268
+ a[14] = a[2] * d + a[6] * e + a[10] * b + a[14];
269
+ a[15] = a[3] * d + a[7] * e + a[11] * b + a[15];
270
+ return this;
271
+ }
272
+ /**
273
+ * Sets translation matrix to the position.
274
+ * @public
275
+ * @param {Vec3} v - Translate to position.
276
+ * @returns {Mat4} -
277
+ */
278
+ translateToPosition(v) {
279
+ let a = this._m;
280
+ a[12] = v.x;
281
+ a[13] = v.y;
282
+ a[14] = v.z;
283
+ return this;
284
+ }
285
+ /**
286
+ * Rotate current matrix around the aligned axis and angle.
287
+ * @public
288
+ * @param {Vec3} u - Aligned axis.
289
+ * @param {number} angle - Aligned axis angle in radians.
290
+ * @returns {Mat4} -
291
+ */
292
+ rotate(u, angle) {
293
+ let c = Math.cos(angle), s = Math.sin(angle);
294
+ let rot = new Mat4();
295
+ let mx = rot._m;
296
+ mx[0] = c + (1 - c) * u.x * u.x;
297
+ mx[1] = (1 - c) * u.y * u.x - s * u.z;
298
+ mx[2] = (1 - c) * u.z * u.x + s * u.y;
299
+ mx[3] = 0;
300
+ mx[4] = (1 - c) * u.x * u.y + s * u.z;
301
+ mx[5] = c + (1 - c) * u.y * u.y;
302
+ mx[6] = (1 - c) * u.z * u.y - s * u.x;
303
+ mx[7] = 0;
304
+ mx[8] = (1 - c) * u.x * u.z - s * u.y;
305
+ mx[9] = (1 - c) * u.y * u.z + s * u.x;
306
+ mx[10] = c + (1 - c) * u.z * u.z;
307
+ mx[11] = 0;
308
+ mx[12] = 0;
309
+ mx[13] = 0;
310
+ mx[14] = 0;
311
+ mx[15] = 1;
312
+ return this.mul(rot);
313
+ }
314
+ /**
315
+ * Sets current rotation matrix around the aligned axis and angle.
316
+ * @public
317
+ * @param {Vec3} u - Aligned axis.
318
+ * @param {number} angle - Aligned axis angle in radians.
319
+ * @returns {Mat4} -
320
+ */
321
+ setRotation(u, angle) {
322
+ let c = Math.cos(angle), s = Math.sin(angle);
323
+ let mx = this._m;
324
+ mx[0] = c + (1 - c) * u.x * u.x;
325
+ mx[1] = (1 - c) * u.y * u.x - s * u.z;
326
+ mx[2] = (1 - c) * u.z * u.x + s * u.y;
327
+ mx[3] = 0;
328
+ mx[4] = (1 - c) * u.x * u.y + s * u.z;
329
+ mx[5] = c + (1 - c) * u.y * u.y;
330
+ mx[6] = (1 - c) * u.z * u.y - s * u.x;
331
+ mx[7] = 0;
332
+ mx[8] = (1 - c) * u.x * u.z - s * u.y;
333
+ mx[9] = (1 - c) * u.y * u.z + s * u.x;
334
+ mx[10] = c + (1 - c) * u.z * u.z;
335
+ mx[11] = 0;
336
+ mx[12] = 0;
337
+ mx[13] = 0;
338
+ mx[14] = 0;
339
+ mx[15] = 1;
340
+ return this;
341
+ }
342
+ /**
343
+ * Gets the rotation matrix from one vector to another.
344
+ * @public
345
+ * @param {Vec3} a - First vector.
346
+ * @param {Vec3} b - Second vector.
347
+ * @returns {Mat4} -
348
+ */
349
+ rotateBetweenVectors(a, b) {
350
+ let q = Quat.getRotationBetweenVectors(a, b);
351
+ return q.getMat4();
352
+ }
353
+ /**
354
+ * Scale current matrix to the vector values.
355
+ * @public
356
+ * @param {Vec3} v - Scale vector.
357
+ * @returns {Mat4} -
358
+ */
359
+ scale(v) {
360
+ let mx = this._m;
361
+ mx[0] = mx[0] * v.x;
362
+ mx[1] = mx[1] * v.x;
363
+ mx[2] = mx[2] * v.x;
364
+ mx[3] = mx[3] * v.x;
365
+ mx[4] = mx[4] * v.y;
366
+ mx[5] = mx[5] * v.y;
367
+ mx[6] = mx[6] * v.y;
368
+ mx[7] = mx[7] * v.y;
369
+ mx[8] = mx[8] * v.z;
370
+ mx[9] = mx[9] * v.z;
371
+ mx[10] = mx[10] * v.z;
372
+ mx[11] = mx[11] * v.z;
373
+ return this;
374
+ }
375
+ /**
376
+ * Sets perspective projection matrix frustum values.
377
+ * @public
378
+ * @param {number} left -
379
+ * @param {number} right -
380
+ * @param {number} bottom -
381
+ * @param {number} top -
382
+ * @param {number} near -
383
+ * @param {number} far -
384
+ * @returns {Mat4} -
385
+ */
386
+ setPerspective(left, right, bottom, top, near, far) {
387
+ let h = right - left, i = top - bottom, j = far - near;
388
+ this._m[0] = (near * 2) / h;
389
+ this._m[1] = 0;
390
+ this._m[2] = 0;
391
+ this._m[3] = 0;
392
+ this._m[4] = 0;
393
+ this._m[5] = (near * 2) / i;
394
+ this._m[6] = 0;
395
+ this._m[7] = 0;
396
+ this._m[8] = (right + left) / h;
397
+ this._m[9] = (top + bottom) / i;
398
+ this._m[10] = -(far + near) / j;
399
+ this._m[11] = -1;
400
+ this._m[12] = 0;
401
+ this._m[13] = 0;
402
+ this._m[14] = -(far * near * 2) / j;
403
+ this._m[15] = 0;
404
+ return this;
405
+ }
406
+ /**
407
+ * Creates current orthographic projection matrix.
408
+ * @public
409
+ * @param {number} left -
410
+ * @param {number} right -
411
+ * @param {number} bottom -
412
+ * @param {number} top -
413
+ * @param {number} near -
414
+ * @param {number} far -
415
+ * @return {Mat4} -
416
+ */
417
+ setOrtho(left, right, bottom, top, near, far) {
418
+ let lr = 1.0 / (left - right), bt = 1.0 / (bottom - top), nf = 1.0 / (near - far), m = this._m;
419
+ m[0] = -2.0 * lr;
420
+ m[1] = 0;
421
+ m[2] = 0;
422
+ m[3] = 0;
423
+ m[4] = 0;
424
+ m[5] = -2.0 * bt;
425
+ m[6] = 0;
426
+ m[7] = 0;
427
+ m[8] = 0;
428
+ m[9] = 0;
429
+ m[10] = 2.0 * nf;
430
+ m[11] = 0;
431
+ m[12] = (left + right) * lr;
432
+ m[13] = (top + bottom) * bt;
433
+ m[14] = (far + near) * nf;
434
+ m[15] = 1.0;
435
+ return this;
436
+ }
437
+ /**
438
+ * Sets current rotation matrix by euler's angles.
439
+ * @public
440
+ * @param {number} ax - Rotation angle in radians around X axis.
441
+ * @param {number} ay - Rotation angle in radians around Y axis.
442
+ * @param {number} az - Rotation angle in radians around Z axis.
443
+ * @returns {Mat4} -
444
+ */
445
+ eulerToMatrix(ax, ay, az) {
446
+ let a = Math.cos(ax), b = Math.sin(ax), c = Math.cos(ay), d = Math.sin(ay), e = Math.cos(az), f = Math.sin(az);
447
+ let ad = a * d, bd = b * d;
448
+ let mat = this._m;
449
+ mat[0] = c * e;
450
+ mat[1] = -c * f;
451
+ mat[2] = -d;
452
+ mat[4] = -bd * e + a * f;
453
+ mat[5] = bd * f + a * e;
454
+ mat[6] = -b * c;
455
+ mat[8] = ad * e + b * f;
456
+ mat[9] = -ad * f + b * e;
457
+ mat[10] = a * c;
458
+ mat[3] = mat[7] = mat[11] = mat[12] = mat[13] = mat[14] = 0;
459
+ mat[15] = 1;
460
+ return this;
461
+ }
462
+ }
463
+ /**
464
+ * Mat4 factory.
465
+ * @static
466
+ * @returns {Mat4} -
467
+ */
468
+ export function mat4() {
469
+ return new Mat4();
470
+ }
@@ -0,0 +1,20 @@
1
+ import { Vec3 } from "./Vec3";
2
+ import { Line3 } from "./Line3";
3
+ /**
4
+ * Plane class.
5
+ * @constructor
6
+ * @param {Vec3} [p] - Plane point.
7
+ * @param {Vec3} [n] - Planet normal.
8
+ */
9
+ declare class Plane {
10
+ p: Vec3;
11
+ n: Vec3;
12
+ constructor(p: Vec3, n: Vec3);
13
+ set(p: Vec3, n: Vec3): void;
14
+ getNormal(): Vec3;
15
+ distance(p: Vec3): number;
16
+ getProjection(v: Vec3, def?: Vec3): Vec3;
17
+ getProjectionPoint(p: Vec3, vh?: Vec3): Vec3;
18
+ getIntersection(Pn1: Plane, Pn2: Plane, L: Line3): number;
19
+ }
20
+ export { Plane };
@@ -0,0 +1,108 @@
1
+ import { EPS5 } from "../math";
2
+ import { Vec3 } from "./Vec3";
3
+ const DISJOINT = 0;
4
+ const COINCIDE = 1;
5
+ const INTERSECT = 2;
6
+ /**
7
+ * Plane class.
8
+ * @constructor
9
+ * @param {Vec3} [p] - Plane point.
10
+ * @param {Vec3} [n] - Planet normal.
11
+ */
12
+ class Plane {
13
+ constructor(p, n) {
14
+ this.p = p ? p.clone() : new Vec3();
15
+ this.n = n ? n.clone() : this.p.normal();
16
+ }
17
+ set(p, n) {
18
+ this.p.copy(p);
19
+ this.n.copy(n);
20
+ }
21
+ getNormal() {
22
+ return this.n.clone();
23
+ }
24
+ distance(p) {
25
+ let pp = this.getProjection(p);
26
+ return p.distance(pp);
27
+ }
28
+ getProjection(v, def) {
29
+ return Vec3.proj_b_to_plane(v, this.n, def);
30
+ }
31
+ getProjectionPoint(p, vh) {
32
+ let v = p.sub(this.p), n = this.n, dist = v.dot(n);
33
+ if (vh) {
34
+ vh.copy(n.scale(dist));
35
+ }
36
+ else {
37
+ vh = n.scale(dist);
38
+ }
39
+ return p.sub(vh);
40
+ }
41
+ getIntersection(Pn1, Pn2, L) {
42
+ let u = Pn1.n.cross(Pn2.n);
43
+ let ax = u.x >= 0 ? u.x : -u.x;
44
+ let ay = u.y >= 0 ? u.y : -u.y;
45
+ let az = u.z >= 0 ? u.z : -u.z;
46
+ // test if the two planes are parallel
47
+ if (ax + ay + az < EPS5) {
48
+ // Pn1 and Pn2 are near parallel
49
+ // test if disjoint or coincide
50
+ let v = Pn2.p.sub(Pn1.p);
51
+ if (Pn1.n.dot(v) == 0) {
52
+ // Pn2.V0 lies in Pn1
53
+ return COINCIDE; // Pn1 and Pn2 coincide
54
+ }
55
+ else {
56
+ return DISJOINT; // Pn1 and Pn2 are disjoint
57
+ }
58
+ }
59
+ // Pn1 and Pn2 intersect in a line
60
+ // first determine max abs coordinate of cross product
61
+ let maxc; // max coordinate
62
+ if (ax > ay) {
63
+ if (ax > az) {
64
+ maxc = 1;
65
+ }
66
+ else {
67
+ maxc = 3;
68
+ }
69
+ }
70
+ else {
71
+ if (ay > az) {
72
+ maxc = 2;
73
+ }
74
+ else {
75
+ maxc = 3;
76
+ }
77
+ }
78
+ // next, to get a point on the intersect line
79
+ // zero the max coord, and solve for the other two
80
+ let iP = new Vec3(); // intersect point
81
+ let d1, d2; // the constants in the 2 plane equations
82
+ d1 = -Pn1.n.dot(Pn1.p); // note: could be pre-stored with plane
83
+ d2 = -Pn2.n.dot(Pn2.p); // ditto
84
+ // select max coordinate
85
+ if (maxc === 1) {
86
+ // intersect with x=0
87
+ iP.x = 0;
88
+ iP.y = (d2 * Pn1.n.z - d1 * Pn2.n.z) / u.x;
89
+ iP.z = (d1 * Pn2.n.y - d2 * Pn1.n.y) / u.x;
90
+ }
91
+ else if (maxc === 2) {
92
+ // intersect with y=0
93
+ iP.x = (d1 * Pn2.n.z - d2 * Pn1.n.z) / u.y;
94
+ iP.y = 0;
95
+ iP.z = (d2 * Pn1.n.x - d1 * Pn2.n.x) / u.y;
96
+ }
97
+ else if (maxc === 3) {
98
+ // intersect with z=0
99
+ iP.x = (d2 * Pn1.n.y - d1 * Pn2.n.y) / u.z;
100
+ iP.y = (d1 * Pn2.n.x - d2 * Pn1.n.x) / u.z;
101
+ iP.z = 0;
102
+ }
103
+ L.p0.copy(iP);
104
+ L.p1.copy(iP.add(u));
105
+ return INTERSECT;
106
+ }
107
+ }
108
+ export { Plane };