@openglobus/og 0.18.0 → 0.18.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -8
- 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/js/Clock.d.ts +106 -0
- package/{src/Clock.ts → lib/js/Clock.js} +31 -126
- package/lib/js/Deferred.d.ts +6 -0
- package/lib/js/Deferred.js +13 -0
- package/lib/js/Events.d.ts +90 -0
- package/{src/Events.ts → lib/js/Events.js} +29 -84
- package/lib/js/Extent.d.ts +145 -0
- package/{src/Extent.ts → lib/js/Extent.js} +74 -120
- package/lib/js/Globe.d.ts +132 -0
- package/{src/Globe.ts → lib/js/Globe.js} +61 -159
- package/lib/js/ImageCanvas.d.ts +128 -0
- package/{src/ImageCanvas.ts → lib/js/ImageCanvas.js} +24 -65
- package/lib/js/Lock.d.ts +15 -0
- package/{src/Lock.ts → lib/js/Lock.js} +7 -21
- package/lib/js/LonLat.d.ts +128 -0
- package/{src/LonLat.ts → lib/js/LonLat.js} +44 -75
- package/lib/js/Object3d.d.ts +49 -0
- package/{src/Object3d.ts → lib/js/Object3d.js} +64 -184
- package/lib/js/Popup.d.ts +46 -0
- package/{src/Popup.ts → lib/js/Popup.js} +42 -110
- package/lib/js/QueueArray.d.ts +16 -0
- package/{src/QueueArray.ts → lib/js/QueueArray.js} +12 -25
- package/lib/js/Rectangle.d.ts +76 -0
- package/{src/Rectangle.ts → lib/js/Rectangle.js} +12 -50
- package/lib/js/Stack.d.ts +20 -0
- package/{src/Stack.ts → lib/js/Stack.js} +13 -29
- package/lib/js/astro/astro.d.ts +39 -0
- package/{src/astro/astro.ts → lib/js/astro/astro.js} +2 -8
- package/lib/js/astro/earth.d.ts +8 -0
- package/{src/astro/earth.ts → lib/js/astro/earth.js} +3 -39
- package/lib/js/astro/jd.d.ts +234 -0
- package/{src/astro/jd.ts → lib/js/astro/jd.js} +55 -134
- package/lib/js/astro/orbit.d.ts +5 -0
- package/{src/astro/orbit.ts → lib/js/astro/orbit.js} +26 -39
- package/lib/js/astro/rotation.d.ts +2 -0
- package/{src/astro/rotation.ts → lib/js/astro/rotation.js} +2 -11
- package/lib/js/bv/Box.d.ts +32 -0
- package/{src/bv/Box.ts → lib/js/bv/Box.js} +7 -35
- package/lib/js/bv/Sphere.d.ts +37 -0
- package/{src/bv/Sphere.ts → lib/js/bv/Sphere.js} +6 -34
- package/{src/bv/index.ts → lib/js/bv/index.d.ts} +0 -1
- package/lib/js/bv/index.js +3 -0
- package/lib/js/camera/Camera.d.ts +314 -0
- package/{src/camera/Camera.ts → lib/js/camera/Camera.js} +77 -326
- package/lib/js/camera/Frustum.d.ts +139 -0
- package/{src/camera/Frustum.ts → lib/js/camera/Frustum.js} +66 -185
- package/lib/js/camera/PlanetCamera.d.ts +234 -0
- package/{src/camera/PlanetCamera.ts → lib/js/camera/PlanetCamera.js} +65 -338
- package/{src/camera/index.ts → lib/js/camera/index.d.ts} +0 -1
- package/lib/js/camera/index.js +3 -0
- package/lib/js/cons.d.ts +40 -0
- package/{src/cons.ts → lib/js/cons.js} +10 -22
- package/lib/js/control/Atmosphere.d.ts +16 -0
- package/{src/control/Atmosphere.ts → lib/js/control/Atmosphere.js} +33 -86
- package/lib/js/control/CompassButton.d.ts +16 -0
- package/{src/control/CompassButton.ts → lib/js/control/CompassButton.js} +18 -43
- package/lib/js/control/Control.d.ts +100 -0
- package/{src/control/Control.ts → lib/js/control/Control.js} +22 -89
- package/lib/js/control/DebugInfo.d.ts +25 -0
- package/{src/control/DebugInfo.ts → lib/js/control/DebugInfo.js} +38 -84
- package/lib/js/control/DrawingSwitcher.d.ts +13 -0
- package/{src/control/DrawingSwitcher.ts → lib/js/control/DrawingSwitcher.js} +13 -30
- package/lib/js/control/EarthCoordinates.d.ts +41 -0
- package/{src/control/EarthCoordinates.ts → lib/js/control/EarthCoordinates.js} +58 -119
- package/lib/js/control/EarthNavigation.d.ts +50 -0
- package/{src/control/EarthNavigation.ts → lib/js/control/EarthNavigation.js} +70 -161
- package/lib/js/control/GeoImageDragControl.d.ts +22 -0
- package/{src/control/GeoImageDragControl.ts → lib/js/control/GeoImageDragControl.js} +26 -49
- package/lib/js/control/KeyboardNavigation.d.ts +28 -0
- package/{src/control/KeyboardNavigation.ts → lib/js/control/KeyboardNavigation.js} +67 -92
- package/lib/js/control/LayerAnimation.d.ts +71 -0
- package/{src/control/LayerAnimation.ts → lib/js/control/LayerAnimation.js} +82 -162
- package/lib/js/control/LayerSwitcher.d.ts +21 -0
- package/{src/control/LayerSwitcher.ts → lib/js/control/LayerSwitcher.js} +16 -41
- package/lib/js/control/Lighting.d.ts +49 -0
- package/{src/control/Lighting.ts → lib/js/control/Lighting.js} +106 -219
- package/lib/js/control/MouseNavigation.d.ts +62 -0
- package/{src/control/MouseNavigation.ts → lib/js/control/MouseNavigation.js} +105 -211
- 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/{src/control/RulerSwitcher.ts → lib/js/control/RulerSwitcher.js} +13 -28
- 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/{src/control/SimpleNavigation.ts → lib/js/control/SimpleNavigation.js} +29 -51
- package/lib/js/control/SimpleSkyBackground.d.ts +15 -0
- package/{src/control/SimpleSkyBackground.ts → lib/js/control/SimpleSkyBackground.js} +21 -48
- package/lib/js/control/Sun.d.ts +33 -0
- package/{src/control/Sun.ts → lib/js/control/Sun.js} +34 -85
- 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/{src/control/TouchNavigation.ts → lib/js/control/TouchNavigation.js} +88 -193
- package/lib/js/control/ZoomControl.d.ts +27 -0
- package/{src/control/ZoomControl.ts → lib/js/control/ZoomControl.js} +25 -50
- package/lib/js/control/drawing/DrawingControl.d.ts +12 -0
- package/{src/control/drawing/DrawingControl.ts → lib/js/control/drawing/DrawingControl.js} +10 -20
- package/lib/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
- package/{src/control/drawing/LineStringDrawingScene.ts → lib/js/control/drawing/LineStringDrawingScene.js} +28 -85
- package/lib/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
- package/{src/control/drawing/PolygonDrawingScene.ts → lib/js/control/drawing/PolygonDrawingScene.js} +190 -388
- package/lib/js/control/elevationProfile/ElevationProfile.d.ts +61 -0
- package/{src/control/elevationProfile/ElevationProfile.ts → lib/js/control/elevationProfile/ElevationProfile.js} +56 -148
- package/lib/js/control/heightRuler/HeightRuler.d.ts +7 -0
- package/{src/control/heightRuler/HeightRuler.ts → lib/js/control/heightRuler/HeightRuler.js} +4 -9
- package/lib/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
- package/{src/control/heightRuler/HeightRulerScene.ts → lib/js/control/heightRuler/HeightRulerScene.js} +47 -99
- package/lib/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
- package/{src/control/heightRuler/HeightRulerSwitcher.ts → lib/js/control/heightRuler/HeightRulerSwitcher.js} +2 -4
- package/{src/control/index.ts → lib/js/control/index.d.ts} +1 -18
- 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/{src/control/selection/Selection.ts → lib/js/control/selection/Selection.js} +15 -34
- package/lib/js/control/selection/SelectionScene.d.ts +44 -0
- package/{src/control/selection/SelectionScene.ts → lib/js/control/selection/SelectionScene.js} +26 -113
- package/lib/js/control/timeline/TimelineControl.d.ts +18 -0
- package/{src/control/timeline/TimelineControl.ts → lib/js/control/timeline/TimelineControl.js} +13 -43
- package/lib/js/control/timeline/TimelineModel.d.ts +41 -0
- package/{src/control/timeline/TimelineModel.ts → lib/js/control/timeline/TimelineModel.js} +26 -74
- package/lib/js/control/timeline/TimelineView.d.ts +85 -0
- package/{src/control/timeline/TimelineView.ts → lib/js/control/timeline/TimelineView.js} +133 -281
- 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/{src → lib/js}/control/visibleExtent/Segment.js +145 -698
- package/lib/js/control/visibleExtent/VisibleExtent.d.ts +5 -0
- package/{src → lib/js}/control/visibleExtent/VisibleExtent.js +1 -18
- package/lib/js/control/visibleExtent/drawnode.d.ts +7 -0
- package/{src/control/visibleExtent/drawnode.ts → lib/js/control/visibleExtent/drawnode.js} +1 -28
- package/lib/js/ellipsoid/Ellipsoid.d.ts +187 -0
- package/{src/ellipsoid/Ellipsoid.ts → lib/js/ellipsoid/Ellipsoid.js} +85 -267
- 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/{src/ellipsoid/wgs84.ts → lib/js/ellipsoid/wgs84.js} +1 -2
- package/lib/js/entity/BaseBillboard.d.ts +222 -0
- package/{src/entity/BaseBillboard.ts → lib/js/entity/BaseBillboard.js} +48 -165
- package/lib/js/entity/BaseBillboardHandler.d.ts +81 -0
- package/{src/entity/BaseBillboardHandler.ts → lib/js/entity/BaseBillboardHandler.js} +139 -365
- package/lib/js/entity/Billboard.d.ts +113 -0
- package/{src/entity/Billboard.ts → lib/js/entity/Billboard.js} +19 -83
- package/lib/js/entity/BillboardHandler.d.ts +15 -0
- package/{src/entity/BillboardHandler.ts → lib/js/entity/BillboardHandler.js} +27 -59
- package/lib/js/entity/Entity.d.ts +354 -0
- package/{src/entity/Entity.ts → lib/js/entity/Entity.js} +102 -374
- package/lib/js/entity/EntityCollection.d.ts +363 -0
- package/{src/entity/EntityCollection.ts → lib/js/entity/EntityCollection.js} +57 -359
- package/lib/js/entity/GeoObject.d.ts +138 -0
- package/{src/entity/GeoObject.ts → lib/js/entity/GeoObject.js} +41 -146
- package/lib/js/entity/GeoObjectHandler.d.ts +99 -0
- package/{src/entity/GeoObjectHandler.ts → lib/js/entity/GeoObjectHandler.js} +162 -423
- 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/{src/entity/GeometryHandler.ts → lib/js/entity/GeometryHandler.js} +162 -657
- package/lib/js/entity/Label.d.ts +207 -0
- package/{src/entity/Label.ts → lib/js/entity/Label.js} +63 -165
- package/lib/js/entity/LabelHandler.d.ts +65 -0
- package/{src/entity/LabelHandler.ts → lib/js/entity/LabelHandler.js} +175 -408
- package/lib/js/entity/LabelWorker.d.ts +15 -0
- package/{src/entity/LabelWorker.ts → lib/js/entity/LabelWorker.js} +24 -45
- package/lib/js/entity/PointCloud.d.ts +179 -0
- package/{src/entity/PointCloud.ts → lib/js/entity/PointCloud.js} +65 -265
- package/lib/js/entity/PointCloudHandler.d.ts +42 -0
- package/{src/entity/PointCloudHandler.ts → lib/js/entity/PointCloudHandler.js} +19 -62
- package/lib/js/entity/Polyline.d.ts +337 -0
- package/{src/entity/Polyline.ts → lib/js/entity/Polyline.js} +289 -924
- package/lib/js/entity/PolylineHandler.d.ts +22 -0
- package/{src/entity/PolylineHandler.ts → lib/js/entity/PolylineHandler.js} +12 -37
- package/lib/js/entity/Ray.d.ts +133 -0
- package/{src/entity/Ray.ts → lib/js/entity/Ray.js} +26 -146
- package/lib/js/entity/RayHandler.d.ts +70 -0
- package/{src/entity/RayHandler.ts → lib/js/entity/RayHandler.js} +102 -342
- package/lib/js/entity/Strip.d.ts +127 -0
- package/{src/entity/Strip.ts → lib/js/entity/Strip.js} +102 -372
- package/lib/js/entity/StripHandler.d.ts +42 -0
- package/{src/entity/StripHandler.ts → lib/js/entity/StripHandler.js} +22 -74
- package/{src/entity/index.ts → lib/js/entity/index.d.ts} +1 -2
- 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/{src/input/KeyboardHandler.ts → lib/js/input/KeyboardHandler.js} +45 -84
- package/lib/js/input/MouseHandler.d.ts +16 -0
- package/{src/input/MouseHandler.ts → lib/js/input/MouseHandler.js} +12 -36
- package/lib/js/input/TouchHandler.d.ts +11 -0
- package/{src/input/TouchHandler.ts → lib/js/input/TouchHandler.js} +11 -23
- package/lib/js/input/input.d.ts +3 -0
- package/{src/input/input.ts → lib/js/input/input.js} +1 -1
- package/lib/js/layer/BaseGeoImage.d.ts +145 -0
- package/{src/layer/BaseGeoImage.ts → lib/js/layer/BaseGeoImage.js} +70 -235
- package/lib/js/layer/CanvasTiles.d.ts +103 -0
- package/{src/layer/CanvasTiles.ts → lib/js/layer/CanvasTiles.js} +54 -146
- package/lib/js/layer/GeoImage.d.ts +61 -0
- package/{src/layer/GeoImage.ts → lib/js/layer/GeoImage.js} +24 -54
- 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/{src/layer/GeoVideo.ts → lib/js/layer/GeoVideo.js} +31 -61
- package/lib/js/layer/KML.d.ts +72 -0
- package/{src/layer/KML.ts → lib/js/layer/KML.js} +94 -138
- package/lib/js/layer/Layer.d.ts +401 -0
- package/{src/layer/Layer.ts → lib/js/layer/Layer.js} +92 -443
- package/lib/js/layer/Material.d.ts +34 -0
- package/{src/layer/Material.ts → lib/js/layer/Material.js} +9 -43
- package/lib/js/layer/Vector.d.ts +243 -0
- package/{src/layer/Vector.ts → lib/js/layer/Vector.js} +155 -426
- package/lib/js/layer/WMS.d.ts +75 -0
- package/{src/layer/WMS.ts → lib/js/layer/WMS.js} +18 -100
- package/lib/js/layer/XYZ.d.ts +149 -0
- package/{src/layer/XYZ.ts → lib/js/layer/XYZ.js} +71 -171
- 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/{src/light/LightSource.ts → lib/js/light/LightSource.js} +22 -131
- package/lib/js/math/Line2.d.ts +11 -0
- package/{src/math/Line2.ts → lib/js/math/Line2.js} +5 -15
- 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/{src/math/Mat3.ts → lib/js/math/Mat3.js} +22 -51
- package/lib/js/math/Mat4.d.ts +195 -0
- package/{src/math/Mat4.ts → lib/js/math/Mat4.js} +53 -219
- package/lib/js/math/Plane.d.ts +20 -0
- package/{src/math/Plane.ts → lib/js/math/Plane.js} +26 -40
- package/lib/js/math/Quat.d.ts +373 -0
- package/{src/math/Quat.ts → lib/js/math/Quat.js} +106 -319
- package/lib/js/math/Ray.d.ts +76 -0
- package/{src/math/Ray.ts → lib/js/math/Ray.js} +21 -66
- package/lib/js/math/Vec2.d.ts +310 -0
- package/{src/math/Vec2.ts → lib/js/math/Vec2.js} +55 -121
- package/lib/js/math/Vec3.d.ts +472 -0
- package/{src/math/Vec3.ts → lib/js/math/Vec3.js} +103 -236
- package/lib/js/math/Vec4.d.ts +163 -0
- package/{src/math/Vec4.ts → lib/js/math/Vec4.js} +23 -79
- package/lib/js/math/coder.d.ts +51 -0
- package/{src/math/coder.ts → lib/js/math/coder.js} +14 -20
- 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/{src/math.ts → lib/js/math.js} +37 -85
- package/lib/js/mercator.d.ts +92 -0
- package/{src/mercator.ts → lib/js/mercator.js} +13 -37
- package/lib/js/proj/EPSG3857.d.ts +9 -0
- package/{src/proj/EPSG3857.ts → lib/js/proj/EPSG3857.js} +0 -2
- package/lib/js/proj/EPSG4326.d.ts +9 -0
- package/{src/proj/EPSG4326.ts → lib/js/proj/EPSG4326.js} +0 -2
- package/lib/js/proj/Proj.d.ts +43 -0
- package/{src/proj/Proj.ts → lib/js/proj/Proj.js} +4 -29
- 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/{src/quadTree/EntityCollectionNode.ts → lib/js/quadTree/EntityCollectionNode.js} +83 -150
- 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/{src/quadTree/Node.ts → lib/js/quadTree/Node.js} +140 -357
- package/lib/js/quadTree/QuadTreeStrategy.d.ts +25 -0
- package/{src/quadTree/QuadTreeStrategy.ts → lib/js/quadTree/QuadTreeStrategy.js} +13 -44
- 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/{src/quadTree/quadTree.ts → lib/js/quadTree/quadTree.js} +0 -9
- package/lib/js/renderer/Renderer.d.ts +320 -0
- package/{src/renderer/Renderer.ts → lib/js/renderer/Renderer.js} +265 -622
- package/lib/js/renderer/RendererEvents.d.ts +239 -0
- package/{src/renderer/RendererEvents.ts → lib/js/renderer/RendererEvents.js} +158 -472
- 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/{src/scene/BaseNode.ts → lib/js/scene/BaseNode.js} +11 -57
- package/lib/js/scene/Planet.d.ts +623 -0
- package/{src/scene/Planet.ts → lib/js/scene/Planet.js} +257 -937
- package/lib/js/scene/RenderNode.d.ts +150 -0
- package/{src/scene/RenderNode.ts → lib/js/scene/RenderNode.js} +33 -138
- package/lib/js/scene/SkyBox.d.ts +13 -0
- package/{src/scene/SkyBox.ts → lib/js/scene/SkyBox.js} +16 -37
- package/{src/scene/index.ts → lib/js/scene/index.d.ts} +0 -1
- package/lib/js/scene/index.js +5 -0
- package/lib/js/segment/Segment.d.ts +278 -0
- package/{src/segment/Segment.ts → lib/js/segment/Segment.js} +242 -913
- package/lib/js/segment/SegmentLonLat.d.ts +48 -0
- package/{src/segment/SegmentLonLat.ts → lib/js/segment/SegmentLonLat.js} +58 -132
- 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/{src/segment/Slice.ts → lib/js/segment/Slice.js} +4 -22
- package/lib/js/segment/segmentHelper.d.ts +18 -0
- package/{src/segment/segmentHelper.ts → lib/js/segment/segmentHelper.js} +30 -88
- package/lib/js/shaders/atmos.d.ts +4 -0
- package/{src/shaders/atmos.ts → lib/js/shaders/atmos.js} +8 -26
- package/lib/js/shaders/billboard.d.ts +3 -0
- package/{src/shaders/billboard.ts → lib/js/shaders/billboard.js} +9 -18
- package/lib/js/shaders/bloom.d.ts +2 -0
- package/{src/shaders/bloom.ts → lib/js/shaders/bloom.js} +5 -8
- package/lib/js/shaders/blur.d.ts +3 -0
- package/{src/shaders/blur.ts → lib/js/shaders/blur.js} +11 -19
- package/lib/js/shaders/depth.d.ts +2 -0
- package/{src/shaders/depth.ts → lib/js/shaders/depth.js} +3 -6
- package/lib/js/shaders/drawnode.d.ts +8 -0
- package/{src/shaders/drawnode.ts → lib/js/shaders/drawnode.js} +23 -75
- package/lib/js/shaders/geoObject.d.ts +3 -0
- package/{src/shaders/geoObject.ts → lib/js/shaders/geoObject.js} +51 -63
- package/lib/js/shaders/label.d.ts +4 -0
- package/{src/shaders/label.ts → lib/js/shaders/label.js} +12 -25
- package/lib/js/shaders/lumFilter.d.ts +2 -0
- package/{src/shaders/lumFilter.ts → lib/js/shaders/lumFilter.js} +4 -7
- package/lib/js/shaders/pickingMask.d.ts +2 -0
- package/{src/shaders/pickingMask.ts → lib/js/shaders/pickingMask.js} +5 -8
- package/lib/js/shaders/pointCloud.d.ts +2 -0
- package/{src/shaders/pointCloud.ts → lib/js/shaders/pointCloud.js} +4 -7
- package/lib/js/shaders/polyline.d.ts +3 -0
- package/{src/shaders/polyline.ts → lib/js/shaders/polyline.js} +7 -22
- package/lib/js/shaders/ray.d.ts +2 -0
- package/{src/shaders/ray.ts → lib/js/shaders/ray.js} +4 -7
- package/lib/js/shaders/screenFrame.d.ts +2 -0
- package/{src/shaders/screenFrame.ts → lib/js/shaders/screenFrame.js} +5 -8
- package/lib/js/shaders/skybox.d.ts +2 -0
- package/{src/shaders/skybox.ts → lib/js/shaders/skybox.js} +10 -13
- package/lib/js/shaders/toneMapping.d.ts +2 -0
- package/{src/shaders/toneMapping.ts → lib/js/shaders/toneMapping.js} +5 -8
- package/lib/js/shaders/utils.d.ts +1 -0
- package/{src/shaders/utils.ts → lib/js/shaders/utils.js} +1 -1
- package/lib/js/terrain/BilTerrain.d.ts +18 -0
- package/{src/terrain/BilTerrain.ts → lib/js/terrain/BilTerrain.js} +21 -118
- package/lib/js/terrain/EmptyTerrain.d.ts +106 -0
- package/{src/terrain/EmptyTerrain.ts → lib/js/terrain/EmptyTerrain.js} +20 -144
- 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/{src/terrain/GlobusTerrain.ts → lib/js/terrain/GlobusTerrain.js} +84 -241
- package/lib/js/terrain/MapboxTerrain.d.ts +21 -0
- package/{src/terrain/MapboxTerrain.ts → lib/js/terrain/MapboxTerrain.js} +46 -215
- package/{src/terrain/index.ts → lib/js/terrain/index.d.ts} +0 -1
- 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/{src/ui/View.ts → lib/js/ui/View.js} +31 -77
- package/lib/js/ui/icons.d.ts +1 -0
- package/{src/ui/icons.ts → lib/js/ui/icons.js} +1 -1
- package/lib/js/utils/BaseWorker.d.ts +14 -0
- package/{src/utils/BaseWorker.ts → lib/js/utils/BaseWorker.js} +15 -28
- package/lib/js/utils/FontAtlas.d.ts +82 -0
- package/{src/utils/FontAtlas.ts → lib/js/utils/FontAtlas.js} +46 -182
- package/lib/js/utils/GeoImageCreator.d.ts +34 -0
- package/{src/utils/GeoImageCreator.ts → lib/js/utils/GeoImageCreator.js} +34 -91
- package/lib/js/utils/ImagesCacheManager.d.ts +22 -0
- package/{src/utils/ImagesCacheManager.ts → lib/js/utils/ImagesCacheManager.js} +16 -38
- 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/{src/utils/NormalMapCreator.ts → lib/js/utils/NormalMapCreator.js} +64 -195
- package/lib/js/utils/PlainSegmentWorker.d.ts +24 -0
- package/{src/utils/PlainSegmentWorker.ts → lib/js/utils/PlainSegmentWorker.js} +24 -56
- package/lib/js/utils/TerrainWorker.d.ts +28 -0
- package/{src/utils/TerrainWorker.ts → lib/js/utils/TerrainWorker.js} +19 -56
- package/lib/js/utils/TextureAtlas.d.ts +113 -0
- package/{src/utils/TextureAtlas.ts → lib/js/utils/TextureAtlas.js} +40 -131
- package/lib/js/utils/VectorTileCreator.d.ts +18 -0
- package/{src/utils/VectorTileCreator.ts → lib/js/utils/VectorTileCreator.js} +61 -147
- package/lib/js/utils/colorTable.d.ts +3 -0
- package/{src/utils/colorTable.ts → lib/js/utils/colorTable.js} +2 -2
- package/lib/js/utils/earcut.d.ts +7 -0
- package/{src/utils/earcut.ts → lib/js/utils/earcut.js} +95 -223
- package/lib/js/utils/objParser.d.ts +24 -0
- package/{src/utils/objParser.ts → lib/js/utils/objParser.js} +38 -93
- package/lib/js/utils/shared.d.ts +267 -0
- package/{src/utils/shared.ts → lib/js/utils/shared.js} +185 -342
- 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/{src/webgl/BaseFramebuffer.ts → lib/js/webgl/BaseFramebuffer.js} +22 -59
- package/lib/js/webgl/Framebuffer.d.ts +69 -0
- package/{src/webgl/Framebuffer.ts → lib/js/webgl/Framebuffer.js} +30 -87
- package/lib/js/webgl/Handler.d.ts +473 -0
- package/{src/webgl/Handler.ts → lib/js/webgl/Handler.js} +175 -586
- 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/{src/webgl/Program.ts → lib/js/webgl/Program.js} +73 -210
- package/lib/js/webgl/ProgramController.d.ts +86 -0
- package/{src/webgl/ProgramController.ts → lib/js/webgl/ProgramController.js} +11 -45
- package/{src/webgl/index.ts → lib/js/webgl/index.d.ts} +1 -8
- package/lib/js/webgl/index.js +6 -0
- package/lib/js/webgl/types.d.ts +9 -0
- package/{src/webgl/types.ts → lib/js/webgl/types.js} +5 -8
- package/lib/js/webgl/variableHandlers.d.ts +22 -0
- package/lib/js/webgl/variableHandlers.js +78 -0
- package/package.json +23 -34
- package/dist/@openglobus/og.esm.js +0 -2
- package/dist/@openglobus/og.esm.js.map +0 -1
- package/dist/@openglobus/og.umd.js +0 -2
- package/dist/@openglobus/og.umd.js.map +0 -1
- package/src/Deferred.ts +0 -17
- package/src/control/MouseWheelZoomControl.ts +0 -269
- package/src/control/ScaleControl.ts +0 -131
- package/src/control/SegmentBoundVisualization.ts +0 -50
- package/src/control/ShowFps.ts +0 -28
- package/src/control/ToggleWireframe.ts +0 -35
- package/src/control/ruler/Ruler.ts +0 -35
- package/src/control/ruler/RulerScene.ts +0 -437
- package/src/control/timeline/timelineUtils.ts +0 -133
- package/src/ellipsoid/index.ts +0 -4
- package/src/entity/Geometry.ts +0 -486
- package/src/index.ts +0 -173
- package/src/layer/GeoTexture2d.ts +0 -56
- package/src/layer/index.ts +0 -12
- package/src/math/Line3.ts +0 -162
- package/src/math/index.ts +0 -26
- package/src/quadTree/EPSG4326QuadTreeStrategy.ts +0 -24
- package/src/quadTree/EarthQuadTreeStrategy.ts +0 -28
- package/src/quadTree/MarsQuadTreeStrategy.ts +0 -25
- package/src/quadTree/Wgs84QuadTreeStrategy.ts +0 -22
- package/src/quadTree/index.ts +0 -14
- package/src/scene/Axes.ts +0 -78
- package/src/segment/SegmentLonLatWgs84.ts +0 -33
- package/src/terrain/Geoid.ts +0 -273
- package/src/ui/Button.ts +0 -121
- package/src/ui/ButtonGroup.ts +0 -63
- package/src/ui/Dialog.ts +0 -244
- package/src/ui/Slider.ts +0 -188
- package/src/ui/ToggleButton.ts +0 -68
- package/src/utils/Loader.ts +0 -247
- package/src/utils/units.ts +0 -78
- package/src/webgl/Multisample.ts +0 -153
- package/src/webgl/variableHandlers.ts +0 -114
- /package/{dist → lib}/@openglobus/og.css +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.js +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.json +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.cfg +0 -0
- /package/{dist → lib}/@openglobus/res/fonts/arial.ttf.png +0 -0
- /package/{dist → lib}/@openglobus/res/night-4326.png +0 -0
- /package/{dist → lib}/@openglobus/res/night.png +0 -0
- /package/{dist → lib}/@openglobus/res/spec.png +0 -0
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import {Vec3} from "./Vec3";
|
|
2
|
-
|
|
3
|
-
export type NumberArray2 = [number, number];
|
|
4
|
-
|
|
1
|
+
import { Vec3 } from "./Vec3";
|
|
5
2
|
/**
|
|
6
3
|
* Class represents a 3d vector.
|
|
7
4
|
* @class
|
|
@@ -9,49 +6,30 @@ export type NumberArray2 = [number, number];
|
|
|
9
6
|
* @param {number} [y] - Second value.
|
|
10
7
|
*/
|
|
11
8
|
export class Vec2 {
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* @public
|
|
15
|
-
* @type {number}
|
|
16
|
-
*/
|
|
17
|
-
public x: number;
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @public
|
|
21
|
-
* @type {number}
|
|
22
|
-
*/
|
|
23
|
-
public y: number;
|
|
24
|
-
|
|
25
|
-
constructor(x: number = 0.0, y: number = 0.0) {
|
|
9
|
+
constructor(x = 0.0, y = 0.0) {
|
|
26
10
|
this.x = x;
|
|
27
11
|
this.y = y;
|
|
28
12
|
}
|
|
29
|
-
|
|
30
13
|
/** @const */
|
|
31
|
-
static get UP()
|
|
14
|
+
static get UP() {
|
|
32
15
|
return new Vec2(0, 1);
|
|
33
16
|
}
|
|
34
|
-
|
|
35
17
|
/** @const */
|
|
36
|
-
static get DOWN()
|
|
18
|
+
static get DOWN() {
|
|
37
19
|
return new Vec2(0, -1);
|
|
38
20
|
}
|
|
39
|
-
|
|
40
21
|
/** @const */
|
|
41
|
-
static get RIGHT()
|
|
22
|
+
static get RIGHT() {
|
|
42
23
|
return new Vec2(1, 0);
|
|
43
24
|
}
|
|
44
|
-
|
|
45
25
|
/** @const */
|
|
46
|
-
static get LEFT()
|
|
26
|
+
static get LEFT() {
|
|
47
27
|
return new Vec2(-1, 0);
|
|
48
28
|
}
|
|
49
|
-
|
|
50
29
|
/** @const */
|
|
51
|
-
static get ZERO()
|
|
30
|
+
static get ZERO() {
|
|
52
31
|
return new Vec2();
|
|
53
32
|
}
|
|
54
|
-
|
|
55
33
|
/**
|
|
56
34
|
* Returns summary vector.
|
|
57
35
|
* @static
|
|
@@ -59,12 +37,11 @@ export class Vec2 {
|
|
|
59
37
|
* @param {Vec2} b - Second vector.
|
|
60
38
|
* @returns {Vec2} - Summary vector.
|
|
61
39
|
*/
|
|
62
|
-
static add(a
|
|
40
|
+
static add(a, b) {
|
|
63
41
|
const res = new Vec2(a.x, a.y);
|
|
64
42
|
res.addA(b);
|
|
65
43
|
return res;
|
|
66
44
|
}
|
|
67
|
-
|
|
68
45
|
/**
|
|
69
46
|
* Returns two vectors subtraction.
|
|
70
47
|
* @static
|
|
@@ -72,12 +49,11 @@ export class Vec2 {
|
|
|
72
49
|
* @param {Vec2} b - Second vector.
|
|
73
50
|
* @returns {Vec2} - Vectors subtraction.
|
|
74
51
|
*/
|
|
75
|
-
static sub(a
|
|
52
|
+
static sub(a, b) {
|
|
76
53
|
var res = new Vec2(a.x, a.y);
|
|
77
54
|
res.subA(b);
|
|
78
55
|
return res;
|
|
79
56
|
}
|
|
80
|
-
|
|
81
57
|
/**
|
|
82
58
|
* Returns scaled vector.
|
|
83
59
|
* @static
|
|
@@ -85,12 +61,11 @@ export class Vec2 {
|
|
|
85
61
|
* @param {number} scale - Scale value.
|
|
86
62
|
* @returns {Vec2}
|
|
87
63
|
*/
|
|
88
|
-
static scale(a
|
|
64
|
+
static scale(a, scale) {
|
|
89
65
|
let res = new Vec2(a.x, a.y);
|
|
90
66
|
res.scale(scale);
|
|
91
67
|
return res;
|
|
92
68
|
}
|
|
93
|
-
|
|
94
69
|
/**
|
|
95
70
|
* Returns two vectors production.
|
|
96
71
|
* @static
|
|
@@ -98,12 +73,11 @@ export class Vec2 {
|
|
|
98
73
|
* @param {Vec2} b - Second vector.
|
|
99
74
|
* @returns {Vec2}
|
|
100
75
|
*/
|
|
101
|
-
static mul(a
|
|
76
|
+
static mul(a, b) {
|
|
102
77
|
let res = new Vec2(a.x, a.y);
|
|
103
78
|
res.mulA(b);
|
|
104
79
|
return res;
|
|
105
80
|
}
|
|
106
|
-
|
|
107
81
|
/**
|
|
108
82
|
* Returns vector components division product one to another.
|
|
109
83
|
* @static
|
|
@@ -111,12 +85,11 @@ export class Vec2 {
|
|
|
111
85
|
* @param {Vec2} b - Second vector.
|
|
112
86
|
* @returns {Vec2}
|
|
113
87
|
*/
|
|
114
|
-
static div(a
|
|
88
|
+
static div(a, b) {
|
|
115
89
|
let res = new Vec2(a.x, a.y);
|
|
116
90
|
res.divA(b);
|
|
117
91
|
return res;
|
|
118
92
|
}
|
|
119
|
-
|
|
120
93
|
/**
|
|
121
94
|
* Get projection of the first vector to the second.
|
|
122
95
|
* @static
|
|
@@ -124,10 +97,9 @@ export class Vec2 {
|
|
|
124
97
|
* @param {Vec2} a - Second vector.
|
|
125
98
|
* @returns {Vec2}
|
|
126
99
|
*/
|
|
127
|
-
static proj_b_to_a(b
|
|
100
|
+
static proj_b_to_a(b, a) {
|
|
128
101
|
return a.scaleTo(a.dot(b) / a.dot(a));
|
|
129
102
|
}
|
|
130
|
-
|
|
131
103
|
/**
|
|
132
104
|
* Gets angle between two vectors.
|
|
133
105
|
* @static
|
|
@@ -135,10 +107,9 @@ export class Vec2 {
|
|
|
135
107
|
* @param {Vec2} b - Second vector.
|
|
136
108
|
* @returns {number}
|
|
137
109
|
*/
|
|
138
|
-
static angle(a
|
|
110
|
+
static angle(a, b) {
|
|
139
111
|
return Math.acos(a.dot(b) / Math.sqrt(a.length2() * b.length2()));
|
|
140
112
|
}
|
|
141
|
-
|
|
142
113
|
/**
|
|
143
114
|
* Makes vectors normalized and orthogonal to each other.
|
|
144
115
|
* @static
|
|
@@ -146,260 +117,231 @@ export class Vec2 {
|
|
|
146
117
|
* @param {Vec2} tangent - Tangent vector.
|
|
147
118
|
* @returns {Vec2}
|
|
148
119
|
*/
|
|
149
|
-
static orthoNormalize(normal
|
|
120
|
+
static orthoNormalize(normal, tangent) {
|
|
150
121
|
normal = normal.normal();
|
|
151
122
|
normal.scale(tangent.dot(normal));
|
|
152
123
|
return tangent.sub(normal).normalize();
|
|
153
124
|
}
|
|
154
|
-
|
|
155
125
|
/**
|
|
156
126
|
* Converts to 3d vector, third value is 0.0.
|
|
157
127
|
* @public
|
|
158
128
|
* @returns {Vec3}
|
|
159
129
|
*/
|
|
160
|
-
|
|
130
|
+
toVector3() {
|
|
161
131
|
return new Vec3(this.x, this.y, 0);
|
|
162
132
|
}
|
|
163
|
-
|
|
164
133
|
/**
|
|
165
134
|
* Returns clone vector.
|
|
166
135
|
* @public
|
|
167
136
|
* @returns {Vec2}
|
|
168
137
|
*/
|
|
169
|
-
|
|
138
|
+
clone() {
|
|
170
139
|
return new Vec2(this.x, this.y);
|
|
171
140
|
}
|
|
172
|
-
|
|
173
141
|
/**
|
|
174
142
|
* Compares with vector. Returns true if it equals another.
|
|
175
143
|
* @public
|
|
176
144
|
* @param {Vec2} p - Vector to compare.
|
|
177
145
|
* @returns {boolean}
|
|
178
146
|
*/
|
|
179
|
-
|
|
147
|
+
equal(p) {
|
|
180
148
|
return this.x === p.x && this.y === p.y;
|
|
181
149
|
}
|
|
182
|
-
|
|
183
150
|
/**
|
|
184
151
|
* Copy input vector's values.
|
|
185
152
|
* @param {Vec2} point2 - Vector to copy.
|
|
186
153
|
* @returns {Vec2}
|
|
187
154
|
*/
|
|
188
|
-
|
|
155
|
+
copy(point2) {
|
|
189
156
|
this.x = point2.x;
|
|
190
157
|
this.y = point2.y;
|
|
191
158
|
return this;
|
|
192
159
|
}
|
|
193
|
-
|
|
194
160
|
/**
|
|
195
161
|
* Gets vector's length.
|
|
196
162
|
* @public
|
|
197
163
|
* @returns {number}
|
|
198
164
|
*/
|
|
199
|
-
|
|
165
|
+
length() {
|
|
200
166
|
return Math.sqrt(this.x * this.x + this.y * this.y);
|
|
201
167
|
}
|
|
202
|
-
|
|
203
168
|
/**
|
|
204
169
|
* Returns squared vector's length.
|
|
205
170
|
* @public
|
|
206
171
|
* @returns {number}
|
|
207
172
|
*/
|
|
208
|
-
|
|
173
|
+
length2() {
|
|
209
174
|
return this.x * this.x + this.y * this.y;
|
|
210
175
|
}
|
|
211
|
-
|
|
212
176
|
/**
|
|
213
177
|
* Adds vector to the current.
|
|
214
178
|
* @public
|
|
215
179
|
* @param {Vec2}
|
|
216
180
|
* @returns {Vec2}
|
|
217
181
|
*/
|
|
218
|
-
|
|
182
|
+
addA(v) {
|
|
219
183
|
this.x += v.x;
|
|
220
184
|
this.y += v.y;
|
|
221
185
|
return this;
|
|
222
186
|
}
|
|
223
|
-
|
|
224
187
|
/**
|
|
225
188
|
* Summarize two vectors.
|
|
226
189
|
* @public
|
|
227
190
|
* @param {Vec2}
|
|
228
191
|
* @returns {Vec2}
|
|
229
192
|
*/
|
|
230
|
-
|
|
193
|
+
add(v) {
|
|
231
194
|
return new Vec2(this.x + v.x, this.y + v.y);
|
|
232
195
|
}
|
|
233
|
-
|
|
234
196
|
/**
|
|
235
197
|
* Subtract vector from the current where results saved on the current instance.
|
|
236
198
|
* @public
|
|
237
199
|
* @param {Vec2} v - Subtract vector.
|
|
238
200
|
* @returns {Vec2}
|
|
239
201
|
*/
|
|
240
|
-
|
|
202
|
+
subA(v) {
|
|
241
203
|
this.x -= v.x;
|
|
242
204
|
this.y -= v.y;
|
|
243
205
|
return this;
|
|
244
206
|
}
|
|
245
|
-
|
|
246
207
|
/**
|
|
247
208
|
* Subtract vector from the current.
|
|
248
209
|
* @public
|
|
249
210
|
* @param {Vec2} v - Subtract vector.
|
|
250
211
|
* @returns {Vec2}
|
|
251
212
|
*/
|
|
252
|
-
|
|
213
|
+
sub(v) {
|
|
253
214
|
return new Vec2(this.x - v.x, this.y - v.y);
|
|
254
215
|
}
|
|
255
|
-
|
|
256
216
|
/**
|
|
257
217
|
* Scale current vector.
|
|
258
218
|
* @public
|
|
259
219
|
* @param {number} scale - Scale value.
|
|
260
220
|
* @returns {Vec2}
|
|
261
221
|
*/
|
|
262
|
-
|
|
222
|
+
scale(scale) {
|
|
263
223
|
this.x *= scale;
|
|
264
224
|
this.y *= scale;
|
|
265
225
|
return this;
|
|
266
226
|
}
|
|
267
|
-
|
|
268
227
|
/**
|
|
269
228
|
* Scale current vector to another instance.
|
|
270
229
|
* @public
|
|
271
230
|
* @param {number} scale - Scale value.
|
|
272
231
|
* @returns {Vec2}
|
|
273
232
|
*/
|
|
274
|
-
|
|
233
|
+
scaleTo(scale) {
|
|
275
234
|
return new Vec2(this.x * scale, this.y * scale);
|
|
276
235
|
}
|
|
277
|
-
|
|
278
236
|
/**
|
|
279
237
|
* Multiply current vector object to another and store result in the current instance.
|
|
280
238
|
* @public
|
|
281
239
|
* @param {Vec2} vec - Multiply vector.
|
|
282
240
|
* @returns {Vec2}
|
|
283
241
|
*/
|
|
284
|
-
|
|
242
|
+
mulA(vec) {
|
|
285
243
|
this.x *= vec.x;
|
|
286
244
|
this.y *= vec.y;
|
|
287
245
|
return this;
|
|
288
246
|
}
|
|
289
|
-
|
|
290
247
|
/**
|
|
291
248
|
* Multiply current vector object to another and returns new vector instance.
|
|
292
249
|
* @public
|
|
293
250
|
* @param {Vec2} vec - Multiply vector.
|
|
294
251
|
* @returns {Vec2}
|
|
295
252
|
*/
|
|
296
|
-
|
|
253
|
+
mul(vec) {
|
|
297
254
|
return new Vec2(this.x * vec.x, this.y * vec.y);
|
|
298
255
|
}
|
|
299
|
-
|
|
300
256
|
/**
|
|
301
257
|
* Divide current vector's components to another. Results stores in the current vector object.
|
|
302
258
|
* @public
|
|
303
259
|
* @param {Vec2}
|
|
304
260
|
* @returns {Vec2}
|
|
305
261
|
*/
|
|
306
|
-
|
|
262
|
+
divA(vec) {
|
|
307
263
|
this.x /= vec.x;
|
|
308
264
|
this.y /= vec.y;
|
|
309
265
|
return this;
|
|
310
266
|
}
|
|
311
|
-
|
|
312
267
|
/**
|
|
313
268
|
* Gets vectors dot production.
|
|
314
269
|
* @public
|
|
315
270
|
* @param {Vec2} v - Another vector.
|
|
316
271
|
* @returns {number}
|
|
317
272
|
*/
|
|
318
|
-
|
|
273
|
+
dot(v) {
|
|
319
274
|
return v.x * this.x + v.y * this.y;
|
|
320
275
|
}
|
|
321
|
-
|
|
322
276
|
/**
|
|
323
277
|
* Gets vectors dot production.
|
|
324
278
|
* @public
|
|
325
279
|
* @param {Array.<number>} arr - Array vector. (exactly 2 entries)
|
|
326
280
|
* @returns {number}
|
|
327
281
|
*/
|
|
328
|
-
|
|
282
|
+
dotArr(arr) {
|
|
329
283
|
return arr[0] * this.x + arr[1] * this.y;
|
|
330
284
|
}
|
|
331
|
-
|
|
332
285
|
/**
|
|
333
286
|
* Gets vectors cross production.
|
|
334
287
|
* @public
|
|
335
288
|
* @param {Vec2} v - Another vector.
|
|
336
289
|
* @returns {number}
|
|
337
290
|
*/
|
|
338
|
-
|
|
291
|
+
cross(v) {
|
|
339
292
|
return this.x * v.y - this.y * v.x;
|
|
340
293
|
}
|
|
341
|
-
|
|
342
294
|
/**
|
|
343
295
|
* Sets vector to zero.
|
|
344
296
|
* @public
|
|
345
297
|
* @returns {Vec2}
|
|
346
298
|
*/
|
|
347
|
-
|
|
299
|
+
clear() {
|
|
348
300
|
this.x = this.y = 0;
|
|
349
301
|
return this;
|
|
350
302
|
}
|
|
351
|
-
|
|
352
303
|
/**
|
|
353
304
|
* Returns normalized vector.
|
|
354
305
|
* @public
|
|
355
306
|
* @returns {Vec2}
|
|
356
307
|
*/
|
|
357
|
-
|
|
308
|
+
normal() {
|
|
358
309
|
let res = new Vec2();
|
|
359
310
|
res.copy(this);
|
|
360
|
-
|
|
361
311
|
let length = 1.0 / res.length();
|
|
362
|
-
|
|
363
312
|
res.x *= length;
|
|
364
313
|
res.y *= length;
|
|
365
|
-
|
|
366
314
|
return res;
|
|
367
315
|
}
|
|
368
|
-
|
|
369
316
|
/**
|
|
370
317
|
* Normalize current vector.
|
|
371
318
|
* @public
|
|
372
319
|
* @returns {Vec2}
|
|
373
320
|
*/
|
|
374
|
-
|
|
321
|
+
normalize() {
|
|
375
322
|
let length = 1.0 / this.length();
|
|
376
|
-
|
|
377
323
|
this.x *= length;
|
|
378
324
|
this.y *= length;
|
|
379
|
-
|
|
380
325
|
return this;
|
|
381
326
|
}
|
|
382
|
-
|
|
383
327
|
/**
|
|
384
328
|
* Converts vector to a number array.
|
|
385
329
|
* @public
|
|
386
330
|
* @returns {Array.<number>} - (exactly 2 entries)
|
|
387
331
|
*/
|
|
388
|
-
|
|
332
|
+
toVec() {
|
|
389
333
|
return [this.x, this.y];
|
|
390
334
|
}
|
|
391
|
-
|
|
392
335
|
/**
|
|
393
336
|
* Gets distance to point.
|
|
394
337
|
* @public
|
|
395
338
|
* @param {Vec2} p - Distant point.
|
|
396
339
|
* @returns {number}
|
|
397
340
|
*/
|
|
398
|
-
|
|
341
|
+
distance(p) {
|
|
399
342
|
let vec = Vec2.sub(this, p);
|
|
400
343
|
return vec.length();
|
|
401
344
|
}
|
|
402
|
-
|
|
403
345
|
/**
|
|
404
346
|
* Sets vector's values.
|
|
405
347
|
* @public
|
|
@@ -407,32 +349,29 @@ export class Vec2 {
|
|
|
407
349
|
* @param {number} y - Value Y.
|
|
408
350
|
* @returns {Vec2}
|
|
409
351
|
*/
|
|
410
|
-
|
|
352
|
+
set(x, y) {
|
|
411
353
|
this.x = x;
|
|
412
354
|
this.y = y;
|
|
413
355
|
return this;
|
|
414
356
|
}
|
|
415
|
-
|
|
416
357
|
/**
|
|
417
358
|
* Negate current vector.
|
|
418
359
|
* @public
|
|
419
360
|
* @returns {Vec2}
|
|
420
361
|
*/
|
|
421
|
-
|
|
362
|
+
negate() {
|
|
422
363
|
this.x = -this.x;
|
|
423
364
|
this.y = -this.y;
|
|
424
365
|
return this;
|
|
425
366
|
}
|
|
426
|
-
|
|
427
367
|
/**
|
|
428
368
|
* Negate current vector to another instance.
|
|
429
369
|
* @public
|
|
430
370
|
* @returns {Vec2}
|
|
431
371
|
*/
|
|
432
|
-
|
|
372
|
+
negateTo() {
|
|
433
373
|
return new Vec2(-this.x, -this.y);
|
|
434
374
|
}
|
|
435
|
-
|
|
436
375
|
/**
|
|
437
376
|
* Gets projected point coordinates of the current vector on the ray.
|
|
438
377
|
* @public
|
|
@@ -440,22 +379,20 @@ export class Vec2 {
|
|
|
440
379
|
* @param {Vec2} direction - Ray direction.
|
|
441
380
|
* @returns {Vec2}
|
|
442
381
|
*/
|
|
443
|
-
|
|
382
|
+
projToRay(pos, direction) {
|
|
444
383
|
let v = Vec2.proj_b_to_a(Vec2.sub(this, pos), direction);
|
|
445
384
|
v.add(pos);
|
|
446
385
|
return v;
|
|
447
386
|
}
|
|
448
|
-
|
|
449
387
|
/**
|
|
450
388
|
* Gets angle between two vectors.
|
|
451
389
|
* @public
|
|
452
390
|
* @param {Vec2} a - Another vector.
|
|
453
391
|
* @returns {number}
|
|
454
392
|
*/
|
|
455
|
-
|
|
393
|
+
angle(a) {
|
|
456
394
|
return Vec2.angle(this, a);
|
|
457
395
|
}
|
|
458
|
-
|
|
459
396
|
/**
|
|
460
397
|
* Returns two vectors linear interpolation.
|
|
461
398
|
* @public
|
|
@@ -463,22 +400,22 @@ export class Vec2 {
|
|
|
463
400
|
* @param {number} l - Interpolate value.
|
|
464
401
|
* @returns {Vec2}
|
|
465
402
|
*/
|
|
466
|
-
|
|
403
|
+
lerp(v1, v2, l) {
|
|
467
404
|
let res = this.clone();
|
|
468
405
|
if (l <= 0.0) {
|
|
469
406
|
res.copy(v1);
|
|
470
|
-
}
|
|
407
|
+
}
|
|
408
|
+
else if (l >= 1.0) {
|
|
471
409
|
res.copy(v2);
|
|
472
|
-
}
|
|
410
|
+
}
|
|
411
|
+
else {
|
|
473
412
|
res = Vec2.add(v1, Vec2.sub(v2, v1).scale(l));
|
|
474
413
|
}
|
|
475
414
|
return res;
|
|
476
415
|
}
|
|
477
|
-
|
|
478
|
-
static get LERP_DELTA(): number {
|
|
416
|
+
static get LERP_DELTA() {
|
|
479
417
|
return 1e-6;
|
|
480
418
|
}
|
|
481
|
-
|
|
482
419
|
/**
|
|
483
420
|
* Spherically interpolates between two vectors.
|
|
484
421
|
* Interpolates between current and v2 vector by amount t. The difference between this and linear interpolation (aka, "lerp") is that
|
|
@@ -489,34 +426,31 @@ export class Vec2 {
|
|
|
489
426
|
* @param {number} t - The parameter t is clamped to the range [0, 1].
|
|
490
427
|
* @returns {Vec2}
|
|
491
428
|
*/
|
|
492
|
-
|
|
429
|
+
slerp(v2, t) {
|
|
493
430
|
let res = new Vec2();
|
|
494
|
-
|
|
495
431
|
if (t <= 0.0) {
|
|
496
432
|
res.copy(this);
|
|
497
433
|
return res;
|
|
498
|
-
}
|
|
434
|
+
}
|
|
435
|
+
else if (t >= 1.0) {
|
|
499
436
|
res.copy(v2);
|
|
500
437
|
return res;
|
|
501
438
|
}
|
|
502
|
-
|
|
503
439
|
let omega, sinom, scale0, scale1;
|
|
504
440
|
let cosom = this.dot(v2);
|
|
505
|
-
|
|
506
441
|
if (1.0 - cosom > Vec2.LERP_DELTA) {
|
|
507
442
|
omega = Math.acos(cosom);
|
|
508
443
|
sinom = Math.sin(omega);
|
|
509
444
|
scale0 = Math.sin((1.0 - t) * omega) / sinom;
|
|
510
445
|
scale1 = Math.sin(t * omega) / sinom;
|
|
511
|
-
}
|
|
446
|
+
}
|
|
447
|
+
else {
|
|
512
448
|
scale0 = 1.0 - t;
|
|
513
449
|
scale1 = t;
|
|
514
450
|
}
|
|
515
|
-
|
|
516
451
|
return Vec2.add(this.scale(scale0), v2.scale(scale1));
|
|
517
452
|
}
|
|
518
453
|
}
|
|
519
|
-
|
|
520
454
|
/**
|
|
521
455
|
* Vector 2d object creator.
|
|
522
456
|
* @function
|
|
@@ -524,6 +458,6 @@ export class Vec2 {
|
|
|
524
458
|
* @param {number} [y] - Second value.
|
|
525
459
|
* @returns {Vec2}
|
|
526
460
|
*/
|
|
527
|
-
export function vec2(x
|
|
461
|
+
export function vec2(x = 0, y = 0) {
|
|
528
462
|
return new Vec2(x, y);
|
|
529
463
|
}
|