@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
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { EventCallback, EventsHandler } from "../Events";
|
|
2
|
+
import { ILayerParams, Layer, LayerEventsList } from "./Layer";
|
|
3
|
+
import { Material } from "../layer/Material";
|
|
4
|
+
import { NumberArray4 } from "../math/Vec4";
|
|
5
|
+
import { Planet } from "../scene/Planet";
|
|
6
|
+
type ApplyImageFunc = (material: HTMLCanvasElement | ImageBitmap | HTMLImageElement) => void;
|
|
7
|
+
type DrawTileCallback = (material: Material, applyImage: ApplyImageFunc) => void;
|
|
8
|
+
export interface ICanvasTilesParams extends ILayerParams {
|
|
9
|
+
drawTile: DrawTileCallback;
|
|
10
|
+
animated?: boolean;
|
|
11
|
+
minNativeZoom?: number;
|
|
12
|
+
maxNativeZoom?: number;
|
|
13
|
+
}
|
|
14
|
+
type CanvasTilesEventsList = [
|
|
15
|
+
"load",
|
|
16
|
+
"loadend"
|
|
17
|
+
];
|
|
18
|
+
type CanvasTilesEventsType = EventsHandler<CanvasTilesEventsList> & EventsHandler<LayerEventsList>;
|
|
19
|
+
/**
|
|
20
|
+
* Layer used to rendering each tile as a separate canvas object.
|
|
21
|
+
* @class
|
|
22
|
+
* @extends {Layer}
|
|
23
|
+
* @param {String} [name="noname"] - Layer name.
|
|
24
|
+
* @param {ICanvasTilesParams} options:
|
|
25
|
+
* @param {number} [options.opacity=1.0] - Layer opacity.
|
|
26
|
+
* @param {number} [options.minZoom=0] - Minimal visibility zoom level.
|
|
27
|
+
* @param {number} [options.maxZoom=0] - Maximal visibility zoom level.
|
|
28
|
+
* @param {string} [options.attribution] - Layer attribution that displayed in the attribution area on the screen.
|
|
29
|
+
* @param {boolean} [options.isBaseLayer=false] - Base layer flag.
|
|
30
|
+
* @param {boolean} [options.visibility=true] - Layer visibility.
|
|
31
|
+
* @param {DrawTileCallback} options.drawTile - Draw tile callback.
|
|
32
|
+
* @fires EventsHandler<CanvasTilesEventsList>#load
|
|
33
|
+
* @fires EventsHandler<CanvasTilesEventsList>#loadend
|
|
34
|
+
*/
|
|
35
|
+
declare class CanvasTiles extends Layer {
|
|
36
|
+
static MAX_REQUESTS: number;
|
|
37
|
+
static __requestsCounter: number;
|
|
38
|
+
events: CanvasTilesEventsType;
|
|
39
|
+
animated: boolean;
|
|
40
|
+
minNativeZoom: number;
|
|
41
|
+
maxNativeZoom: number;
|
|
42
|
+
/**
|
|
43
|
+
* Current creating tiles counter.
|
|
44
|
+
* @protected
|
|
45
|
+
* @type {number}
|
|
46
|
+
*/
|
|
47
|
+
protected _counter: number;
|
|
48
|
+
/**
|
|
49
|
+
* Tile pending queue that waiting for create.
|
|
50
|
+
* @protected
|
|
51
|
+
* @type {Material[]}
|
|
52
|
+
*/
|
|
53
|
+
protected _pendingsQueue: Material[];
|
|
54
|
+
/**
|
|
55
|
+
* Draw tile callback.
|
|
56
|
+
* @type {DrawTileCallback}
|
|
57
|
+
* @public
|
|
58
|
+
*/
|
|
59
|
+
drawTile: DrawTileCallback;
|
|
60
|
+
protected _onLoadend_: EventCallback | null;
|
|
61
|
+
constructor(name: string | null, options: ICanvasTilesParams);
|
|
62
|
+
addTo(planet: Planet): void;
|
|
63
|
+
remove(): this;
|
|
64
|
+
_onLoadend(): void;
|
|
65
|
+
get instanceName(): string;
|
|
66
|
+
get isIdle(): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Abort loading tiles.
|
|
69
|
+
* @public
|
|
70
|
+
*/
|
|
71
|
+
abortLoading(): void;
|
|
72
|
+
/**
|
|
73
|
+
* Sets layer visibility.
|
|
74
|
+
* @public
|
|
75
|
+
* @param {boolean} visibility - Layer visibility.
|
|
76
|
+
*/
|
|
77
|
+
setVisibility(visibility: boolean): void;
|
|
78
|
+
/**
|
|
79
|
+
* Start to load tile material.
|
|
80
|
+
* @public
|
|
81
|
+
* @virtual
|
|
82
|
+
* @param {Material} material -
|
|
83
|
+
*/
|
|
84
|
+
loadMaterial(material: Material): void;
|
|
85
|
+
/**
|
|
86
|
+
* Loads material image and apply it to the planet segment.
|
|
87
|
+
* @protected
|
|
88
|
+
* @param {Material} material - Loads material image.
|
|
89
|
+
*/
|
|
90
|
+
protected _exec(material: Material): void;
|
|
91
|
+
protected _correctCounter(): void;
|
|
92
|
+
/**
|
|
93
|
+
* Abort exact material loading.
|
|
94
|
+
* @public
|
|
95
|
+
* @param {Material} material - Segment material.
|
|
96
|
+
*/
|
|
97
|
+
abortMaterialLoading(material: Material): void;
|
|
98
|
+
protected _dequeueRequest(): void;
|
|
99
|
+
protected _whilePendings(): Material | null;
|
|
100
|
+
applyMaterial(material: Material): NumberArray4;
|
|
101
|
+
clearMaterial(material: Material): void;
|
|
102
|
+
}
|
|
103
|
+
export { CanvasTiles };
|
|
@@ -1,41 +1,17 @@
|
|
|
1
1
|
import * as quadTree from "../quadTree/quadTree";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
import {Material} from "../layer/Material";
|
|
5
|
-
import {NumberArray4} from "../math/Vec4";
|
|
6
|
-
import {Planet} from "../scene/Planet";
|
|
7
|
-
|
|
8
|
-
type ApplyImageFunc = (material: HTMLCanvasElement | ImageBitmap | HTMLImageElement) => void;
|
|
9
|
-
type DrawTileCallback = (material: Material, applyImage: ApplyImageFunc) => void;
|
|
10
|
-
|
|
11
|
-
export interface ICanvasTilesParams extends ILayerParams {
|
|
12
|
-
drawTile: DrawTileCallback;
|
|
13
|
-
animated?: boolean;
|
|
14
|
-
minNativeZoom?: number;
|
|
15
|
-
maxNativeZoom?: number;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
type CanvasTilesEventsList = [
|
|
19
|
-
"load",
|
|
20
|
-
"loadend"
|
|
21
|
-
];
|
|
22
|
-
|
|
23
|
-
type CanvasTilesEventsType = EventsHandler<CanvasTilesEventsList> & EventsHandler<LayerEventsList>;
|
|
24
|
-
|
|
25
|
-
const CANVASTILES_EVENTS: CanvasTilesEventsList = [
|
|
2
|
+
import { Layer } from "./Layer";
|
|
3
|
+
const CANVASTILES_EVENTS = [
|
|
26
4
|
/**
|
|
27
5
|
* Triggered when current tile image has loaded before rendering.
|
|
28
6
|
* @event og.layer.CanvasTiles#load
|
|
29
7
|
*/
|
|
30
8
|
"load",
|
|
31
|
-
|
|
32
9
|
/**
|
|
33
10
|
* Triggered when all tiles have loaded or loading has stopped.
|
|
34
11
|
* @event og.layer.CanvasTiles#loadend
|
|
35
12
|
*/
|
|
36
13
|
"loadend"
|
|
37
14
|
];
|
|
38
|
-
|
|
39
15
|
/**
|
|
40
16
|
* Layer used to rendering each tile as a separate canvas object.
|
|
41
17
|
* @class
|
|
@@ -53,92 +29,44 @@ const CANVASTILES_EVENTS: CanvasTilesEventsList = [
|
|
|
53
29
|
* @fires EventsHandler<CanvasTilesEventsList>#loadend
|
|
54
30
|
*/
|
|
55
31
|
class CanvasTiles extends Layer {
|
|
56
|
-
|
|
57
|
-
static MAX_REQUESTS: number = 20;
|
|
58
|
-
static __requestsCounter: number = 0
|
|
59
|
-
|
|
60
|
-
public override events: CanvasTilesEventsType;
|
|
61
|
-
|
|
62
|
-
public animated: boolean;
|
|
63
|
-
|
|
64
|
-
public minNativeZoom: number;
|
|
65
|
-
public maxNativeZoom: number;
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Current creating tiles counter.
|
|
69
|
-
* @protected
|
|
70
|
-
* @type {number}
|
|
71
|
-
*/
|
|
72
|
-
protected _counter: number;
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Tile pending queue that waiting for create.
|
|
76
|
-
* @protected
|
|
77
|
-
* @type {Material[]}
|
|
78
|
-
*/
|
|
79
|
-
protected _pendingsQueue: Material[]; // new og.QueueArray();
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* Draw tile callback.
|
|
83
|
-
* @type {DrawTileCallback}
|
|
84
|
-
* @public
|
|
85
|
-
*/
|
|
86
|
-
public drawTile: DrawTileCallback;
|
|
87
|
-
|
|
88
|
-
protected _onLoadend_: EventCallback | null;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
constructor(name: string | null, options: ICanvasTilesParams) {
|
|
32
|
+
constructor(name, options) {
|
|
92
33
|
super(name, options);
|
|
93
|
-
|
|
94
34
|
//@ts-ignore
|
|
95
35
|
this.events = this.events.registerNames(CANVASTILES_EVENTS);
|
|
96
|
-
|
|
97
36
|
this.animated = options.animated || false;
|
|
98
|
-
|
|
99
37
|
this.minNativeZoom = options.minNativeZoom || 0;
|
|
100
38
|
this.maxNativeZoom = options.maxNativeZoom || 100;
|
|
101
|
-
|
|
102
39
|
this._counter = 0;
|
|
103
|
-
|
|
104
40
|
this._pendingsQueue = []; // new og.QueueArray();
|
|
105
|
-
|
|
106
41
|
this.drawTile = options.drawTile;
|
|
107
|
-
|
|
108
42
|
this._onLoadend_ = null;
|
|
109
43
|
}
|
|
110
|
-
|
|
111
|
-
public override addTo(planet: Planet) {
|
|
44
|
+
addTo(planet) {
|
|
112
45
|
this._onLoadend_ = this._onLoadend.bind(this);
|
|
113
|
-
this.events.on("loadend", this._onLoadend_
|
|
46
|
+
this.events.on("loadend", this._onLoadend_, this);
|
|
114
47
|
return super.addTo(planet);
|
|
115
48
|
}
|
|
116
|
-
|
|
117
|
-
public override remove() {
|
|
49
|
+
remove() {
|
|
118
50
|
this.events.off("loadend", this._onLoadend_);
|
|
119
51
|
this._onLoadend_ = null;
|
|
120
52
|
return super.remove();
|
|
121
53
|
}
|
|
122
|
-
|
|
123
|
-
public _onLoadend() {
|
|
54
|
+
_onLoadend() {
|
|
124
55
|
if (this._planet && this._planet._terrainCompletedActivated) {
|
|
125
56
|
this._planet.events.dispatch(this._planet.events.layerloadend, this);
|
|
126
57
|
}
|
|
127
58
|
}
|
|
128
|
-
|
|
129
|
-
public override get instanceName(): string {
|
|
59
|
+
get instanceName() {
|
|
130
60
|
return "CanvasTiles";
|
|
131
61
|
}
|
|
132
|
-
|
|
133
|
-
public override get isIdle() {
|
|
62
|
+
get isIdle() {
|
|
134
63
|
return super.isIdle && this._counter === 0;
|
|
135
64
|
}
|
|
136
|
-
|
|
137
65
|
/**
|
|
138
66
|
* Abort loading tiles.
|
|
139
67
|
* @public
|
|
140
68
|
*/
|
|
141
|
-
|
|
69
|
+
abortLoading() {
|
|
142
70
|
//const q = this._pendingsQueue;
|
|
143
71
|
// for (let i = q._shiftIndex + 1; i < q._popIndex + 1; i++) {
|
|
144
72
|
// if (q._array[i]) {
|
|
@@ -149,67 +77,63 @@ class CanvasTiles extends Layer {
|
|
|
149
77
|
// for (let i = 0; i < q.length; i++) {
|
|
150
78
|
// this.abortMaterialLoading(q[i]);
|
|
151
79
|
// }
|
|
152
|
-
this._pendingsQueue.forEach((qi
|
|
80
|
+
this._pendingsQueue.forEach((qi) => {
|
|
153
81
|
this.abortMaterialLoading(qi);
|
|
154
|
-
})
|
|
82
|
+
});
|
|
155
83
|
this._pendingsQueue = [];
|
|
156
84
|
}
|
|
157
|
-
|
|
158
85
|
/**
|
|
159
86
|
* Sets layer visibility.
|
|
160
87
|
* @public
|
|
161
88
|
* @param {boolean} visibility - Layer visibility.
|
|
162
89
|
*/
|
|
163
|
-
|
|
90
|
+
setVisibility(visibility) {
|
|
164
91
|
if (visibility !== this._visibility) {
|
|
165
92
|
super.setVisibility(visibility);
|
|
166
|
-
|
|
167
93
|
if (!visibility) {
|
|
168
94
|
this.abortLoading();
|
|
169
95
|
}
|
|
170
96
|
}
|
|
171
97
|
}
|
|
172
|
-
|
|
173
98
|
/**
|
|
174
99
|
* Start to load tile material.
|
|
175
100
|
* @public
|
|
176
101
|
* @virtual
|
|
177
102
|
* @param {Material} material -
|
|
178
103
|
*/
|
|
179
|
-
|
|
104
|
+
loadMaterial(material) {
|
|
180
105
|
let seg = material.segment;
|
|
181
|
-
|
|
182
106
|
if (this._isBaseLayer) {
|
|
183
107
|
material.texture = seg._isNorth ? seg.planet.solidTextureOne : seg.planet.solidTextureTwo;
|
|
184
|
-
}
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
185
110
|
material.texture = seg.planet.transparentTexture;
|
|
186
111
|
}
|
|
187
|
-
|
|
188
|
-
if (this._planet!.layerLock.isFree() || material.segment.tileZoom < 2) {
|
|
112
|
+
if (this._planet.layerLock.isFree() || material.segment.tileZoom < 2) {
|
|
189
113
|
material.isReady = false;
|
|
190
114
|
material.isLoading = true;
|
|
191
115
|
if (CanvasTiles.__requestsCounter >= CanvasTiles.MAX_REQUESTS && this._counter) {
|
|
192
116
|
this._pendingsQueue.push(material);
|
|
193
|
-
}
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
194
119
|
this._exec(material);
|
|
195
120
|
}
|
|
196
121
|
}
|
|
197
122
|
}
|
|
198
|
-
|
|
199
123
|
/**
|
|
200
124
|
* Loads material image and apply it to the planet segment.
|
|
201
125
|
* @protected
|
|
202
126
|
* @param {Material} material - Loads material image.
|
|
203
127
|
*/
|
|
204
|
-
|
|
128
|
+
_exec(material) {
|
|
205
129
|
CanvasTiles.__requestsCounter++;
|
|
206
130
|
this._counter++;
|
|
207
|
-
const e = this.events.load
|
|
131
|
+
const e = this.events.load;
|
|
208
132
|
if (e.handlers.length) {
|
|
209
133
|
this.events.dispatch(e, material);
|
|
210
134
|
}
|
|
211
135
|
requestAnimationFrame(() => {
|
|
212
|
-
this.drawTile(material, (canvas
|
|
136
|
+
this.drawTile(material, (canvas) => {
|
|
213
137
|
this._counter--;
|
|
214
138
|
CanvasTiles.__requestsCounter--;
|
|
215
139
|
this._correctCounter();
|
|
@@ -220,18 +144,18 @@ class CanvasTiles extends Layer {
|
|
|
220
144
|
});
|
|
221
145
|
});
|
|
222
146
|
}
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
if (CanvasTiles.__requestsCounter < 0)
|
|
147
|
+
_correctCounter() {
|
|
148
|
+
if (this._counter < 0)
|
|
149
|
+
this._counter = 0;
|
|
150
|
+
if (CanvasTiles.__requestsCounter < 0)
|
|
151
|
+
CanvasTiles.__requestsCounter = 0;
|
|
227
152
|
}
|
|
228
|
-
|
|
229
153
|
/**
|
|
230
154
|
* Abort exact material loading.
|
|
231
155
|
* @public
|
|
232
156
|
* @param {Material} material - Segment material.
|
|
233
157
|
*/
|
|
234
|
-
|
|
158
|
+
abortMaterialLoading(material) {
|
|
235
159
|
if (material.isLoading) {
|
|
236
160
|
this._counter--;
|
|
237
161
|
CanvasTiles.__requestsCounter--;
|
|
@@ -241,8 +165,7 @@ class CanvasTiles extends Layer {
|
|
|
241
165
|
material.isLoading = false;
|
|
242
166
|
material.isReady = false;
|
|
243
167
|
}
|
|
244
|
-
|
|
245
|
-
protected _dequeueRequest() {
|
|
168
|
+
_dequeueRequest() {
|
|
246
169
|
if (this._pendingsQueue.length) {
|
|
247
170
|
if (CanvasTiles.__requestsCounter < CanvasTiles.MAX_REQUESTS) {
|
|
248
171
|
const pmat = this._whilePendings();
|
|
@@ -250,12 +173,12 @@ class CanvasTiles extends Layer {
|
|
|
250
173
|
this._exec(pmat);
|
|
251
174
|
}
|
|
252
175
|
}
|
|
253
|
-
}
|
|
176
|
+
}
|
|
177
|
+
else if (this._counter === 0 && this._planet && this._planet._terrainCompletedActivated) {
|
|
254
178
|
this.events.dispatch(this.events.loadend);
|
|
255
179
|
}
|
|
256
180
|
}
|
|
257
|
-
|
|
258
|
-
protected _whilePendings(): Material | null {
|
|
181
|
+
_whilePendings() {
|
|
259
182
|
while (this._pendingsQueue.length) {
|
|
260
183
|
const pmat = this._pendingsQueue.pop();
|
|
261
184
|
if (pmat && pmat.segment && pmat.segment.node) {
|
|
@@ -267,38 +190,32 @@ class CanvasTiles extends Layer {
|
|
|
267
190
|
}
|
|
268
191
|
return null;
|
|
269
192
|
}
|
|
270
|
-
|
|
271
|
-
public override applyMaterial(material: Material): NumberArray4 {
|
|
193
|
+
applyMaterial(material) {
|
|
272
194
|
if (material.isReady) {
|
|
273
|
-
|
|
274
195
|
// IMPORTANT!
|
|
275
196
|
// Animated doesn't work withMaxNativeZoom
|
|
276
197
|
// It could be fixed with call drawTile method only for parent
|
|
277
198
|
// material (which is rendered on the current segment material),
|
|
278
199
|
// just for one renderer frame
|
|
279
|
-
if (
|
|
200
|
+
if (material.layer.animated) {
|
|
280
201
|
requestAnimationFrame(() => {
|
|
281
202
|
this.drawTile(material, function (canvas) {
|
|
282
203
|
material.applyImage(canvas);
|
|
283
204
|
});
|
|
284
205
|
});
|
|
285
206
|
}
|
|
286
|
-
|
|
287
207
|
return material.texOffset;
|
|
288
|
-
|
|
289
|
-
|
|
208
|
+
}
|
|
209
|
+
else if (material.segment.tileZoom < this.minNativeZoom) {
|
|
290
210
|
material.textureNotExists();
|
|
291
|
-
}
|
|
292
|
-
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
293
213
|
let segment = material.segment;
|
|
294
|
-
let pn = segment.node,
|
|
295
|
-
|
|
296
|
-
let maxNativeZoom = (material.layer as CanvasTiles).maxNativeZoom;
|
|
297
|
-
|
|
214
|
+
let pn = segment.node, parentTextureExists = false;
|
|
215
|
+
let maxNativeZoom = material.layer.maxNativeZoom;
|
|
298
216
|
if (segment.passReady && !material.isLoading && segment.tileZoom <= maxNativeZoom) {
|
|
299
217
|
this.loadMaterial(material);
|
|
300
218
|
}
|
|
301
|
-
|
|
302
219
|
let mId = this._id;
|
|
303
220
|
let psegm = material;
|
|
304
221
|
while (pn.parentNode) {
|
|
@@ -309,44 +226,38 @@ class CanvasTiles extends Layer {
|
|
|
309
226
|
break;
|
|
310
227
|
}
|
|
311
228
|
}
|
|
312
|
-
|
|
313
229
|
if (segment.passReady) {
|
|
314
230
|
if (pn.segment.tileZoom === maxNativeZoom) {
|
|
315
231
|
if (segment.tileZoom > maxNativeZoom) {
|
|
316
232
|
material.textureNotExists();
|
|
317
233
|
}
|
|
318
|
-
}
|
|
319
|
-
|
|
234
|
+
}
|
|
235
|
+
else if (pn.segment.tileZoom < maxNativeZoom) {
|
|
320
236
|
let pn = segment.node;
|
|
321
237
|
while (pn.segment.tileZoom > maxNativeZoom) {
|
|
322
|
-
pn = pn.parentNode
|
|
238
|
+
pn = pn.parentNode;
|
|
323
239
|
}
|
|
324
|
-
|
|
325
240
|
let pnm = pn.segment.materials[mId];
|
|
326
241
|
if (pnm) {
|
|
327
242
|
!pnm.isLoading && !pnm.isReady && this.loadMaterial(pnm);
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
);
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
pnm = pn.segment.materials[material.layer._id] = material.layer.createMaterial(pn.segment);
|
|
332
246
|
this.loadMaterial(pnm);
|
|
333
247
|
}
|
|
334
248
|
}
|
|
335
249
|
}
|
|
336
|
-
|
|
337
250
|
if (parentTextureExists) {
|
|
338
|
-
|
|
339
251
|
//
|
|
340
252
|
// Animated doesn't work withMaxNativeZoom
|
|
341
253
|
//
|
|
342
|
-
if (
|
|
254
|
+
if (material.layer.animated) {
|
|
343
255
|
requestAnimationFrame(() => {
|
|
344
256
|
this.drawTile(material, function (canvas) {
|
|
345
257
|
material.applyImage(canvas);
|
|
346
258
|
});
|
|
347
259
|
});
|
|
348
260
|
}
|
|
349
|
-
|
|
350
261
|
material.appliedNodeId = pn.nodeId;
|
|
351
262
|
material.texture = psegm.texture;
|
|
352
263
|
let dZ2 = 1.0 / (2 << (segment.tileZoom - pn.segment.tileZoom - 1));
|
|
@@ -354,7 +265,8 @@ class CanvasTiles extends Layer {
|
|
|
354
265
|
material.texOffset[1] = segment.tileY * dZ2 - pn.segment.tileY;
|
|
355
266
|
material.texOffset[2] = dZ2;
|
|
356
267
|
material.texOffset[3] = dZ2;
|
|
357
|
-
}
|
|
268
|
+
}
|
|
269
|
+
else {
|
|
358
270
|
material.texture = segment.planet.transparentTexture;
|
|
359
271
|
material.texOffset[0] = 0.0;
|
|
360
272
|
material.texOffset[1] = 0.0;
|
|
@@ -362,33 +274,29 @@ class CanvasTiles extends Layer {
|
|
|
362
274
|
material.texOffset[3] = 1.0;
|
|
363
275
|
}
|
|
364
276
|
}
|
|
365
|
-
|
|
366
277
|
return material.texOffset;
|
|
367
278
|
}
|
|
368
|
-
|
|
369
|
-
public override clearMaterial(material: Material) {
|
|
279
|
+
clearMaterial(material) {
|
|
370
280
|
if (material.isReady) {
|
|
371
281
|
material.isReady = false;
|
|
372
282
|
if (material.textureExists && material.texture && !material.texture.default) {
|
|
373
|
-
material.segment.handler.gl
|
|
283
|
+
material.segment.handler.gl.deleteTexture(material.texture);
|
|
374
284
|
material.texture = null;
|
|
375
285
|
}
|
|
376
286
|
}
|
|
377
|
-
|
|
378
287
|
this.abortMaterialLoading(material);
|
|
379
288
|
material.isLoading = false;
|
|
380
289
|
material.textureExists = false;
|
|
381
|
-
|
|
382
290
|
//@ts-ignore
|
|
383
291
|
material.layer = null;
|
|
384
292
|
//@ts-ignore
|
|
385
293
|
material.segment = null;
|
|
386
|
-
|
|
387
294
|
// if (material.image) {
|
|
388
295
|
// material.image.src = "";
|
|
389
296
|
// material.image = null;
|
|
390
297
|
// }
|
|
391
298
|
}
|
|
392
299
|
}
|
|
393
|
-
|
|
394
|
-
|
|
300
|
+
CanvasTiles.MAX_REQUESTS = 20;
|
|
301
|
+
CanvasTiles.__requestsCounter = 0;
|
|
302
|
+
export { CanvasTiles };
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { BaseGeoImage, IBaseGeoImageParams } from "./BaseGeoImage";
|
|
2
|
+
import { Material } from "./Material";
|
|
3
|
+
interface IGeoImageParams extends IBaseGeoImageParams {
|
|
4
|
+
image?: HTMLImageElement | HTMLCanvasElement | ImageBitmap;
|
|
5
|
+
src?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Used to load and display a single image over specific corner coordinates on the globe.
|
|
9
|
+
* @class
|
|
10
|
+
* @extends {BaseGeoImage}
|
|
11
|
+
*/
|
|
12
|
+
declare class GeoImage extends BaseGeoImage {
|
|
13
|
+
/**
|
|
14
|
+
* Image object.
|
|
15
|
+
* @protected
|
|
16
|
+
* @type {HTMLImageElement | HTMLCanvasElement | ImageBitmap}
|
|
17
|
+
*/
|
|
18
|
+
protected _image: HTMLImageElement | HTMLCanvasElement | ImageBitmap | null;
|
|
19
|
+
/**
|
|
20
|
+
* Image source url path.
|
|
21
|
+
* @protected
|
|
22
|
+
* @type {string}
|
|
23
|
+
*/
|
|
24
|
+
protected _src: string | null;
|
|
25
|
+
protected _onLoad_: ((this: HTMLImageElement, ev: Event) => void) | null;
|
|
26
|
+
constructor(name: string | null, options?: IGeoImageParams);
|
|
27
|
+
get instanceName(): string;
|
|
28
|
+
abortLoading(): void;
|
|
29
|
+
/**
|
|
30
|
+
* Sets image source url path.
|
|
31
|
+
* @public
|
|
32
|
+
* @param {string} srs - Image url path.
|
|
33
|
+
*/
|
|
34
|
+
setSrc(src: string): void;
|
|
35
|
+
/**
|
|
36
|
+
* Sets image object.
|
|
37
|
+
* @public
|
|
38
|
+
* @param {Image} image - Image object.
|
|
39
|
+
*/
|
|
40
|
+
setImage(image: HTMLImageElement): void;
|
|
41
|
+
/**
|
|
42
|
+
* Creates source gl texture.
|
|
43
|
+
* @virtual
|
|
44
|
+
* @protected
|
|
45
|
+
*/
|
|
46
|
+
protected _createSourceTexture(): void;
|
|
47
|
+
protected _onLoad(ev: Event): void;
|
|
48
|
+
protected _applyImage(img: HTMLImageElement | HTMLCanvasElement | ImageBitmap | null): void;
|
|
49
|
+
/**
|
|
50
|
+
* Loads planet segment material. In this case - GeoImage source image.
|
|
51
|
+
* @public
|
|
52
|
+
* @param {Material} material - GeoImage planet material.
|
|
53
|
+
*/
|
|
54
|
+
loadMaterial(material: Material): void;
|
|
55
|
+
/**
|
|
56
|
+
* @public
|
|
57
|
+
* @param {Material} material - GeoImage material.
|
|
58
|
+
*/
|
|
59
|
+
abortMaterialLoading(material: Material): void;
|
|
60
|
+
}
|
|
61
|
+
export { GeoImage };
|