@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.
- package/README.md +76 -47
- package/lib/@openglobus/og.esm.js +2 -0
- package/lib/@openglobus/og.esm.js.map +1 -0
- package/lib/@openglobus/og.umd.js +2 -0
- package/lib/@openglobus/og.umd.js.map +1 -0
- package/lib/@openglobus/res/fonts/Karla-Bold.json +5252 -0
- package/lib/@openglobus/res/fonts/Karla-Bold.ttf.cfg +920 -0
- package/lib/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
- package/lib/@openglobus/res/fonts/Karla-Light.json +5252 -0
- package/lib/@openglobus/res/fonts/Karla-Light.ttf.cfg +830 -0
- package/lib/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
- package/lib/@openglobus/res/fonts/Karla-Medium.json +5252 -0
- package/lib/@openglobus/res/fonts/Karla-Medium.ttf.cfg +1196 -0
- package/lib/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
- package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.json +3332 -0
- package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +1370 -0
- package/lib/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
- package/lib/@openglobus/res/fonts/Roboto-Regular.json +37147 -0
- package/lib/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +1340 -0
- package/lib/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
- package/lib/@openglobus/res/fonts/arial.json +4321 -0
- package/lib/@openglobus/res/fonts/arial.ttf.cfg +1570 -0
- package/lib/@openglobus/res/fonts/arial.ttf.png +0 -0
- package/lib/@openglobus/res/night-4326.png +0 -0
- package/lib/@openglobus/res/night.png +0 -0
- package/lib/@openglobus/res/spec.png +0 -0
- package/lib/js/Clock.d.ts +106 -0
- package/lib/js/Clock.js +141 -0
- package/lib/js/Deferred.d.ts +6 -0
- package/lib/js/Deferred.js +13 -0
- package/lib/js/Events.d.ts +90 -0
- package/lib/js/Events.js +145 -0
- package/lib/js/Extent.d.ts +145 -0
- package/lib/js/Extent.js +278 -0
- package/lib/js/Globe.d.ts +132 -0
- package/lib/js/Globe.js +265 -0
- package/lib/js/ImageCanvas.d.ts +128 -0
- package/lib/js/ImageCanvas.js +203 -0
- package/lib/js/Lock.d.ts +15 -0
- package/lib/js/Lock.js +27 -0
- package/lib/js/LonLat.d.ts +128 -0
- package/lib/js/LonLat.js +192 -0
- package/lib/js/Object3d.d.ts +49 -0
- package/lib/js/Object3d.js +309 -0
- package/lib/js/Popup.d.ts +46 -0
- package/lib/js/Popup.js +160 -0
- package/lib/js/QueueArray.d.ts +16 -0
- package/lib/js/QueueArray.js +63 -0
- package/lib/js/Rectangle.d.ts +76 -0
- package/lib/js/Rectangle.js +77 -0
- package/lib/js/Stack.d.ts +20 -0
- package/lib/js/Stack.js +42 -0
- package/lib/js/astro/astro.d.ts +39 -0
- package/lib/js/astro/astro.js +43 -0
- package/lib/js/astro/earth.d.ts +8 -0
- package/lib/js/astro/earth.js +75 -0
- package/lib/js/astro/jd.d.ts +234 -0
- package/lib/js/astro/jd.js +416 -0
- package/lib/js/astro/orbit.d.ts +5 -0
- package/lib/js/astro/orbit.js +104 -0
- package/lib/js/astro/rotation.d.ts +2 -0
- package/lib/js/astro/rotation.js +25 -0
- package/lib/js/bv/Box.d.ts +32 -0
- package/lib/js/bv/Box.js +53 -0
- package/lib/js/bv/Sphere.d.ts +37 -0
- package/lib/js/bv/Sphere.js +31 -0
- package/lib/js/bv/index.d.ts +3 -0
- package/lib/js/bv/index.js +3 -0
- package/lib/js/camera/Camera.d.ts +314 -0
- package/lib/js/camera/Camera.js +453 -0
- package/lib/js/camera/Frustum.d.ts +139 -0
- package/lib/js/camera/Frustum.js +238 -0
- package/lib/js/camera/PlanetCamera.d.ts +234 -0
- package/lib/js/camera/PlanetCamera.js +465 -0
- package/lib/js/camera/index.d.ts +3 -0
- package/lib/js/camera/index.js +3 -0
- package/lib/js/cons.d.ts +40 -0
- package/lib/js/cons.js +92 -0
- package/lib/js/control/Atmosphere.d.ts +16 -0
- package/lib/js/control/Atmosphere.js +334 -0
- package/lib/js/control/CompassButton.d.ts +16 -0
- package/lib/js/control/CompassButton.js +118 -0
- package/lib/js/control/Control.d.ts +100 -0
- package/lib/js/control/Control.js +137 -0
- package/lib/js/control/DebugInfo.d.ts +25 -0
- package/lib/js/control/DebugInfo.js +281 -0
- package/lib/js/control/DrawingSwitcher.d.ts +13 -0
- package/lib/js/control/DrawingSwitcher.js +94 -0
- package/lib/js/control/EarthCoordinates.d.ts +41 -0
- package/lib/js/control/EarthCoordinates.js +161 -0
- package/lib/js/control/EarthNavigation.d.ts +50 -0
- package/lib/js/control/EarthNavigation.js +202 -0
- package/lib/js/control/GeoImageDragControl.d.ts +22 -0
- package/lib/js/control/GeoImageDragControl.js +102 -0
- package/lib/js/control/KeyboardNavigation.d.ts +28 -0
- package/lib/js/control/KeyboardNavigation.js +143 -0
- package/lib/js/control/LayerAnimation.d.ts +71 -0
- package/lib/js/control/LayerAnimation.js +283 -0
- package/lib/js/control/LayerSwitcher.d.ts +21 -0
- package/lib/js/control/LayerSwitcher.js +51 -0
- package/lib/js/control/Lighting.d.ts +49 -0
- package/lib/js/control/Lighting.js +412 -0
- package/lib/js/control/MouseNavigation.d.ts +62 -0
- package/lib/js/control/MouseNavigation.js +362 -0
- package/lib/js/control/MouseWheelZoomControl.d.ts +44 -0
- package/lib/js/control/MouseWheelZoomControl.js +181 -0
- package/lib/js/control/RulerSwitcher.d.ts +17 -0
- package/lib/js/control/RulerSwitcher.js +57 -0
- package/lib/js/control/ScaleControl.d.ts +24 -0
- package/lib/js/control/ScaleControl.js +91 -0
- package/lib/js/control/SegmentBoundVisualization.d.ts +12 -0
- package/lib/js/control/SegmentBoundVisualization.js +37 -0
- package/lib/js/control/ShowFps.d.ts +9 -0
- package/lib/js/control/ShowFps.js +20 -0
- package/lib/js/control/SimpleNavigation.d.ts +25 -0
- package/lib/js/control/SimpleNavigation.js +96 -0
- package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
- package/lib/js/control/SimpleSkyBackground.js +177 -0
- package/lib/js/control/Sun.d.ts +33 -0
- package/lib/js/control/Sun.js +117 -0
- package/lib/js/control/ToggleWireframe.d.ts +14 -0
- package/lib/js/control/ToggleWireframe.js +28 -0
- package/lib/js/control/TouchNavigation.d.ts +52 -0
- package/lib/js/control/TouchNavigation.js +263 -0
- package/lib/js/control/ZoomControl.d.ts +27 -0
- package/lib/js/control/ZoomControl.js +86 -0
- package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
- package/lib/js/control/drawing/DrawingControl.js +35 -0
- package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
- package/lib/js/control/drawing/LineStringDrawingScene.js +139 -0
- package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
- package/lib/js/control/drawing/PolygonDrawingScene.js +534 -0
- package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
- package/lib/js/control/elevationProfile/ElevationProfile.js +217 -0
- package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
- package/lib/js/control/heightRuler/HeightRuler.js +11 -0
- package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
- package/lib/js/control/heightRuler/HeightRulerScene.js +181 -0
- package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
- package/lib/js/control/heightRuler/HeightRulerSwitcher.js +13 -0
- package/lib/js/control/index.d.ts +28 -0
- package/lib/js/control/index.js +28 -0
- package/lib/js/control/ruler/Ruler.d.ts +13 -0
- package/lib/js/control/ruler/Ruler.js +23 -0
- package/lib/js/control/ruler/RulerScene.d.ts +88 -0
- package/lib/js/control/ruler/RulerScene.js +324 -0
- package/lib/js/control/selection/Selection.d.ts +55 -0
- package/lib/js/control/selection/Selection.js +78 -0
- package/lib/js/control/selection/SelectionScene.d.ts +44 -0
- package/lib/js/control/selection/SelectionScene.js +272 -0
- package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
- package/lib/js/control/timeline/TimelineControl.js +79 -0
- package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
- package/lib/js/control/timeline/TimelineModel.js +104 -0
- package/lib/js/control/timeline/TimelineView.d.ts +85 -0
- package/lib/js/control/timeline/TimelineView.js +363 -0
- package/lib/js/control/timeline/timelineUtils.d.ts +12 -0
- package/lib/js/control/timeline/timelineUtils.js +112 -0
- package/lib/js/control/visibleExtent/Segment.d.ts +277 -0
- package/lib/js/control/visibleExtent/Segment.js +1301 -0
- package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
- package/lib/js/control/visibleExtent/VisibleExtent.js +56 -0
- package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
- package/lib/js/control/visibleExtent/drawnode.js +718 -0
- package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
- package/lib/js/ellipsoid/Ellipsoid.js +434 -0
- package/lib/js/ellipsoid/index.d.ts +3 -0
- package/lib/js/ellipsoid/index.js +3 -0
- package/lib/js/ellipsoid/wgs84.d.ts +6 -0
- package/lib/js/ellipsoid/wgs84.js +6 -0
- package/lib/js/entity/BaseBillboard.d.ts +222 -0
- package/lib/js/entity/BaseBillboard.js +284 -0
- package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
- package/lib/js/entity/BaseBillboardHandler.js +546 -0
- package/lib/js/entity/Billboard.d.ts +113 -0
- package/lib/js/entity/Billboard.js +127 -0
- package/lib/js/entity/BillboardHandler.d.ts +15 -0
- package/lib/js/entity/BillboardHandler.js +103 -0
- package/lib/js/entity/Entity.d.ts +354 -0
- package/lib/js/entity/Entity.js +515 -0
- package/lib/js/entity/EntityCollection.d.ts +364 -0
- package/lib/js/entity/EntityCollection.js +621 -0
- package/lib/js/entity/GeoObject.d.ts +138 -0
- package/lib/js/entity/GeoObject.js +194 -0
- package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
- package/lib/js/entity/GeoObjectHandler.js +558 -0
- package/lib/js/entity/Geometry.d.ts +111 -0
- package/lib/js/entity/Geometry.js +283 -0
- package/lib/js/entity/GeometryHandler.d.ts +84 -0
- package/lib/js/entity/GeometryHandler.js +687 -0
- package/lib/js/entity/Label.d.ts +207 -0
- package/lib/js/entity/Label.js +291 -0
- package/lib/js/entity/LabelHandler.d.ts +65 -0
- package/lib/js/entity/LabelHandler.js +696 -0
- package/lib/js/entity/LabelWorker.d.ts +15 -0
- package/lib/js/entity/LabelWorker.js +163 -0
- package/lib/js/entity/PointCloud.d.ts +179 -0
- package/lib/js/entity/PointCloud.js +327 -0
- package/lib/js/entity/PointCloudHandler.d.ts +42 -0
- package/lib/js/entity/PointCloudHandler.js +82 -0
- package/lib/js/entity/Polyline.d.ts +337 -0
- package/lib/js/entity/Polyline.js +1546 -0
- package/lib/js/entity/PolylineHandler.d.ts +22 -0
- package/lib/js/entity/PolylineHandler.js +78 -0
- package/lib/js/entity/Ray.d.ts +133 -0
- package/lib/js/entity/Ray.js +171 -0
- package/lib/js/entity/RayHandler.d.ts +70 -0
- package/lib/js/entity/RayHandler.js +496 -0
- package/lib/js/entity/Strip.d.ts +127 -0
- package/lib/js/entity/Strip.js +401 -0
- package/lib/js/entity/StripHandler.d.ts +42 -0
- package/lib/js/entity/StripHandler.js +110 -0
- package/lib/js/entity/index.d.ts +11 -0
- package/lib/js/entity/index.js +11 -0
- package/lib/js/index.d.ts +33 -0
- package/lib/js/index.js +33 -0
- package/lib/js/input/KeyboardHandler.d.ts +33 -0
- package/lib/js/input/KeyboardHandler.js +157 -0
- package/lib/js/input/MouseHandler.d.ts +16 -0
- package/lib/js/input/MouseHandler.js +81 -0
- package/lib/js/input/TouchHandler.d.ts +11 -0
- package/lib/js/input/TouchHandler.js +42 -0
- package/lib/js/input/input.d.ts +3 -0
- package/lib/js/input/input.js +42 -0
- package/lib/js/layer/BaseGeoImage.d.ts +145 -0
- package/lib/js/layer/BaseGeoImage.js +382 -0
- package/lib/js/layer/CanvasTiles.d.ts +103 -0
- package/lib/js/layer/CanvasTiles.js +302 -0
- package/lib/js/layer/GeoImage.d.ts +61 -0
- package/lib/js/layer/GeoImage.js +130 -0
- package/lib/js/layer/GeoTexture2d.d.ts +17 -0
- package/lib/js/layer/GeoTexture2d.js +37 -0
- package/lib/js/layer/GeoVideo.d.ts +68 -0
- package/lib/js/layer/GeoVideo.js +157 -0
- package/lib/js/layer/KML.d.ts +72 -0
- package/lib/js/layer/KML.js +303 -0
- package/lib/js/layer/Layer.d.ts +401 -0
- package/lib/js/layer/Layer.js +732 -0
- package/lib/js/layer/Material.d.ts +34 -0
- package/lib/js/layer/Material.js +69 -0
- package/lib/js/layer/Vector.d.ts +244 -0
- package/lib/js/layer/Vector.js +849 -0
- package/lib/js/layer/WMS.d.ts +75 -0
- package/lib/js/layer/WMS.js +112 -0
- package/lib/js/layer/XYZ.d.ts +149 -0
- package/lib/js/layer/XYZ.js +299 -0
- package/lib/js/layer/index.d.ts +11 -0
- package/lib/js/layer/index.js +11 -0
- package/lib/js/light/LightSource.d.ts +174 -0
- package/lib/js/light/LightSource.js +292 -0
- package/lib/js/math/Line2.d.ts +11 -0
- package/lib/js/math/Line2.js +21 -0
- package/lib/js/math/Line3.d.ts +28 -0
- package/lib/js/math/Line3.js +85 -0
- package/lib/js/math/Mat3.d.ts +77 -0
- package/lib/js/math/Mat3.js +139 -0
- package/lib/js/math/Mat4.d.ts +195 -0
- package/lib/js/math/Mat4.js +470 -0
- package/lib/js/math/Plane.d.ts +20 -0
- package/lib/js/math/Plane.js +108 -0
- package/lib/js/math/Quat.d.ts +373 -0
- package/lib/js/math/Quat.js +783 -0
- package/lib/js/math/Ray.d.ts +76 -0
- package/lib/js/math/Ray.js +188 -0
- package/lib/js/math/Vec2.d.ts +310 -0
- package/lib/js/math/Vec2.js +463 -0
- package/lib/js/math/Vec3.d.ts +472 -0
- package/lib/js/math/Vec3.js +799 -0
- package/lib/js/math/Vec4.d.ts +163 -0
- package/lib/js/math/Vec4.js +211 -0
- package/lib/js/math/coder.d.ts +51 -0
- package/lib/js/math/coder.js +101 -0
- package/lib/js/math/index.d.ts +11 -0
- package/lib/js/math/index.js +11 -0
- package/lib/js/math.d.ts +266 -0
- package/lib/js/math.js +379 -0
- package/lib/js/mercator.d.ts +92 -0
- package/lib/js/mercator.js +119 -0
- package/lib/js/proj/EPSG3857.d.ts +9 -0
- package/lib/js/proj/EPSG3857.js +9 -0
- package/lib/js/proj/EPSG4326.d.ts +9 -0
- package/lib/js/proj/EPSG4326.js +9 -0
- package/lib/js/proj/Proj.d.ts +43 -0
- package/lib/js/proj/Proj.js +38 -0
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.js +19 -0
- package/lib/js/quadTree/EntityCollectionNode.d.ts +54 -0
- package/lib/js/quadTree/EntityCollectionNode.js +328 -0
- package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/MarsQuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/Node.d.ts +61 -0
- package/lib/js/quadTree/Node.js +660 -0
- package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
- package/lib/js/quadTree/QuadTreeStrategy.js +69 -0
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +15 -0
- package/lib/js/quadTree/index.d.ts +12 -0
- package/lib/js/quadTree/index.js +12 -0
- package/lib/js/quadTree/quadTree.d.ts +40 -0
- package/lib/js/quadTree/quadTree.js +66 -0
- package/lib/js/renderer/Renderer.d.ts +311 -0
- package/lib/js/renderer/Renderer.js +899 -0
- package/lib/js/renderer/RendererEvents.d.ts +237 -0
- package/lib/js/renderer/RendererEvents.js +848 -0
- package/lib/js/scene/Axes.d.ts +12 -0
- package/lib/js/scene/Axes.js +59 -0
- package/lib/js/scene/BaseNode.d.ts +61 -0
- package/lib/js/scene/BaseNode.js +69 -0
- package/lib/js/scene/Planet.d.ts +623 -0
- package/lib/js/scene/Planet.js +1431 -0
- package/lib/js/scene/RenderNode.d.ts +150 -0
- package/lib/js/scene/RenderNode.js +301 -0
- package/lib/js/scene/SkyBox.d.ts +13 -0
- package/lib/js/scene/SkyBox.js +87 -0
- package/lib/js/scene/index.d.ts +5 -0
- package/lib/js/scene/index.js +5 -0
- package/lib/js/segment/Segment.d.ts +278 -0
- package/lib/js/segment/Segment.js +1142 -0
- package/lib/js/segment/SegmentLonLat.d.ts +48 -0
- package/lib/js/segment/SegmentLonLat.js +214 -0
- package/lib/js/segment/SegmentLonLatWgs84.d.ts +10 -0
- package/lib/js/segment/SegmentLonLatWgs84.js +23 -0
- package/lib/js/segment/Slice.d.ts +13 -0
- package/lib/js/segment/Slice.js +33 -0
- package/lib/js/segment/segmentHelper.d.ts +18 -0
- package/lib/js/segment/segmentHelper.js +180 -0
- package/lib/js/shaders/atmos.d.ts +4 -0
- package/lib/js/shaders/atmos.js +312 -0
- package/lib/js/shaders/billboard.d.ts +3 -0
- package/lib/js/shaders/billboard.js +214 -0
- package/lib/js/shaders/bloom.d.ts +2 -0
- package/lib/js/shaders/bloom.js +32 -0
- package/lib/js/shaders/blur.d.ts +3 -0
- package/lib/js/shaders/blur.js +68 -0
- package/lib/js/shaders/depth.d.ts +2 -0
- package/lib/js/shaders/depth.js +43 -0
- package/lib/js/shaders/drawnode.d.ts +8 -0
- package/lib/js/shaders/drawnode.js +986 -0
- package/lib/js/shaders/geoObject.d.ts +3 -0
- package/lib/js/shaders/geoObject.js +256 -0
- package/lib/js/shaders/label.d.ts +4 -0
- package/lib/js/shaders/label.js +589 -0
- package/lib/js/shaders/lumFilter.d.ts +2 -0
- package/lib/js/shaders/lumFilter.js +36 -0
- package/lib/js/shaders/pickingMask.d.ts +2 -0
- package/lib/js/shaders/pickingMask.js +22 -0
- package/lib/js/shaders/pointCloud.d.ts +2 -0
- package/lib/js/shaders/pointCloud.js +32 -0
- package/lib/js/shaders/polyline.d.ts +3 -0
- package/lib/js/shaders/polyline.js +345 -0
- package/lib/js/shaders/ray.d.ts +2 -0
- package/lib/js/shaders/ray.js +76 -0
- package/lib/js/shaders/screenFrame.d.ts +2 -0
- package/lib/js/shaders/screenFrame.js +26 -0
- package/lib/js/shaders/skybox.d.ts +2 -0
- package/lib/js/shaders/skybox.js +28 -0
- package/lib/js/shaders/toneMapping.d.ts +2 -0
- package/lib/js/shaders/toneMapping.js +85 -0
- package/lib/js/shaders/utils.d.ts +1 -0
- package/lib/js/shaders/utils.js +86 -0
- package/lib/js/terrain/BilTerrain.d.ts +18 -0
- package/lib/js/terrain/BilTerrain.js +152 -0
- package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
- package/lib/js/terrain/EmptyTerrain.js +106 -0
- package/lib/js/terrain/Geoid.d.ts +33 -0
- package/lib/js/terrain/Geoid.js +191 -0
- package/lib/js/terrain/GlobusTerrain.d.ts +134 -0
- package/lib/js/terrain/GlobusTerrain.js +332 -0
- package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
- package/lib/js/terrain/MapboxTerrain.js +298 -0
- package/lib/js/terrain/index.d.ts +5 -0
- package/lib/js/terrain/index.js +5 -0
- package/lib/js/ui/Button.d.ts +32 -0
- package/lib/js/ui/Button.js +78 -0
- package/lib/js/ui/ButtonGroup.d.ts +16 -0
- package/lib/js/ui/ButtonGroup.js +41 -0
- package/lib/js/ui/Dialog.d.ts +55 -0
- package/lib/js/ui/Dialog.js +173 -0
- package/lib/js/ui/Slider.d.ts +38 -0
- package/lib/js/ui/Slider.js +129 -0
- package/lib/js/ui/ToggleButton.d.ts +20 -0
- package/lib/js/ui/ToggleButton.js +42 -0
- package/lib/js/ui/View.d.ts +37 -0
- package/lib/js/ui/View.js +151 -0
- package/lib/js/ui/icons.d.ts +1 -0
- package/lib/js/ui/icons.js +3 -0
- package/lib/js/utils/BaseWorker.d.ts +14 -0
- package/lib/js/utils/BaseWorker.js +47 -0
- package/lib/js/utils/FontAtlas.d.ts +82 -0
- package/lib/js/utils/FontAtlas.js +220 -0
- package/lib/js/utils/GeoImageCreator.d.ts +34 -0
- package/lib/js/utils/GeoImageCreator.js +163 -0
- package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
- package/lib/js/utils/ImagesCacheManager.js +63 -0
- package/lib/js/utils/Loader.d.ts +63 -0
- package/lib/js/utils/Loader.js +156 -0
- package/lib/js/utils/NormalMapCreator.d.ts +52 -0
- package/lib/js/utils/NormalMapCreator.js +310 -0
- package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
- package/lib/js/utils/PlainSegmentWorker.js +383 -0
- package/lib/js/utils/TerrainWorker.d.ts +28 -0
- package/lib/js/utils/TerrainWorker.js +551 -0
- package/lib/js/utils/TextureAtlas.d.ts +113 -0
- package/lib/js/utils/TextureAtlas.js +231 -0
- package/lib/js/utils/VectorTileCreator.d.ts +18 -0
- package/lib/js/utils/VectorTileCreator.js +320 -0
- package/lib/js/utils/colorTable.d.ts +3 -0
- package/lib/js/utils/colorTable.js +143 -0
- package/lib/js/utils/earcut.d.ts +7 -0
- package/lib/js/utils/earcut.js +536 -0
- package/lib/js/utils/objParser.d.ts +24 -0
- package/lib/js/utils/objParser.js +201 -0
- package/lib/js/utils/shared.d.ts +267 -0
- package/lib/js/utils/shared.js +893 -0
- package/lib/js/utils/units.d.ts +16 -0
- package/lib/js/utils/units.js +61 -0
- package/lib/js/webgl/BaseFramebuffer.d.ts +53 -0
- package/lib/js/webgl/BaseFramebuffer.js +88 -0
- package/lib/js/webgl/Framebuffer.d.ts +69 -0
- package/lib/js/webgl/Framebuffer.js +149 -0
- package/lib/js/webgl/Handler.d.ts +473 -0
- package/lib/js/webgl/Handler.js +1003 -0
- package/lib/js/webgl/Multisample.d.ts +27 -0
- package/lib/js/webgl/Multisample.js +77 -0
- package/lib/js/webgl/Program.d.ts +159 -0
- package/lib/js/webgl/Program.js +314 -0
- package/lib/js/webgl/ProgramController.d.ts +86 -0
- package/lib/js/webgl/ProgramController.js +110 -0
- package/lib/js/webgl/index.d.ts +6 -0
- package/lib/js/webgl/index.js +6 -0
- package/lib/js/webgl/types.d.ts +9 -0
- package/lib/js/webgl/types.js +26 -0
- package/lib/js/webgl/variableHandlers.d.ts +22 -0
- package/lib/js/webgl/variableHandlers.js +78 -0
- package/package.json +29 -38
- package/dist/@openglobus/og.esm.js +0 -21
- package/dist/@openglobus/og.esm.js.map +0 -1
- package/dist/@openglobus/og.umd.js +0 -21
- package/dist/@openglobus/og.umd.js.map +0 -1
- package/src/og/Clock.js +0 -214
- package/src/og/Deferred.js +0 -11
- package/src/og/Events.js +0 -185
- package/src/og/Extent.js +0 -352
- package/src/og/Globe.js +0 -342
- package/src/og/ImageCanvas.js +0 -236
- package/src/og/Lock.js +0 -44
- package/src/og/LonLat.js +0 -220
- package/src/og/Object3d.js +0 -395
- package/src/og/Popup.js +0 -187
- package/src/og/QueueArray.js +0 -75
- package/src/og/Rectangle.js +0 -111
- package/src/og/Stack.js +0 -49
- package/src/og/astro/astro.js +0 -51
- package/src/og/astro/earth.js +0 -112
- package/src/og/astro/jd.js +0 -514
- package/src/og/astro/orbit.js +0 -119
- package/src/og/astro/rotation.js +0 -36
- package/src/og/bv/Box.js +0 -77
- package/src/og/bv/Sphere.js +0 -57
- package/src/og/bv/index.js +0 -4
- package/src/og/camera/Camera.js +0 -645
- package/src/og/camera/Frustum.js +0 -331
- package/src/og/camera/PlanetCamera.js +0 -674
- package/src/og/camera/index.js +0 -4
- package/src/og/cons.js +0 -108
- package/src/og/control/Atmosphere.js +0 -387
- package/src/og/control/CompassButton.js +0 -146
- package/src/og/control/Control.js +0 -198
- package/src/og/control/DebugInfo.js +0 -259
- package/src/og/control/DrawingSwitcher.js +0 -117
- package/src/og/control/EarthCoordinates.js +0 -214
- package/src/og/control/EarthNavigation.js +0 -258
- package/src/og/control/GeoImageDragControl.js +0 -117
- package/src/og/control/KeyboardNavigation.js +0 -172
- package/src/og/control/LayerAnimation.js +0 -379
- package/src/og/control/LayerSwitcher.js +0 -424
- package/src/og/control/Lighting.js +0 -487
- package/src/og/control/MouseNavigation.js +0 -436
- package/src/og/control/MouseWheelZoomControl.js +0 -253
- package/src/og/control/RulerSwitcher.js +0 -74
- package/src/og/control/ScaleControl.js +0 -119
- package/src/og/control/SegmentBoundVisualization.js +0 -54
- package/src/og/control/ShowFps.js +0 -40
- package/src/og/control/SimpleNavigation.js +0 -123
- package/src/og/control/SimpleSkyBackground.js +0 -206
- package/src/og/control/Sun.js +0 -176
- package/src/og/control/ToggleWireframe.js +0 -35
- package/src/og/control/TouchNavigation.js +0 -350
- package/src/og/control/ZoomControl.js +0 -115
- package/src/og/control/drawing/DrawingControl.js +0 -51
- package/src/og/control/drawing/LineStringDrawingScene.js +0 -203
- package/src/og/control/drawing/PolygonDrawingScene.js +0 -785
- package/src/og/control/elevationProfile/ElevationProfile.js +0 -275
- package/src/og/control/heightRuler/HeightRuler.js +0 -12
- package/src/og/control/heightRuler/HeightRulerScene.js +0 -228
- package/src/og/control/heightRuler/HeightRulerSwitcher.js +0 -15
- package/src/og/control/index.js +0 -56
- package/src/og/control/ruler/Ruler.js +0 -39
- package/src/og/control/ruler/RulerScene.js +0 -395
- package/src/og/control/selection/Selection.js +0 -95
- package/src/og/control/selection/SelectionScene.js +0 -345
- package/src/og/control/timeline/TimelineControl.js +0 -100
- package/src/og/control/timeline/TimelineModel.js +0 -137
- package/src/og/control/timeline/TimelineView.js +0 -462
- package/src/og/control/timeline/timelineUtils.js +0 -132
- package/src/og/control/visibleExtent/Segment.js +0 -1854
- package/src/og/control/visibleExtent/VisibleExtent.js +0 -80
- package/src/og/control/visibleExtent/drawnode.js +0 -747
- package/src/og/ellipsoid/Ellipsoid.js +0 -565
- package/src/og/ellipsoid/index.js +0 -4
- package/src/og/ellipsoid/wgs84.js +0 -9
- package/src/og/entity/BaseBillboard.js +0 -375
- package/src/og/entity/Billboard.js +0 -161
- package/src/og/entity/BillboardHandler.js +0 -883
- package/src/og/entity/Entity.js +0 -728
- package/src/og/entity/EntityCollection.js +0 -830
- package/src/og/entity/GeoObject.js +0 -244
- package/src/og/entity/GeoObjectHandler.js +0 -744
- package/src/og/entity/Geometry.js +0 -320
- package/src/og/entity/GeometryHandler.js +0 -1340
- package/src/og/entity/Label.js +0 -345
- package/src/og/entity/LabelHandler.js +0 -895
- package/src/og/entity/LabelWorker.js +0 -194
- package/src/og/entity/PointCloud.js +0 -491
- package/src/og/entity/PointCloudHandler.js +0 -122
- package/src/og/entity/Polyline.js +0 -2203
- package/src/og/entity/PolylineHandler.js +0 -105
- package/src/og/entity/Ray.js +0 -262
- package/src/og/entity/RayHandler.js +0 -841
- package/src/og/entity/Strip.js +0 -628
- package/src/og/entity/StripHandler.js +0 -158
- package/src/og/entity/index.js +0 -9
- package/src/og/index.js +0 -112
- package/src/og/input/KeyboardHandler.js +0 -195
- package/src/og/input/MouseHandler.js +0 -94
- package/src/og/input/TouchHandler.js +0 -59
- package/src/og/input/input.js +0 -44
- package/src/og/layer/BaseGeoImage.js +0 -480
- package/src/og/layer/CanvasTiles.js +0 -360
- package/src/og/layer/GeoImage.js +0 -150
- package/src/og/layer/GeoTexture2d.js +0 -50
- package/src/og/layer/GeoVideo.js +0 -187
- package/src/og/layer/KML.js +0 -358
- package/src/og/layer/Layer.js +0 -907
- package/src/og/layer/Material.js +0 -98
- package/src/og/layer/Vector.js +0 -1068
- package/src/og/layer/WMS.js +0 -182
- package/src/og/layer/XYZ.js +0 -374
- package/src/og/layer/index.js +0 -11
- package/src/og/light/LightSource.js +0 -362
- package/src/og/math/Line2.js +0 -28
- package/src/og/math/Line3.js +0 -140
- package/src/og/math/Mat3.js +0 -152
- package/src/og/math/Mat4.js +0 -603
- package/src/og/math/Plane.js +0 -117
- package/src/og/math/Quat.js +0 -980
- package/src/og/math/Ray.js +0 -237
- package/src/og/math/Vec2.js +0 -520
- package/src/og/math/Vec3.js +0 -931
- package/src/og/math/Vec4.js +0 -256
- package/src/og/math/coder.js +0 -104
- package/src/og/math/index.js +0 -23
- package/src/og/math.js +0 -430
- package/src/og/mercator.js +0 -149
- package/src/og/proj/EPSG3857.js +0 -13
- package/src/og/proj/EPSG4326.js +0 -13
- package/src/og/proj/Proj.js +0 -59
- package/src/og/quadTree/EPSG4326QuadTreeStrategy.js +0 -27
- package/src/og/quadTree/EarthQuadTreeStrategy.js +0 -30
- package/src/og/quadTree/EntityCollectionNode.js +0 -391
- package/src/og/quadTree/MarsQuadTreeStrategy.js +0 -28
- package/src/og/quadTree/Node.js +0 -785
- package/src/og/quadTree/QuadTreeStrategy.js +0 -94
- package/src/og/quadTree/Wgs84QuadTreeStrategy.js +0 -27
- package/src/og/quadTree/index.js +0 -14
- package/src/og/quadTree/quadTree.js +0 -77
- package/src/og/renderer/Renderer.js +0 -1185
- package/src/og/renderer/RendererEvents.js +0 -1094
- package/src/og/res/images.js +0 -8
- package/src/og/scene/Axes.js +0 -74
- package/src/og/scene/BaseNode.js +0 -109
- package/src/og/scene/Planet.js +0 -1931
- package/src/og/scene/RenderNode.js +0 -392
- package/src/og/scene/SkyBox.js +0 -104
- package/src/og/scene/index.js +0 -5
- package/src/og/segment/Segment.js +0 -1687
- package/src/og/segment/SegmentLonLat.js +0 -294
- package/src/og/segment/SegmentLonLatWgs84.js +0 -40
- package/src/og/segment/Slice.js +0 -45
- package/src/og/segment/segmentHelper.js +0 -230
- package/src/og/shaders/atmos.js +0 -332
- package/src/og/shaders/billboard.js +0 -225
- package/src/og/shaders/bloom.js +0 -37
- package/src/og/shaders/blur.js +0 -79
- package/src/og/shaders/depth.js +0 -48
- package/src/og/shaders/drawnode.js +0 -1040
- package/src/og/shaders/geoObject.js +0 -270
- package/src/og/shaders/label.js +0 -604
- package/src/og/shaders/lumFilter.js +0 -41
- package/src/og/shaders/pickingMask.js +0 -27
- package/src/og/shaders/pointCloud.js +0 -38
- package/src/og/shaders/polyline.js +0 -557
- package/src/og/shaders/ray.js +0 -81
- package/src/og/shaders/screenFrame.js +0 -31
- package/src/og/shaders/skybox.js +0 -33
- package/src/og/shaders/toneMapping.js +0 -90
- package/src/og/shaders/utils.js +0 -88
- package/src/og/terrain/BilTerrain.js +0 -243
- package/src/og/terrain/EmptyTerrain.js +0 -174
- package/src/og/terrain/Geoid.js +0 -247
- package/src/og/terrain/GlobusTerrain.js +0 -483
- package/src/og/terrain/MapboxTerrain.js +0 -470
- package/src/og/terrain/index.js +0 -6
- package/src/og/ui/Button.js +0 -107
- package/src/og/ui/ButtonGroup.js +0 -57
- package/src/og/ui/Dialog.js +0 -239
- package/src/og/ui/Slider.js +0 -170
- package/src/og/ui/ToggleButton.js +0 -51
- package/src/og/ui/UIhelpers.js +0 -155
- package/src/og/ui/View.js +0 -190
- package/src/og/ui/icons.js +0 -3
- package/src/og/utils/BaseWorker.js +0 -46
- package/src/og/utils/FontAtlas.js +0 -218
- package/src/og/utils/GeoImageCreator.js +0 -204
- package/src/og/utils/ImagesCacheManager.js +0 -70
- package/src/og/utils/Loader.js +0 -188
- package/src/og/utils/NormalMapCreator.js +0 -404
- package/src/og/utils/PlainSegmentWorker.js +0 -398
- package/src/og/utils/TerrainWorker.js +0 -573
- package/src/og/utils/TextureAtlas.js +0 -291
- package/src/og/utils/VectorTileCreator.js +0 -391
- package/src/og/utils/colorTable.js +0 -145
- package/src/og/utils/earcut.js +0 -661
- package/src/og/utils/functionComposition.js +0 -13
- package/src/og/utils/objParser.js +0 -227
- package/src/og/utils/shared.js +0 -989
- package/src/og/utils/units.js +0 -78
- package/src/og/webgl/Framebuffer.js +0 -311
- package/src/og/webgl/Handler.js +0 -1170
- package/src/og/webgl/Multisample.js +0 -275
- package/src/og/webgl/Program.js +0 -407
- package/src/og/webgl/ProgramController.js +0 -143
- package/src/og/webgl/callbacks.js +0 -98
- package/src/og/webgl/index.js +0 -13
- package/src/og/webgl/types.js +0 -31
- package/src/og.jsdoc +0 -3
- package/types/Clock.d.ts +0 -99
- package/types/Deferred.d.ts +0 -6
- package/types/Events.d.ts +0 -78
- package/types/Extent.d.ts +0 -166
- package/types/Globe.d.ts +0 -108
- package/types/ImageCanvas.d.ts +0 -128
- package/types/Lock.d.ts +0 -12
- package/types/LonLat.d.ts +0 -127
- package/types/Object3d.d.ts +0 -35
- package/types/Popup.d.ts +0 -29
- package/types/QueueArray.d.ts +0 -19
- package/types/Rectangle.d.ts +0 -80
- package/types/Stack.d.ts +0 -19
- package/types/arial.d.ts +0 -49
- package/types/astro/astro.d.ts +0 -38
- package/types/astro/earth.d.ts +0 -7
- package/types/astro/jd.d.ts +0 -254
- package/types/bv/Box.d.ts +0 -30
- package/types/bv/Sphere.d.ts +0 -38
- package/types/bv/index.d.ts +0 -3
- package/types/camera/Camera.d.ts +0 -314
- package/types/camera/Frustum.d.ts +0 -133
- package/types/camera/PlanetCamera.d.ts +0 -219
- package/types/camera/index.d.ts +0 -3
- package/types/cons.d.ts +0 -40
- package/types/control/Atmosphere.d.ts +0 -15
- package/types/control/CompassButton.d.ts +0 -16
- package/types/control/Control.d.ts +0 -104
- package/types/control/DebugInfo.d.ts +0 -19
- package/types/control/DrawingSwitcher.d.ts +0 -13
- package/types/control/EarthCoordinates.d.ts +0 -44
- package/types/control/EarthNavigation.d.ts +0 -43
- package/types/control/GeoImageDragControl.d.ts +0 -14
- package/types/control/KeyboardNavigation.d.ts +0 -24
- package/types/control/LayerAnimation.d.ts +0 -73
- package/types/control/LayerSwitcher.d.ts +0 -64
- package/types/control/Lighting.d.ts +0 -41
- package/types/control/MouseNavigation.d.ts +0 -49
- package/types/control/MouseWheelZoomControl.d.ts +0 -46
- package/types/control/ScaleControl.d.ts +0 -23
- package/types/control/ShowFps.d.ts +0 -11
- package/types/control/SimpleNavigation.d.ts +0 -26
- package/types/control/SimpleSkyBackground.d.ts +0 -15
- package/types/control/Sun.d.ts +0 -53
- package/types/control/ToggleWireframe.d.ts +0 -12
- package/types/control/TouchNavigation.d.ts +0 -54
- package/types/control/ZoomControl.d.ts +0 -26
- package/types/control/drawing/DrawingControl.d.ts +0 -14
- package/types/control/drawing/LineStringDrawingScene.d.ts +0 -5
- package/types/control/drawing/PolygonDrawingScene.d.ts +0 -99
- package/types/control/heightRuler/HeightRuler.d.ts +0 -6
- package/types/control/heightRuler/HeightRulerScene.d.ts +0 -23
- package/types/control/index.d.ts +0 -27
- package/types/control/ruler/Ruler.d.ts +0 -13
- package/types/control/ruler/RulerScene.d.ts +0 -51
- package/types/control/selection/Selection.d.ts +0 -49
- package/types/control/selection/SelectionScene.d.ts +0 -32
- package/types/control/timeline/TimelineControl.d.ts +0 -10
- package/types/control/timeline/TimelineModel.d.ts +0 -33
- package/types/control/timeline/TimelineView.d.ts +0 -57
- package/types/control/timeline/timelineUtils.d.ts +0 -9
- package/types/ellipsoid/Ellipsoid.d.ts +0 -170
- package/types/ellipsoid/index.d.ts +0 -3
- package/types/ellipsoid/wgs84.d.ts +0 -6
- package/types/entity/BaseBillboard.d.ts +0 -215
- package/types/entity/Billboard.d.ts +0 -94
- package/types/entity/BillboardHandler.d.ts +0 -75
- package/types/entity/Entity.d.ts +0 -340
- package/types/entity/EntityCollection.d.ts +0 -303
- package/types/entity/GeoObject.d.ts +0 -117
- package/types/entity/GeoObjectHandler.d.ts +0 -41
- package/types/entity/Geometry.d.ts +0 -79
- package/types/entity/GeometryHandler.d.ts +0 -76
- package/types/entity/Label.d.ts +0 -190
- package/types/entity/LabelHandler.d.ts +0 -31
- package/types/entity/LabelWorker.d.ts +0 -9
- package/types/entity/PointCloud.d.ts +0 -174
- package/types/entity/PointCloudHandler.d.ts +0 -38
- package/types/entity/Polyline.d.ts +0 -307
- package/types/entity/PolylineHandler.d.ts +0 -18
- package/types/entity/Ray.d.ts +0 -122
- package/types/entity/RayHandler.d.ts +0 -63
- package/types/entity/Strip.d.ts +0 -119
- package/types/entity/StripHandler.d.ts +0 -38
- package/types/entity/index.d.ts +0 -8
- package/types/index.d.ts +0 -53
- package/types/input/KeyboardHandler.d.ts +0 -17
- package/types/input/MouseHandler.d.ts +0 -5
- package/types/input/TouchHandler.d.ts +0 -5
- package/types/input/input.d.ts +0 -42
- package/types/layer/BaseGeoImage.d.ts +0 -116
- package/types/layer/CanvasTiles.d.ts +0 -73
- package/types/layer/GeoImage.d.ts +0 -51
- package/types/layer/GeoTexture2d.d.ts +0 -7
- package/types/layer/GeoVideo.d.ts +0 -47
- package/types/layer/KML.d.ts +0 -93
- package/types/layer/Layer.d.ts +0 -320
- package/types/layer/Material.d.ts +0 -45
- package/types/layer/Vector.d.ts +0 -211
- package/types/layer/WMS.d.ts +0 -66
- package/types/layer/XYZ.d.ts +0 -122
- package/types/layer/index.d.ts +0 -10
- package/types/light/LightSource.d.ts +0 -178
- package/types/math/Line2.d.ts +0 -11
- package/types/math/Line3.d.ts +0 -10
- package/types/math/Mat3.d.ts +0 -65
- package/types/math/Mat4.d.ts +0 -176
- package/types/math/Plane.d.ts +0 -18
- package/types/math/Quat.d.ts +0 -379
- package/types/math/Ray.d.ts +0 -82
- package/types/math/Vec2.d.ts +0 -309
- package/types/math/Vec3.d.ts +0 -472
- package/types/math/Vec4.d.ts +0 -161
- package/types/math/coder.d.ts +0 -43
- package/types/math/index.d.ts +0 -11
- package/types/math.d.ts +0 -268
- package/types/mercator.d.ts +0 -92
- package/types/proj/EPSG3857.d.ts +0 -6
- package/types/proj/EPSG4326.d.ts +0 -6
- package/types/proj/Proj.d.ts +0 -42
- package/types/quadTree/EPSG4326QuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/EarthQuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/EntityCollectionNode.d.ts +0 -41
- package/types/quadTree/MarsQuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/Node.d.ts +0 -58
- package/types/quadTree/QuadTreeStrategy.d.ts +0 -21
- package/types/quadTree/Wgs84QuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/index.d.ts +0 -12
- package/types/quadTree/quadTree.d.ts +0 -40
- package/types/renderer/Renderer.d.ts +0 -291
- package/types/renderer/RendererEvents.d.ts +0 -241
- package/types/res/images.d.ts +0 -2
- package/types/scene/Axes.d.ts +0 -10
- package/types/scene/BaseNode.d.ts +0 -60
- package/types/scene/Planet.d.ts +0 -594
- package/types/scene/RenderNode.d.ts +0 -152
- package/types/scene/SkyBox.d.ts +0 -9
- package/types/scene/index.d.ts +0 -4
- package/types/segment/Segment.d.ts +0 -273
- package/types/segment/SegmentLonLat.d.ts +0 -22
- package/types/segment/SegmentLonLatWgs84.d.ts +0 -4
- package/types/segment/Slice.d.ts +0 -10
- package/types/segment/segmentHelper.d.ts +0 -13
- package/types/shaders/atmos.d.ts +0 -4
- package/types/shaders/billboard.d.ts +0 -3
- package/types/shaders/depth.d.ts +0 -2
- package/types/shaders/drawnode.d.ts +0 -8
- package/types/shaders/geoObject.d.ts +0 -3
- package/types/shaders/label.d.ts +0 -4
- package/types/shaders/pickingMask.d.ts +0 -2
- package/types/shaders/pointCloud.d.ts +0 -2
- package/types/shaders/polyline.d.ts +0 -3
- package/types/shaders/ray.d.ts +0 -2
- package/types/shaders/screenFrame.d.ts +0 -2
- package/types/shaders/skybox.d.ts +0 -2
- package/types/shaders/toneMapping.d.ts +0 -2
- package/types/shaders/utils.d.ts +0 -1
- package/types/terrain/BilTerrain.d.ts +0 -14
- package/types/terrain/EmptyTerrain.d.ts +0 -87
- package/types/terrain/Geoid.d.ts +0 -17
- package/types/terrain/GlobusTerrain.d.ts +0 -122
- package/types/terrain/MapboxTerrain.d.ts +0 -14
- package/types/terrain/index.d.ts +0 -5
- package/types/ui/Button.d.ts +0 -21
- package/types/ui/ButtonGroup.d.ts +0 -12
- package/types/ui/Dialog.d.ts +0 -41
- package/types/ui/Slider.d.ts +0 -33
- package/types/ui/ToggleButton.d.ts +0 -10
- package/types/ui/UIhelpers.d.ts +0 -13
- package/types/ui/View.d.ts +0 -33
- package/types/ui/icons.d.ts +0 -1
- package/types/utils/BaseWorker.d.ts +0 -14
- package/types/utils/FontAtlas.d.ts +0 -16
- package/types/utils/GeoImageCreator.d.ts +0 -30
- package/types/utils/ImagesCacheManager.d.ts +0 -10
- package/types/utils/Loader.d.ts +0 -31
- package/types/utils/NormalMapCreator.d.ts +0 -39
- package/types/utils/PlainSegmentWorker.d.ts +0 -8
- package/types/utils/TerrainWorker.d.ts +0 -7
- package/types/utils/TextureAtlas.d.ts +0 -113
- package/types/utils/VectorTileCreator.d.ts +0 -14
- package/types/utils/colorTable.d.ts +0 -143
- package/types/utils/earcut.d.ts +0 -6
- package/types/utils/functionComposition.d.ts +0 -5
- package/types/utils/objParser.d.ts +0 -8
- package/types/utils/shared.d.ts +0 -241
- package/types/utils/units.d.ts +0 -20
- package/types/webgl/Framebuffer.d.ts +0 -134
- package/types/webgl/Handler.d.ts +0 -403
- package/types/webgl/Multisample.d.ts +0 -91
- package/types/webgl/Program.d.ts +0 -163
- package/types/webgl/ProgramController.d.ts +0 -89
- package/types/webgl/callbacks.d.ts +0 -1
- package/types/webgl/index.d.ts +0 -6
- package/types/webgl/types.d.ts +0 -2
- /package/{dist → lib}/@openglobus/og.css +0 -0
- /package/{src/og → lib/@openglobus/res/fonts}/arial.js +0 -0
package/lib/js/math.d.ts
ADDED
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
import { Vec3 } from "./math/Vec3";
|
|
2
|
+
/** @const */
|
|
3
|
+
export declare const TWO_PI: number;
|
|
4
|
+
/** @const */
|
|
5
|
+
export declare const PI_TWO: number;
|
|
6
|
+
export declare const X = 0;
|
|
7
|
+
export declare const Y = 1;
|
|
8
|
+
export declare const Z = 2;
|
|
9
|
+
export declare const W = 3;
|
|
10
|
+
export declare const MAX_FLOAT: number;
|
|
11
|
+
/** @const */
|
|
12
|
+
export declare const LOG2: number;
|
|
13
|
+
/** @const */
|
|
14
|
+
export declare const MAX32 = 2147483647;
|
|
15
|
+
/** @const */
|
|
16
|
+
export declare const MAX = 549755748352;
|
|
17
|
+
/** @const */
|
|
18
|
+
export declare const MIN: number;
|
|
19
|
+
/** @const */
|
|
20
|
+
export declare const RADIANS: number;
|
|
21
|
+
/** @const */
|
|
22
|
+
export declare const DEGREES: number;
|
|
23
|
+
/** @const */
|
|
24
|
+
export declare const DEGREES_DOUBLE: number;
|
|
25
|
+
/** @const */
|
|
26
|
+
export declare const RADIANS_HALF: number;
|
|
27
|
+
/** @const */
|
|
28
|
+
export declare const ARCSECONDS_TO_RADIANS = 0.00000484813681109536;
|
|
29
|
+
/** @const */
|
|
30
|
+
export declare const RADIANS_TO_HOURS = 3.819718634205488;
|
|
31
|
+
/** @const */
|
|
32
|
+
export declare const HOURS_TO_RADIANS = 0.26179938779914946;
|
|
33
|
+
/** @const */
|
|
34
|
+
export declare const HOURS_TO_DEGREES = 15;
|
|
35
|
+
/** @const */
|
|
36
|
+
export declare const DEGREES_TO_HOURS: number;
|
|
37
|
+
/** @const */
|
|
38
|
+
export declare const SQRT_HALF: number;
|
|
39
|
+
export declare const EPS1 = 0.1;
|
|
40
|
+
export declare const EPS2 = 0.01;
|
|
41
|
+
export declare const EPS3 = 0.001;
|
|
42
|
+
export declare const EPS4 = 0.0001;
|
|
43
|
+
export declare const EPS5 = 0.00001;
|
|
44
|
+
export declare const EPS6 = 0.000001;
|
|
45
|
+
export declare const EPS7 = 1e-7;
|
|
46
|
+
export declare const EPS8 = 1e-8;
|
|
47
|
+
export declare const EPS9 = 1e-9;
|
|
48
|
+
export declare const EPS10 = 1e-10;
|
|
49
|
+
export declare const EPS11 = 1e-11;
|
|
50
|
+
export declare const EPS12 = 1e-12;
|
|
51
|
+
export declare const EPS13 = 1e-13;
|
|
52
|
+
export declare const EPS14 = 1e-14;
|
|
53
|
+
export declare const EPS15 = 1e-15;
|
|
54
|
+
export declare const EPS16 = 1e-16;
|
|
55
|
+
export declare const EPS17 = 1e-17;
|
|
56
|
+
export declare const EPS18 = 1e-18;
|
|
57
|
+
export declare const EPS19 = 1e-19;
|
|
58
|
+
export declare const EPS20 = 1e-20;
|
|
59
|
+
/**
|
|
60
|
+
* The log function returns the power to which the base value has to be raised to produce n.
|
|
61
|
+
* @function
|
|
62
|
+
* @param {number} n - Produce value.
|
|
63
|
+
* @param {number} base - Base value.
|
|
64
|
+
* @returns {number} -
|
|
65
|
+
* @example
|
|
66
|
+
* log(64, 2)
|
|
67
|
+
* //returns 6
|
|
68
|
+
*/
|
|
69
|
+
export declare function log(n: number, base: number): number;
|
|
70
|
+
/**
|
|
71
|
+
* Clamp the number.
|
|
72
|
+
* @function
|
|
73
|
+
* @param {number} number - Input number.
|
|
74
|
+
* @param {number} min - Minimal edge.
|
|
75
|
+
* @param {number} max - Maximal edge.
|
|
76
|
+
* @returns {number} -
|
|
77
|
+
* @example
|
|
78
|
+
* clamp(12, 1, 5)
|
|
79
|
+
* //returns 5
|
|
80
|
+
*/
|
|
81
|
+
export declare function clamp(number: number, min: number, max: number): number;
|
|
82
|
+
/**
|
|
83
|
+
* Converts degrees value to radians.
|
|
84
|
+
* @function
|
|
85
|
+
* @param {number} degrees - Degree value.
|
|
86
|
+
* @returns {number} -
|
|
87
|
+
*/
|
|
88
|
+
export declare function DEG2RAD(degrees: number): number;
|
|
89
|
+
/**
|
|
90
|
+
* Converts radians value to degrees.
|
|
91
|
+
* @function
|
|
92
|
+
* @param {number} angle - Degree value.
|
|
93
|
+
* @returns {number} -
|
|
94
|
+
*/
|
|
95
|
+
export declare function RAD2DEG(angle: number): number;
|
|
96
|
+
/**
|
|
97
|
+
* Check the number is a power of two.
|
|
98
|
+
* @function
|
|
99
|
+
* @param {number} x - Input value.
|
|
100
|
+
* @returns {boolean} -
|
|
101
|
+
*/
|
|
102
|
+
export declare function isPowerOfTwo(x: number): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Returns next value that is power of two.
|
|
105
|
+
* @function
|
|
106
|
+
* @param {number} x - Input value.
|
|
107
|
+
* @param {number} [maxValue=4096] - Maximal value.
|
|
108
|
+
* @returns {number} -
|
|
109
|
+
*/
|
|
110
|
+
export declare function nextHighestPowerOfTwo(x: number, maxValue?: number): number;
|
|
111
|
+
/**
|
|
112
|
+
* Returns random integer number within the bounds.
|
|
113
|
+
* @function
|
|
114
|
+
* @param {number} min - Minimal bound.
|
|
115
|
+
* @param {number} max - Maximal bound.
|
|
116
|
+
* @returns {number} -
|
|
117
|
+
*/
|
|
118
|
+
export declare function randomi(min?: number, max?: number): number;
|
|
119
|
+
/**
|
|
120
|
+
* Returns random number within the bounds.
|
|
121
|
+
* @function
|
|
122
|
+
* @param {number} [min=0] - Minimal bound.
|
|
123
|
+
* @param {number} [max=1] - Maximal bound.
|
|
124
|
+
* @returns {number} -
|
|
125
|
+
*/
|
|
126
|
+
export declare function random(min?: number, max?: number): number;
|
|
127
|
+
/**
|
|
128
|
+
* Converts degrees value to decimal.
|
|
129
|
+
* @function
|
|
130
|
+
* @param {number} d - Degrees.
|
|
131
|
+
* @param {number} m - Minutes.
|
|
132
|
+
* @param {number} s - Seconds.
|
|
133
|
+
* @param {boolean} [p] - Positive flag. False - default.
|
|
134
|
+
* @returns {number} -
|
|
135
|
+
**/
|
|
136
|
+
export declare function degToDec(d: number, m: number, s: number, p: number): number;
|
|
137
|
+
/**
|
|
138
|
+
* The modulo operation that also works for negative dividends.
|
|
139
|
+
* @function
|
|
140
|
+
* @param {number} m - The dividend.
|
|
141
|
+
* @param {number} n - The divisor.
|
|
142
|
+
* @returns {number} The remainder.
|
|
143
|
+
*/
|
|
144
|
+
export declare function mod(m: number, n: number): number;
|
|
145
|
+
/**
|
|
146
|
+
* Returns an angle in the range 0 <= angle <= 2Pi which is equivalent to the provided angle.
|
|
147
|
+
* @function
|
|
148
|
+
* @param {number} a - Angle in radians
|
|
149
|
+
* @returns {number} -
|
|
150
|
+
*/
|
|
151
|
+
export declare function zeroTwoPI(a: number): number;
|
|
152
|
+
/**
|
|
153
|
+
* Returns 0.0 if x is smaller than edge and otherwise 1.0.
|
|
154
|
+
* @function
|
|
155
|
+
* @param {number} edge -
|
|
156
|
+
* @param {number} x - Value to edge.
|
|
157
|
+
* @returns {number} -
|
|
158
|
+
*/
|
|
159
|
+
export declare function step(edge: number, x: number): number;
|
|
160
|
+
/**
|
|
161
|
+
* The frac function returns the fractional part of x, i.e. x minus floor(x).
|
|
162
|
+
* @function
|
|
163
|
+
* @param {number} x - Input value.
|
|
164
|
+
* @returns {number} -
|
|
165
|
+
*/
|
|
166
|
+
export declare function frac(x: number): number;
|
|
167
|
+
/**
|
|
168
|
+
* Returns Math.log(x) / Math.log(2)
|
|
169
|
+
* @function
|
|
170
|
+
* @param {number} x - Input value.
|
|
171
|
+
* @returns {number} -
|
|
172
|
+
*/
|
|
173
|
+
export declare function log2(x: number): number;
|
|
174
|
+
/**
|
|
175
|
+
* Returns two power of n.
|
|
176
|
+
* @function
|
|
177
|
+
* @param {number} n - Power value.
|
|
178
|
+
* @returns {number} -
|
|
179
|
+
*/
|
|
180
|
+
export declare function exp2(n: number): number;
|
|
181
|
+
/**
|
|
182
|
+
* Returns two power of integer n.
|
|
183
|
+
* @function
|
|
184
|
+
* @param {number} n - Integer power value.
|
|
185
|
+
* @returns {number} -
|
|
186
|
+
*/
|
|
187
|
+
export declare function pow2i(n: number): number;
|
|
188
|
+
/**
|
|
189
|
+
* Returns a slice of linear interpolation t * (h1 - h0)
|
|
190
|
+
* @param {number} t - A value that linearly interpolates between the h0 parameter and the h1 parameter.
|
|
191
|
+
* @param {number} h1 - End value.
|
|
192
|
+
* @param {number} h0 - Start value.
|
|
193
|
+
* @returns {number} -
|
|
194
|
+
*/
|
|
195
|
+
export declare function slice(t: number, h1: number, h0: number): number;
|
|
196
|
+
/**
|
|
197
|
+
* Performs a linear interpolation.
|
|
198
|
+
* @function
|
|
199
|
+
* @param {number} t - A value that linearly interpolates between the h0 parameter and the h1 parameter.
|
|
200
|
+
* @param {number} h1 - End value.
|
|
201
|
+
* @param {number} h0 - Start value.
|
|
202
|
+
* @returns {number} -
|
|
203
|
+
*/
|
|
204
|
+
export declare function lerp(t: number, h1: number, h0: number): number;
|
|
205
|
+
export declare function cube(f: number): number;
|
|
206
|
+
export declare function square(f: number): number;
|
|
207
|
+
export declare function bezier1v(t: number, p0: number, p1: number, p2: number, p3: number): number;
|
|
208
|
+
/**
|
|
209
|
+
* Performs a 3D bezier interpolation.
|
|
210
|
+
* @function
|
|
211
|
+
* @param {number} t - Interpolation value.
|
|
212
|
+
* @param {Vec3} p0 - First control point.
|
|
213
|
+
* @param {Vec3} p1 - Second control point.
|
|
214
|
+
* @param {Vec3} p2 - Third control point.
|
|
215
|
+
* @param {Vec3} p3 - Fourth control point.
|
|
216
|
+
* @returns {Vec3} -
|
|
217
|
+
*/
|
|
218
|
+
export declare function bezier3v(t: number, p0: Vec3, p1: Vec3, p2: Vec3, p3: Vec3): Vec3;
|
|
219
|
+
/**
|
|
220
|
+
* Clamp angle value within 360.
|
|
221
|
+
* @function
|
|
222
|
+
* @param {number} x - Input angle.
|
|
223
|
+
* @returns {number} -
|
|
224
|
+
*/
|
|
225
|
+
export declare function rev(x: number): number;
|
|
226
|
+
/**
|
|
227
|
+
* Clamp longitude within: -180 to +180 degrees.
|
|
228
|
+
* @function
|
|
229
|
+
* @param {number} lon - Longitude.
|
|
230
|
+
* @returns {number} -
|
|
231
|
+
*/
|
|
232
|
+
export declare function norm_lon(lon: number): number;
|
|
233
|
+
/**
|
|
234
|
+
* Returns an angle in the range -Pi <= angle <= Pi which is equivalent to the provided angle.
|
|
235
|
+
* @function
|
|
236
|
+
* @param {number} a - Angle in radians.
|
|
237
|
+
* @returns {number} -
|
|
238
|
+
*/
|
|
239
|
+
export declare function negativePItoPI(a: number): number;
|
|
240
|
+
/**
|
|
241
|
+
* Solve using iteration method and a fixed number of steps.
|
|
242
|
+
* @function
|
|
243
|
+
* @param {Function} f - Equation. Used in Euler's equation(see og.orbit) solving.
|
|
244
|
+
* @param {number} x0 - First approximation.
|
|
245
|
+
* @param {number} maxIter - Maximum iterations.
|
|
246
|
+
* @returns {number} -
|
|
247
|
+
*/
|
|
248
|
+
export declare function solve_iteration_fixed(f: (x: number) => number, x0: number, maxIter: number): number;
|
|
249
|
+
/**
|
|
250
|
+
* Solve using iteration; terminate when error is below err or the maximum
|
|
251
|
+
* number of iterations is reached. Used in Euler's equation(see og.orbit) solving.
|
|
252
|
+
* @function
|
|
253
|
+
* @param {(x: number) => number} f - Equation.
|
|
254
|
+
* @param {number} x0 - First approximation.
|
|
255
|
+
* @param {number} err - Maximal accepted error value.
|
|
256
|
+
* @param {number} maxIter - Maximum iterations.
|
|
257
|
+
* @returns {number} -
|
|
258
|
+
*/
|
|
259
|
+
export declare function solve_iteration(f: (x: number) => number, x0: number, err: number, maxIter?: number): number;
|
|
260
|
+
/**
|
|
261
|
+
* Returns angle between two azimuths
|
|
262
|
+
* @param {number} a - First azimuth angle
|
|
263
|
+
* @param {number} b - Second azimuth angle
|
|
264
|
+
* @returns {number}
|
|
265
|
+
*/
|
|
266
|
+
export declare function getAngleBetweenAzimuths(a: number, b: number): number;
|
package/lib/js/math.js
ADDED
|
@@ -0,0 +1,379 @@
|
|
|
1
|
+
/** @const */
|
|
2
|
+
export const TWO_PI = 2.0 * Math.PI;
|
|
3
|
+
/** @const */
|
|
4
|
+
export const PI_TWO = Math.PI / 2.0;
|
|
5
|
+
export const X = 0;
|
|
6
|
+
export const Y = 1;
|
|
7
|
+
export const Z = 2;
|
|
8
|
+
export const W = 3;
|
|
9
|
+
export const MAX_FLOAT = Number.MAX_VALUE || 1.7976931348623157e308;
|
|
10
|
+
/** @const */
|
|
11
|
+
export const LOG2 = Math.log(2);
|
|
12
|
+
/** @const */
|
|
13
|
+
export const MAX32 = 2147483647;
|
|
14
|
+
/** @const */
|
|
15
|
+
export const MAX = 549755748352;
|
|
16
|
+
/** @const */
|
|
17
|
+
export const MIN = -MAX;
|
|
18
|
+
/** @const */
|
|
19
|
+
export const RADIANS = Math.PI / 180.0;
|
|
20
|
+
/** @const */
|
|
21
|
+
export const DEGREES = 180.0 / Math.PI;
|
|
22
|
+
/** @const */
|
|
23
|
+
export const DEGREES_DOUBLE = 2.0 * DEGREES;
|
|
24
|
+
/** @const */
|
|
25
|
+
export const RADIANS_HALF = 0.5 * RADIANS;
|
|
26
|
+
/** @const */
|
|
27
|
+
export const ARCSECONDS_TO_RADIANS = 0.00000484813681109536;
|
|
28
|
+
/** @const */
|
|
29
|
+
export const RADIANS_TO_HOURS = 3.8197186342054880584532103209403;
|
|
30
|
+
/** @const */
|
|
31
|
+
export const HOURS_TO_RADIANS = 0.26179938779914943653855361527329;
|
|
32
|
+
/** @const */
|
|
33
|
+
export const HOURS_TO_DEGREES = 15.0;
|
|
34
|
+
/** @const */
|
|
35
|
+
export const DEGREES_TO_HOURS = 1.0 / 15.0;
|
|
36
|
+
/** @const */
|
|
37
|
+
export const SQRT_HALF = Math.sqrt(0.5);
|
|
38
|
+
export const EPS1 = 1e-1;
|
|
39
|
+
export const EPS2 = 1e-2;
|
|
40
|
+
export const EPS3 = 1e-3;
|
|
41
|
+
export const EPS4 = 1e-4;
|
|
42
|
+
export const EPS5 = 1e-5;
|
|
43
|
+
export const EPS6 = 1e-6;
|
|
44
|
+
export const EPS7 = 1e-7;
|
|
45
|
+
export const EPS8 = 1e-8;
|
|
46
|
+
export const EPS9 = 1e-9;
|
|
47
|
+
export const EPS10 = 1e-10;
|
|
48
|
+
export const EPS11 = 1e-11;
|
|
49
|
+
export const EPS12 = 1e-12;
|
|
50
|
+
export const EPS13 = 1e-13;
|
|
51
|
+
export const EPS14 = 1e-14;
|
|
52
|
+
export const EPS15 = 1e-15;
|
|
53
|
+
export const EPS16 = 1e-16;
|
|
54
|
+
export const EPS17 = 1e-17;
|
|
55
|
+
export const EPS18 = 1e-18;
|
|
56
|
+
export const EPS19 = 1e-19;
|
|
57
|
+
export const EPS20 = 1e-20;
|
|
58
|
+
/**
|
|
59
|
+
* The log function returns the power to which the base value has to be raised to produce n.
|
|
60
|
+
* @function
|
|
61
|
+
* @param {number} n - Produce value.
|
|
62
|
+
* @param {number} base - Base value.
|
|
63
|
+
* @returns {number} -
|
|
64
|
+
* @example
|
|
65
|
+
* log(64, 2)
|
|
66
|
+
* //returns 6
|
|
67
|
+
*/
|
|
68
|
+
export function log(n, base) {
|
|
69
|
+
return Math.log(n) / Math.log(base);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Clamp the number.
|
|
73
|
+
* @function
|
|
74
|
+
* @param {number} number - Input number.
|
|
75
|
+
* @param {number} min - Minimal edge.
|
|
76
|
+
* @param {number} max - Maximal edge.
|
|
77
|
+
* @returns {number} -
|
|
78
|
+
* @example
|
|
79
|
+
* clamp(12, 1, 5)
|
|
80
|
+
* //returns 5
|
|
81
|
+
*/
|
|
82
|
+
export function clamp(number, min, max) {
|
|
83
|
+
return Math.max(min, Math.min(number, max));
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Converts degrees value to radians.
|
|
87
|
+
* @function
|
|
88
|
+
* @param {number} degrees - Degree value.
|
|
89
|
+
* @returns {number} -
|
|
90
|
+
*/
|
|
91
|
+
export function DEG2RAD(degrees) {
|
|
92
|
+
return degrees * RADIANS;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Converts radians value to degrees.
|
|
96
|
+
* @function
|
|
97
|
+
* @param {number} angle - Degree value.
|
|
98
|
+
* @returns {number} -
|
|
99
|
+
*/
|
|
100
|
+
export function RAD2DEG(angle) {
|
|
101
|
+
return angle * DEGREES;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Check the number is a power of two.
|
|
105
|
+
* @function
|
|
106
|
+
* @param {number} x - Input value.
|
|
107
|
+
* @returns {boolean} -
|
|
108
|
+
*/
|
|
109
|
+
export function isPowerOfTwo(x) {
|
|
110
|
+
return (x & (x - 1)) === 0;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Returns next value that is power of two.
|
|
114
|
+
* @function
|
|
115
|
+
* @param {number} x - Input value.
|
|
116
|
+
* @param {number} [maxValue=4096] - Maximal value.
|
|
117
|
+
* @returns {number} -
|
|
118
|
+
*/
|
|
119
|
+
export function nextHighestPowerOfTwo(x, maxValue = 4096) {
|
|
120
|
+
--x;
|
|
121
|
+
for (let i = 1; i < 32; i <<= 1) {
|
|
122
|
+
x = x | (x >> i);
|
|
123
|
+
}
|
|
124
|
+
return (x + 1) > maxValue ? maxValue : x + 1;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Returns random integer number within the bounds.
|
|
128
|
+
* @function
|
|
129
|
+
* @param {number} min - Minimal bound.
|
|
130
|
+
* @param {number} max - Maximal bound.
|
|
131
|
+
* @returns {number} -
|
|
132
|
+
*/
|
|
133
|
+
export function randomi(min = 0, max = 1) {
|
|
134
|
+
return Math.floor(Math.random() * (max - min)) + min;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Returns random number within the bounds.
|
|
138
|
+
* @function
|
|
139
|
+
* @param {number} [min=0] - Minimal bound.
|
|
140
|
+
* @param {number} [max=1] - Maximal bound.
|
|
141
|
+
* @returns {number} -
|
|
142
|
+
*/
|
|
143
|
+
export function random(min = 0, max = 1) {
|
|
144
|
+
return Math.random() * (max - min) + min;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Converts degrees value to decimal.
|
|
148
|
+
* @function
|
|
149
|
+
* @param {number} d - Degrees.
|
|
150
|
+
* @param {number} m - Minutes.
|
|
151
|
+
* @param {number} s - Seconds.
|
|
152
|
+
* @param {boolean} [p] - Positive flag. False - default.
|
|
153
|
+
* @returns {number} -
|
|
154
|
+
**/
|
|
155
|
+
export function degToDec(d, m, s, p) {
|
|
156
|
+
if (p) {
|
|
157
|
+
return d + m / 60.0 + s / 3600.0;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
return -d - m / 60.0 - s / 3600.0;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* The modulo operation that also works for negative dividends.
|
|
165
|
+
* @function
|
|
166
|
+
* @param {number} m - The dividend.
|
|
167
|
+
* @param {number} n - The divisor.
|
|
168
|
+
* @returns {number} The remainder.
|
|
169
|
+
*/
|
|
170
|
+
export function mod(m, n) {
|
|
171
|
+
return ((m % n) + n) % n;
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Returns an angle in the range 0 <= angle <= 2Pi which is equivalent to the provided angle.
|
|
175
|
+
* @function
|
|
176
|
+
* @param {number} a - Angle in radians
|
|
177
|
+
* @returns {number} -
|
|
178
|
+
*/
|
|
179
|
+
export function zeroTwoPI(a) {
|
|
180
|
+
const res = mod(a, TWO_PI);
|
|
181
|
+
if (Math.abs(res) < EPS14 && Math.abs(a) > EPS14) {
|
|
182
|
+
return TWO_PI;
|
|
183
|
+
}
|
|
184
|
+
return res;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Returns 0.0 if x is smaller than edge and otherwise 1.0.
|
|
188
|
+
* @function
|
|
189
|
+
* @param {number} edge -
|
|
190
|
+
* @param {number} x - Value to edge.
|
|
191
|
+
* @returns {number} -
|
|
192
|
+
*/
|
|
193
|
+
export function step(edge, x) {
|
|
194
|
+
return x < edge ? 0.0 : 1.0;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* The frac function returns the fractional part of x, i.e. x minus floor(x).
|
|
198
|
+
* @function
|
|
199
|
+
* @param {number} x - Input value.
|
|
200
|
+
* @returns {number} -
|
|
201
|
+
*/
|
|
202
|
+
export function frac(x) {
|
|
203
|
+
const mx = Math.abs(x);
|
|
204
|
+
return mx - Math.floor(mx);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Returns Math.log(x) / Math.log(2)
|
|
208
|
+
* @function
|
|
209
|
+
* @param {number} x - Input value.
|
|
210
|
+
* @returns {number} -
|
|
211
|
+
*/
|
|
212
|
+
export function log2(x) {
|
|
213
|
+
return Math.log(x) / LOG2;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Returns two power of n.
|
|
217
|
+
* @function
|
|
218
|
+
* @param {number} n - Power value.
|
|
219
|
+
* @returns {number} -
|
|
220
|
+
*/
|
|
221
|
+
export function exp2(n) {
|
|
222
|
+
return Math.pow(2, n);
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Returns two power of integer n.
|
|
226
|
+
* @function
|
|
227
|
+
* @param {number} n - Integer power value.
|
|
228
|
+
* @returns {number} -
|
|
229
|
+
*/
|
|
230
|
+
export function pow2i(n) {
|
|
231
|
+
return 2 << (n - 1);
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Returns a slice of linear interpolation t * (h1 - h0)
|
|
235
|
+
* @param {number} t - A value that linearly interpolates between the h0 parameter and the h1 parameter.
|
|
236
|
+
* @param {number} h1 - End value.
|
|
237
|
+
* @param {number} h0 - Start value.
|
|
238
|
+
* @returns {number} -
|
|
239
|
+
*/
|
|
240
|
+
export function slice(t, h1, h0) {
|
|
241
|
+
return t * (h1 - h0);
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Performs a linear interpolation.
|
|
245
|
+
* @function
|
|
246
|
+
* @param {number} t - A value that linearly interpolates between the h0 parameter and the h1 parameter.
|
|
247
|
+
* @param {number} h1 - End value.
|
|
248
|
+
* @param {number} h0 - Start value.
|
|
249
|
+
* @returns {number} -
|
|
250
|
+
*/
|
|
251
|
+
export function lerp(t, h1, h0) {
|
|
252
|
+
return h0 + t * (h1 - h0);
|
|
253
|
+
}
|
|
254
|
+
export function cube(f) {
|
|
255
|
+
return f * f * f;
|
|
256
|
+
}
|
|
257
|
+
export function square(f) {
|
|
258
|
+
return f * f;
|
|
259
|
+
}
|
|
260
|
+
export function bezier1v(t, p0, p1, p2, p3) {
|
|
261
|
+
return (cube(1 - t) * p0 + 3 * square(1 - t) * t * p1 + 3 * (1 - t) * square(t) * p2 + cube(t) * p3);
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Performs a 3D bezier interpolation.
|
|
265
|
+
* @function
|
|
266
|
+
* @param {number} t - Interpolation value.
|
|
267
|
+
* @param {Vec3} p0 - First control point.
|
|
268
|
+
* @param {Vec3} p1 - Second control point.
|
|
269
|
+
* @param {Vec3} p2 - Third control point.
|
|
270
|
+
* @param {Vec3} p3 - Fourth control point.
|
|
271
|
+
* @returns {Vec3} -
|
|
272
|
+
*/
|
|
273
|
+
export function bezier3v(t, p0, p1, p2, p3) {
|
|
274
|
+
let u = 1 - t;
|
|
275
|
+
let tt = t * t;
|
|
276
|
+
let uu = u * u;
|
|
277
|
+
let uuu = uu * u;
|
|
278
|
+
let ttt = tt * t;
|
|
279
|
+
return p0.scaleTo(uuu)
|
|
280
|
+
.addA(p1.scaleTo(3 * uu * t))
|
|
281
|
+
.addA(p2.scaleTo(3 * u * tt))
|
|
282
|
+
.addA(p3.scaleTo(ttt));
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Clamp angle value within 360.
|
|
286
|
+
* @function
|
|
287
|
+
* @param {number} x - Input angle.
|
|
288
|
+
* @returns {number} -
|
|
289
|
+
*/
|
|
290
|
+
export function rev(x) {
|
|
291
|
+
return x - Math.floor(x / 360.0) * 360.0;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Clamp longitude within: -180 to +180 degrees.
|
|
295
|
+
* @function
|
|
296
|
+
* @param {number} lon - Longitude.
|
|
297
|
+
* @returns {number} -
|
|
298
|
+
*/
|
|
299
|
+
export function norm_lon(lon) {
|
|
300
|
+
return lon > 180 ? ((lon + 180) % 360) - 180 : lon < -180 ? ((lon - 180) % 360) + 180 : lon;
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Returns an angle in the range -Pi <= angle <= Pi which is equivalent to the provided angle.
|
|
304
|
+
* @function
|
|
305
|
+
* @param {number} a - Angle in radians.
|
|
306
|
+
* @returns {number} -
|
|
307
|
+
*/
|
|
308
|
+
export function negativePItoPI(a) {
|
|
309
|
+
return zeroTwoPI(a + Math.PI) - Math.PI;
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Solve using iteration method and a fixed number of steps.
|
|
313
|
+
* @function
|
|
314
|
+
* @param {Function} f - Equation. Used in Euler's equation(see og.orbit) solving.
|
|
315
|
+
* @param {number} x0 - First approximation.
|
|
316
|
+
* @param {number} maxIter - Maximum iterations.
|
|
317
|
+
* @returns {number} -
|
|
318
|
+
*/
|
|
319
|
+
export function solve_iteration_fixed(f, x0, maxIter) {
|
|
320
|
+
let x = 0;
|
|
321
|
+
let x2 = x0;
|
|
322
|
+
for (let i = 0; i < maxIter; i++) {
|
|
323
|
+
x = x2;
|
|
324
|
+
x2 = f(x);
|
|
325
|
+
}
|
|
326
|
+
return x2;
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Solve using iteration; terminate when error is below err or the maximum
|
|
330
|
+
* number of iterations is reached. Used in Euler's equation(see og.orbit) solving.
|
|
331
|
+
* @function
|
|
332
|
+
* @param {(x: number) => number} f - Equation.
|
|
333
|
+
* @param {number} x0 - First approximation.
|
|
334
|
+
* @param {number} err - Maximal accepted error value.
|
|
335
|
+
* @param {number} maxIter - Maximum iterations.
|
|
336
|
+
* @returns {number} -
|
|
337
|
+
*/
|
|
338
|
+
export function solve_iteration(f, x0, err, maxIter = 50) {
|
|
339
|
+
let x = 0;
|
|
340
|
+
let x2 = x0;
|
|
341
|
+
for (let i = 0; i < maxIter; i++) {
|
|
342
|
+
x = x2;
|
|
343
|
+
x2 = f(x);
|
|
344
|
+
if (Math.abs(x2 - x) < err) {
|
|
345
|
+
return x2;
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
return x2;
|
|
349
|
+
}
|
|
350
|
+
/**
|
|
351
|
+
* Equation function.
|
|
352
|
+
* @callback equationCallback
|
|
353
|
+
* @param {number} x - Equation variable.
|
|
354
|
+
*/
|
|
355
|
+
/**
|
|
356
|
+
*
|
|
357
|
+
* @param a - First bearing angle
|
|
358
|
+
* @param b - Second bearing angle
|
|
359
|
+
* @returns {number}
|
|
360
|
+
*/
|
|
361
|
+
function getAngleDirection(a, b) {
|
|
362
|
+
let a_y = Math.cos(a), a_x = Math.sin(a), b_y = Math.cos(b), b_x = Math.sin(b);
|
|
363
|
+
let c = a_y * b_x - b_y * a_x, d = a_x * b_x + a_y * b_y;
|
|
364
|
+
if (c > 0.0) {
|
|
365
|
+
return Math.acos(d);
|
|
366
|
+
}
|
|
367
|
+
return -Math.acos(d);
|
|
368
|
+
}
|
|
369
|
+
/**
|
|
370
|
+
* Returns angle between two azimuths
|
|
371
|
+
* @param {number} a - First azimuth angle
|
|
372
|
+
* @param {number} b - Second azimuth angle
|
|
373
|
+
* @returns {number}
|
|
374
|
+
*/
|
|
375
|
+
export function getAngleBetweenAzimuths(a, b) {
|
|
376
|
+
a = zeroTwoPI(a);
|
|
377
|
+
b = zeroTwoPI(b);
|
|
378
|
+
return ((((a - b) % 360) + 360 + 180) % 360) - 180;
|
|
379
|
+
}
|