@openglobus/og 0.17.2 → 0.18.0
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 +75 -46
- package/dist/@openglobus/og.esm.js +1 -20
- package/dist/@openglobus/og.esm.js.map +1 -1
- package/dist/@openglobus/og.umd.js +1 -20
- package/dist/@openglobus/og.umd.js.map +1 -1
- package/dist/@openglobus/res/fonts/Karla-Bold.json +5252 -0
- package/dist/@openglobus/res/fonts/Karla-Bold.ttf.cfg +920 -0
- package/dist/@openglobus/res/fonts/Karla-Bold.ttf.png +0 -0
- package/dist/@openglobus/res/fonts/Karla-Light.json +5252 -0
- package/dist/@openglobus/res/fonts/Karla-Light.ttf.cfg +830 -0
- package/dist/@openglobus/res/fonts/Karla-Light.ttf.png +0 -0
- package/dist/@openglobus/res/fonts/Karla-Medium.json +5252 -0
- package/dist/@openglobus/res/fonts/Karla-Medium.ttf.cfg +1196 -0
- package/dist/@openglobus/res/fonts/Karla-Medium.ttf.png +0 -0
- package/dist/@openglobus/res/fonts/NotoSansArabic-Regular.json +3332 -0
- package/dist/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.cfg +1370 -0
- package/dist/@openglobus/res/fonts/NotoSansArabic-Regular.ttf.png +0 -0
- package/dist/@openglobus/res/fonts/Roboto-Regular.json +37147 -0
- package/dist/@openglobus/res/fonts/Roboto-Regular.ttf.cfg +1340 -0
- package/dist/@openglobus/res/fonts/Roboto-Regular.ttf.png +0 -0
- package/dist/@openglobus/res/fonts/arial.json +4321 -0
- package/dist/@openglobus/res/fonts/arial.ttf.cfg +1570 -0
- package/dist/@openglobus/res/fonts/arial.ttf.png +0 -0
- package/dist/@openglobus/res/night-4326.png +0 -0
- package/dist/@openglobus/res/night.png +0 -0
- package/dist/@openglobus/res/spec.png +0 -0
- package/package.json +25 -23
- package/src/{og/Clock.js → Clock.ts} +100 -78
- package/src/Deferred.ts +17 -0
- package/src/Events.ts +200 -0
- package/src/{og/Extent.js → Extent.ts} +324 -352
- package/src/Globe.ts +363 -0
- package/src/{og/ImageCanvas.js → ImageCanvas.ts} +244 -236
- package/src/Lock.ts +41 -0
- package/src/{og/LonLat.js → LonLat.ts} +50 -47
- package/src/{og/Object3d.js → Object3d.ts} +89 -55
- package/src/Popup.ts +228 -0
- package/src/{og/QueueArray.js → QueueArray.ts} +76 -75
- package/src/{og/Rectangle.js → Rectangle.ts} +115 -111
- package/src/Stack.ts +58 -0
- package/src/{og/astro/astro.js → astro/astro.ts} +49 -51
- package/src/{og/astro/earth.js → astro/earth.ts} +8 -9
- package/src/{og/astro/jd.js → astro/jd.ts} +92 -111
- package/src/{og/astro/orbit.js → astro/orbit.ts} +35 -37
- package/src/{og/astro/rotation.js → astro/rotation.ts} +4 -6
- package/src/{og/bv/Box.js → bv/Box.ts} +21 -17
- package/src/{og/bv/Sphere.js → bv/Sphere.ts} +21 -19
- package/src/bv/index.ts +4 -0
- package/src/{og/camera/Camera.js → camera/Camera.ts} +254 -197
- package/src/{og/camera/Frustum.js → camera/Frustum.ts} +137 -111
- package/src/{og/camera/PlanetCamera.js → camera/PlanetCamera.ts} +246 -182
- package/src/camera/index.ts +4 -0
- package/src/{og/cons.js → cons.ts} +14 -18
- package/src/{og/control/Atmosphere.js → control/Atmosphere.ts} +50 -50
- package/src/{og/control/CompassButton.js → control/CompassButton.ts} +27 -30
- package/src/{og/control/Control.js → control/Control.ts} +76 -70
- package/src/{og/control/DebugInfo.js → control/DebugInfo.ts} +130 -62
- package/src/{og/control/DrawingSwitcher.js → control/DrawingSwitcher.ts} +16 -22
- package/src/control/EarthCoordinates.ts +222 -0
- package/src/control/EarthNavigation.ts +293 -0
- package/src/{og/control/GeoImageDragControl.js → control/GeoImageDragControl.ts} +37 -29
- package/src/control/KeyboardNavigation.ts +168 -0
- package/src/{og/control/LayerAnimation.js → control/LayerAnimation.ts} +74 -90
- package/src/control/LayerSwitcher.ts +76 -0
- package/src/{og/control/Lighting.js → control/Lighting.ts} +158 -120
- package/src/control/MouseNavigation.ts +468 -0
- package/src/control/MouseWheelZoomControl.ts +269 -0
- package/src/{og/control/RulerSwitcher.js → control/RulerSwitcher.ts} +18 -20
- package/src/control/ScaleControl.ts +131 -0
- package/src/control/SegmentBoundVisualization.ts +50 -0
- package/src/control/ShowFps.ts +28 -0
- package/src/control/SimpleNavigation.ts +118 -0
- package/src/{og/control/SimpleSkyBackground.js → control/SimpleSkyBackground.ts} +36 -38
- package/src/{og/control/Sun.js → control/Sun.ts} +56 -64
- package/src/control/ToggleWireframe.ts +35 -0
- package/src/control/TouchNavigation.ts +368 -0
- package/src/control/ZoomControl.ts +111 -0
- package/src/control/drawing/DrawingControl.ts +45 -0
- package/src/{og/control/drawing/LineStringDrawingScene.js → control/drawing/LineStringDrawingScene.ts} +28 -35
- package/src/{og/control/drawing/PolygonDrawingScene.js → control/drawing/PolygonDrawingScene.ts} +148 -201
- package/src/{og/control/elevationProfile/ElevationProfile.js → control/elevationProfile/ElevationProfile.ts} +70 -36
- package/src/control/heightRuler/HeightRuler.ts +16 -0
- package/src/{og/control/heightRuler/HeightRulerScene.js → control/heightRuler/HeightRulerScene.ts} +92 -87
- package/src/{og/control/heightRuler/HeightRulerSwitcher.js → control/heightRuler/HeightRulerSwitcher.ts} +3 -3
- package/src/control/index.ts +45 -0
- package/src/control/ruler/Ruler.ts +35 -0
- package/src/{og/control/ruler/RulerScene.js → control/ruler/RulerScene.ts} +163 -121
- package/src/{og/control/selection/Selection.js → control/selection/Selection.ts} +23 -21
- package/src/{og/control/selection/SelectionScene.js → control/selection/SelectionScene.ts} +64 -50
- package/src/{og/control/timeline/TimelineControl.js → control/timeline/TimelineControl.ts} +37 -28
- package/src/{og/control/timeline/TimelineModel.js → control/timeline/TimelineModel.ts} +50 -35
- package/src/{og/control/timeline/TimelineView.js → control/timeline/TimelineView.ts} +162 -113
- package/src/{og/control/timeline/timelineUtils.js → control/timeline/timelineUtils.ts} +11 -10
- package/src/{og/control → control}/visibleExtent/Segment.js +5 -5
- package/src/{og/control → control}/visibleExtent/VisibleExtent.js +8 -15
- package/src/{og/control/visibleExtent/drawnode.js → control/visibleExtent/drawnode.ts} +1 -3
- package/src/{og/ellipsoid/Ellipsoid.js → ellipsoid/Ellipsoid.ts} +113 -59
- package/src/ellipsoid/index.ts +4 -0
- package/src/{og/ellipsoid/wgs84.js → ellipsoid/wgs84.ts} +1 -3
- package/src/{og/entity/BaseBillboard.js → entity/BaseBillboard.ts} +128 -102
- package/src/entity/BaseBillboardHandler.ts +772 -0
- package/src/{og/entity/Billboard.js → entity/Billboard.ts} +77 -47
- package/src/entity/BillboardHandler.ts +135 -0
- package/src/{og/entity/Entity.js → entity/Entity.ts} +285 -226
- package/src/{og/entity/EntityCollection.js → entity/EntityCollection.ts} +340 -247
- package/src/{og/entity/GeoObject.js → entity/GeoObject.ts} +122 -67
- package/src/{og/entity/GeoObjectHandler.js → entity/GeoObjectHandler.ts} +273 -198
- package/src/entity/Geometry.ts +486 -0
- package/src/{og/entity/GeometryHandler.js → entity/GeometryHandler.ts} +383 -541
- package/src/{og/entity/Label.js → entity/Label.ts} +131 -83
- package/src/{og/entity/LabelHandler.js → entity/LabelHandler.ts} +289 -255
- package/src/{og/entity/LabelWorker.js → entity/LabelWorker.ts} +26 -36
- package/src/{og/entity/PointCloud.js → entity/PointCloud.ts} +200 -164
- package/src/entity/PointCloudHandler.ts +125 -0
- package/src/{og/entity/Polyline.js → entity/Polyline.ts} +517 -539
- package/src/{og/entity/PolylineHandler.js → entity/PolylineHandler.ts} +29 -31
- package/src/{og/entity/Ray.js → entity/Ray.ts} +89 -60
- package/src/{og/entity/RayHandler.js → entity/RayHandler.ts} +201 -306
- package/src/{og/entity/Strip.js → entity/Strip.ts} +143 -100
- package/src/{og/entity/StripHandler.js → entity/StripHandler.ts} +76 -72
- package/src/entity/index.ts +12 -0
- package/src/index.ts +173 -0
- package/src/input/KeyboardHandler.ts +196 -0
- package/src/{og/input/MouseHandler.js → input/MouseHandler.ts} +46 -35
- package/src/input/TouchHandler.ts +54 -0
- package/src/{og/input/input.js → input/input.ts} +1 -3
- package/src/{og/layer/BaseGeoImage.js → layer/BaseGeoImage.ts} +174 -107
- package/src/{og/layer/CanvasTiles.js → layer/CanvasTiles.ts} +139 -105
- package/src/{og/layer/GeoImage.js → layer/GeoImage.ts} +62 -52
- package/src/layer/GeoTexture2d.ts +56 -0
- package/src/{og/layer/GeoVideo.js → layer/GeoVideo.ts} +53 -53
- package/src/{og/layer/KML.js → layer/KML.ts} +63 -74
- package/src/{og/layer/Layer.js → layer/Layer.ts} +399 -223
- package/src/{og/layer/Material.js → layer/Material.ts} +40 -35
- package/src/{og/layer/Vector.js → layer/Vector.ts} +319 -267
- package/src/{og/layer/WMS.js → layer/WMS.ts} +76 -64
- package/src/{og/layer/XYZ.js → layer/XYZ.ts} +123 -98
- package/src/layer/index.ts +12 -0
- package/src/{og/light/LightSource.js → light/LightSource.ts} +132 -93
- package/src/{og/math/Line2.js → math/Line2.ts} +11 -8
- package/src/{og/math/Line3.js → math/Line3.ts} +49 -27
- package/src/{og/math/Mat3.js → math/Mat3.ts} +43 -27
- package/src/{og/math/Mat4.js → math/Mat4.ts} +110 -77
- package/src/{og/math/Plane.js → math/Plane.ts} +28 -23
- package/src/{og/math/Quat.js → math/Quat.ts} +238 -222
- package/src/{og/math/Ray.js → math/Ray.ts} +59 -63
- package/src/{og/math/Vec2.js → math/Vec2.ts} +85 -76
- package/src/{og/math/Vec3.js → math/Vec3.ts} +141 -140
- package/src/{og/math/Vec4.js → math/Vec4.ts} +64 -53
- package/src/{og/math/coder.js → math/coder.ts} +30 -27
- package/src/math/index.ts +26 -0
- package/src/{og/math.js → math.ts} +46 -49
- package/src/{og/mercator.js → mercator.ts} +143 -149
- package/src/{og/proj/EPSG3857.js → proj/EPSG3857.ts} +1 -3
- package/src/{og/proj/EPSG4326.js → proj/EPSG4326.ts} +11 -13
- package/src/{og/proj/Proj.js → proj/Proj.ts} +27 -23
- package/src/{og/quadTree/EPSG4326QuadTreeStrategy.js → quadTree/EPSG4326QuadTreeStrategy.ts} +10 -13
- package/src/{og/quadTree/EarthQuadTreeStrategy.js → quadTree/EarthQuadTreeStrategy.ts} +11 -13
- package/src/quadTree/EntityCollectionNode.ts +395 -0
- package/src/{og/quadTree/MarsQuadTreeStrategy.js → quadTree/MarsQuadTreeStrategy.ts} +10 -13
- package/src/{og/quadTree/Node.js → quadTree/Node.ts} +283 -191
- package/src/{og/quadTree/QuadTreeStrategy.js → quadTree/QuadTreeStrategy.ts} +35 -29
- package/src/quadTree/Wgs84QuadTreeStrategy.ts +22 -0
- package/src/quadTree/index.ts +14 -0
- package/src/{og/quadTree/quadTree.js → quadTree/quadTree.ts} +75 -77
- package/src/{og/renderer/Renderer.js → renderer/Renderer.ts} +454 -298
- package/src/{og/renderer/RendererEvents.js → renderer/RendererEvents.ts} +347 -256
- package/src/{og/scene/Axes.js → scene/Axes.ts} +26 -22
- package/src/{og/scene/BaseNode.js → scene/BaseNode.ts} +53 -47
- package/src/{og/scene/Planet.js → scene/Planet.ts} +776 -592
- package/src/{og/scene/RenderNode.js → scene/RenderNode.ts} +105 -91
- package/src/{og/scene/SkyBox.js → scene/SkyBox.ts} +29 -25
- package/src/scene/index.ts +6 -0
- package/src/{og/segment/Segment.js → segment/Segment.ts} +497 -371
- package/src/{og/segment/SegmentLonLat.js → segment/SegmentLonLat.ts} +81 -87
- package/src/{og/segment/SegmentLonLatWgs84.js → segment/SegmentLonLatWgs84.ts} +9 -16
- package/src/{og/segment/Slice.js → segment/Slice.ts} +15 -9
- package/src/{og/segment/segmentHelper.js → segment/segmentHelper.ts} +57 -49
- package/src/{og/shaders/atmos.js → shaders/atmos.ts} +4 -6
- package/src/{og/shaders/billboard.js → shaders/billboard.ts} +3 -5
- package/src/{og/shaders/bloom.js → shaders/bloom.ts} +2 -4
- package/src/{og/shaders/blur.js → shaders/blur.ts} +4 -7
- package/src/{og/shaders/depth.js → shaders/depth.ts} +1 -3
- package/src/{og/shaders/drawnode.js → shaders/drawnode.ts} +19 -21
- package/src/{og/shaders/geoObject.js → shaders/geoObject.ts} +17 -19
- package/src/{og/shaders/label.js → shaders/label.ts} +4 -6
- package/src/{og/shaders/lumFilter.js → shaders/lumFilter.ts} +2 -4
- package/src/{og/shaders/pickingMask.js → shaders/pickingMask.ts} +2 -4
- package/src/{og/shaders/pointCloud.js → shaders/pointCloud.ts} +7 -10
- package/src/{og/shaders/polyline.js → shaders/polyline.ts} +3 -200
- package/src/{og/shaders/ray.js → shaders/ray.ts} +2 -4
- package/src/{og/shaders/screenFrame.js → shaders/screenFrame.ts} +2 -4
- package/src/{og/shaders/skybox.js → shaders/skybox.ts} +7 -9
- package/src/{og/shaders/toneMapping.js → shaders/toneMapping.ts} +2 -4
- package/src/{og/shaders/utils.js → shaders/utils.ts} +0 -2
- package/src/{og/terrain/BilTerrain.js → terrain/BilTerrain.ts} +38 -32
- package/src/terrain/EmptyTerrain.ts +230 -0
- package/src/{og/terrain/Geoid.js → terrain/Geoid.ts} +67 -41
- package/src/{og/terrain/GlobusTerrain.js → terrain/GlobusTerrain.ts} +159 -153
- package/src/{og/terrain/MapboxTerrain.js → terrain/MapboxTerrain.ts} +58 -61
- package/src/terrain/index.ts +6 -0
- package/src/ui/Button.ts +121 -0
- package/src/ui/ButtonGroup.ts +63 -0
- package/src/ui/Dialog.ts +244 -0
- package/src/ui/Slider.ts +188 -0
- package/src/ui/ToggleButton.ts +68 -0
- package/src/{og/ui/View.js → ui/View.ts} +66 -59
- package/src/utils/BaseWorker.ts +60 -0
- package/src/utils/FontAtlas.ts +356 -0
- package/src/{og/utils/GeoImageCreator.js → utils/GeoImageCreator.ts} +45 -29
- package/src/{og/utils/ImagesCacheManager.js → utils/ImagesCacheManager.ts} +85 -70
- package/src/utils/Loader.ts +247 -0
- package/src/{og/utils/NormalMapCreator.js → utils/NormalMapCreator.ts} +114 -77
- package/src/{og/utils/PlainSegmentWorker.js → utils/PlainSegmentWorker.ts} +41 -24
- package/src/{og/utils/TerrainWorker.js → utils/TerrainWorker.ts} +51 -36
- package/src/utils/TextureAtlas.ts +322 -0
- package/src/{og/utils/VectorTileCreator.js → utils/VectorTileCreator.ts} +67 -52
- package/src/{og/utils/colorTable.js → utils/colorTable.ts} +142 -144
- package/src/{og/utils/earcut.js → utils/earcut.ts} +664 -661
- package/src/{og/utils/objParser.js → utils/objParser.ts} +66 -37
- package/src/{og/utils/shared.js → utils/shared.ts} +267 -206
- package/src/utils/units.ts +78 -0
- package/src/webgl/BaseFramebuffer.ts +125 -0
- package/src/webgl/Framebuffer.ts +206 -0
- package/src/webgl/Handler.ts +1414 -0
- package/src/webgl/Multisample.ts +153 -0
- package/src/webgl/Program.ts +451 -0
- package/src/{og/webgl/ProgramController.js → webgl/ProgramController.ts} +44 -43
- package/src/webgl/index.ts +13 -0
- package/src/{og/webgl/types.js → webgl/types.ts} +29 -31
- package/src/webgl/variableHandlers.ts +114 -0
- package/src/og/Deferred.js +0 -11
- package/src/og/Events.js +0 -185
- package/src/og/Globe.js +0 -342
- package/src/og/Lock.js +0 -44
- package/src/og/Popup.js +0 -187
- package/src/og/Stack.js +0 -49
- package/src/og/bv/index.js +0 -4
- package/src/og/camera/index.js +0 -4
- package/src/og/control/EarthCoordinates.js +0 -214
- package/src/og/control/EarthNavigation.js +0 -258
- package/src/og/control/KeyboardNavigation.js +0 -172
- package/src/og/control/LayerSwitcher.js +0 -424
- package/src/og/control/MouseNavigation.js +0 -436
- package/src/og/control/MouseWheelZoomControl.js +0 -253
- package/src/og/control/ScaleControl.js +0 -119
- package/src/og/control/SegmentBoundVisualization.js +0 -54
- package/src/og/control/ShowFps.js +0 -40
- package/src/og/control/SimpleNavigation.js +0 -123
- package/src/og/control/ToggleWireframe.js +0 -35
- package/src/og/control/TouchNavigation.js +0 -350
- package/src/og/control/ZoomControl.js +0 -115
- package/src/og/control/drawing/DrawingControl.js +0 -51
- package/src/og/control/heightRuler/HeightRuler.js +0 -12
- package/src/og/control/index.js +0 -56
- package/src/og/control/ruler/Ruler.js +0 -39
- package/src/og/ellipsoid/index.js +0 -4
- package/src/og/entity/BillboardHandler.js +0 -883
- package/src/og/entity/Geometry.js +0 -320
- package/src/og/entity/PointCloudHandler.js +0 -122
- package/src/og/entity/index.js +0 -9
- package/src/og/index.js +0 -112
- package/src/og/input/KeyboardHandler.js +0 -195
- package/src/og/input/TouchHandler.js +0 -59
- package/src/og/layer/GeoTexture2d.js +0 -50
- package/src/og/layer/index.js +0 -11
- package/src/og/math/index.js +0 -23
- package/src/og/quadTree/EntityCollectionNode.js +0 -391
- package/src/og/quadTree/Wgs84QuadTreeStrategy.js +0 -27
- package/src/og/quadTree/index.js +0 -14
- package/src/og/res/images.js +0 -8
- package/src/og/scene/index.js +0 -5
- package/src/og/terrain/EmptyTerrain.js +0 -174
- package/src/og/terrain/index.js +0 -6
- package/src/og/ui/Button.js +0 -107
- package/src/og/ui/ButtonGroup.js +0 -57
- package/src/og/ui/Dialog.js +0 -239
- package/src/og/ui/Slider.js +0 -170
- package/src/og/ui/ToggleButton.js +0 -51
- package/src/og/ui/UIhelpers.js +0 -155
- package/src/og/utils/BaseWorker.js +0 -46
- package/src/og/utils/FontAtlas.js +0 -218
- package/src/og/utils/Loader.js +0 -188
- package/src/og/utils/TextureAtlas.js +0 -291
- package/src/og/utils/functionComposition.js +0 -13
- package/src/og/utils/units.js +0 -78
- package/src/og/webgl/Framebuffer.js +0 -311
- package/src/og/webgl/Handler.js +0 -1170
- package/src/og/webgl/Multisample.js +0 -275
- package/src/og/webgl/Program.js +0 -407
- package/src/og/webgl/callbacks.js +0 -98
- package/src/og/webgl/index.js +0 -13
- package/src/og.jsdoc +0 -3
- package/types/Clock.d.ts +0 -99
- package/types/Deferred.d.ts +0 -6
- package/types/Events.d.ts +0 -78
- package/types/Extent.d.ts +0 -166
- package/types/Globe.d.ts +0 -108
- package/types/ImageCanvas.d.ts +0 -128
- package/types/Lock.d.ts +0 -12
- package/types/LonLat.d.ts +0 -127
- package/types/Object3d.d.ts +0 -35
- package/types/Popup.d.ts +0 -29
- package/types/QueueArray.d.ts +0 -19
- package/types/Rectangle.d.ts +0 -80
- package/types/Stack.d.ts +0 -19
- package/types/arial.d.ts +0 -49
- package/types/astro/astro.d.ts +0 -38
- package/types/astro/earth.d.ts +0 -7
- package/types/astro/jd.d.ts +0 -254
- package/types/bv/Box.d.ts +0 -30
- package/types/bv/Sphere.d.ts +0 -38
- package/types/bv/index.d.ts +0 -3
- package/types/camera/Camera.d.ts +0 -314
- package/types/camera/Frustum.d.ts +0 -133
- package/types/camera/PlanetCamera.d.ts +0 -219
- package/types/camera/index.d.ts +0 -3
- package/types/cons.d.ts +0 -40
- package/types/control/Atmosphere.d.ts +0 -15
- package/types/control/CompassButton.d.ts +0 -16
- package/types/control/Control.d.ts +0 -104
- package/types/control/DebugInfo.d.ts +0 -19
- package/types/control/DrawingSwitcher.d.ts +0 -13
- package/types/control/EarthCoordinates.d.ts +0 -44
- package/types/control/EarthNavigation.d.ts +0 -43
- package/types/control/GeoImageDragControl.d.ts +0 -14
- package/types/control/KeyboardNavigation.d.ts +0 -24
- package/types/control/LayerAnimation.d.ts +0 -73
- package/types/control/LayerSwitcher.d.ts +0 -64
- package/types/control/Lighting.d.ts +0 -41
- package/types/control/MouseNavigation.d.ts +0 -49
- package/types/control/MouseWheelZoomControl.d.ts +0 -46
- package/types/control/ScaleControl.d.ts +0 -23
- package/types/control/ShowFps.d.ts +0 -11
- package/types/control/SimpleNavigation.d.ts +0 -26
- package/types/control/SimpleSkyBackground.d.ts +0 -15
- package/types/control/Sun.d.ts +0 -53
- package/types/control/ToggleWireframe.d.ts +0 -12
- package/types/control/TouchNavigation.d.ts +0 -54
- package/types/control/ZoomControl.d.ts +0 -26
- package/types/control/drawing/DrawingControl.d.ts +0 -14
- package/types/control/drawing/LineStringDrawingScene.d.ts +0 -5
- package/types/control/drawing/PolygonDrawingScene.d.ts +0 -99
- package/types/control/heightRuler/HeightRuler.d.ts +0 -6
- package/types/control/heightRuler/HeightRulerScene.d.ts +0 -23
- package/types/control/index.d.ts +0 -27
- package/types/control/ruler/Ruler.d.ts +0 -13
- package/types/control/ruler/RulerScene.d.ts +0 -51
- package/types/control/selection/Selection.d.ts +0 -49
- package/types/control/selection/SelectionScene.d.ts +0 -32
- package/types/control/timeline/TimelineControl.d.ts +0 -10
- package/types/control/timeline/TimelineModel.d.ts +0 -33
- package/types/control/timeline/TimelineView.d.ts +0 -57
- package/types/control/timeline/timelineUtils.d.ts +0 -9
- package/types/ellipsoid/Ellipsoid.d.ts +0 -170
- package/types/ellipsoid/index.d.ts +0 -3
- package/types/ellipsoid/wgs84.d.ts +0 -6
- package/types/entity/BaseBillboard.d.ts +0 -215
- package/types/entity/Billboard.d.ts +0 -94
- package/types/entity/BillboardHandler.d.ts +0 -75
- package/types/entity/Entity.d.ts +0 -340
- package/types/entity/EntityCollection.d.ts +0 -303
- package/types/entity/GeoObject.d.ts +0 -117
- package/types/entity/GeoObjectHandler.d.ts +0 -41
- package/types/entity/Geometry.d.ts +0 -79
- package/types/entity/GeometryHandler.d.ts +0 -76
- package/types/entity/Label.d.ts +0 -190
- package/types/entity/LabelHandler.d.ts +0 -31
- package/types/entity/LabelWorker.d.ts +0 -9
- package/types/entity/PointCloud.d.ts +0 -174
- package/types/entity/PointCloudHandler.d.ts +0 -38
- package/types/entity/Polyline.d.ts +0 -307
- package/types/entity/PolylineHandler.d.ts +0 -18
- package/types/entity/Ray.d.ts +0 -122
- package/types/entity/RayHandler.d.ts +0 -63
- package/types/entity/Strip.d.ts +0 -119
- package/types/entity/StripHandler.d.ts +0 -38
- package/types/entity/index.d.ts +0 -8
- package/types/index.d.ts +0 -53
- package/types/input/KeyboardHandler.d.ts +0 -17
- package/types/input/MouseHandler.d.ts +0 -5
- package/types/input/TouchHandler.d.ts +0 -5
- package/types/input/input.d.ts +0 -42
- package/types/layer/BaseGeoImage.d.ts +0 -116
- package/types/layer/CanvasTiles.d.ts +0 -73
- package/types/layer/GeoImage.d.ts +0 -51
- package/types/layer/GeoTexture2d.d.ts +0 -7
- package/types/layer/GeoVideo.d.ts +0 -47
- package/types/layer/KML.d.ts +0 -93
- package/types/layer/Layer.d.ts +0 -320
- package/types/layer/Material.d.ts +0 -45
- package/types/layer/Vector.d.ts +0 -211
- package/types/layer/WMS.d.ts +0 -66
- package/types/layer/XYZ.d.ts +0 -122
- package/types/layer/index.d.ts +0 -10
- package/types/light/LightSource.d.ts +0 -178
- package/types/math/Line2.d.ts +0 -11
- package/types/math/Line3.d.ts +0 -10
- package/types/math/Mat3.d.ts +0 -65
- package/types/math/Mat4.d.ts +0 -176
- package/types/math/Plane.d.ts +0 -18
- package/types/math/Quat.d.ts +0 -379
- package/types/math/Ray.d.ts +0 -82
- package/types/math/Vec2.d.ts +0 -309
- package/types/math/Vec3.d.ts +0 -472
- package/types/math/Vec4.d.ts +0 -161
- package/types/math/coder.d.ts +0 -43
- package/types/math/index.d.ts +0 -11
- package/types/math.d.ts +0 -268
- package/types/mercator.d.ts +0 -92
- package/types/proj/EPSG3857.d.ts +0 -6
- package/types/proj/EPSG4326.d.ts +0 -6
- package/types/proj/Proj.d.ts +0 -42
- package/types/quadTree/EPSG4326QuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/EarthQuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/EntityCollectionNode.d.ts +0 -41
- package/types/quadTree/MarsQuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/Node.d.ts +0 -58
- package/types/quadTree/QuadTreeStrategy.d.ts +0 -21
- package/types/quadTree/Wgs84QuadTreeStrategy.d.ts +0 -3
- package/types/quadTree/index.d.ts +0 -12
- package/types/quadTree/quadTree.d.ts +0 -40
- package/types/renderer/Renderer.d.ts +0 -291
- package/types/renderer/RendererEvents.d.ts +0 -241
- package/types/res/images.d.ts +0 -2
- package/types/scene/Axes.d.ts +0 -10
- package/types/scene/BaseNode.d.ts +0 -60
- package/types/scene/Planet.d.ts +0 -594
- package/types/scene/RenderNode.d.ts +0 -152
- package/types/scene/SkyBox.d.ts +0 -9
- package/types/scene/index.d.ts +0 -4
- package/types/segment/Segment.d.ts +0 -273
- package/types/segment/SegmentLonLat.d.ts +0 -22
- package/types/segment/SegmentLonLatWgs84.d.ts +0 -4
- package/types/segment/Slice.d.ts +0 -10
- package/types/segment/segmentHelper.d.ts +0 -13
- package/types/shaders/atmos.d.ts +0 -4
- package/types/shaders/billboard.d.ts +0 -3
- package/types/shaders/depth.d.ts +0 -2
- package/types/shaders/drawnode.d.ts +0 -8
- package/types/shaders/geoObject.d.ts +0 -3
- package/types/shaders/label.d.ts +0 -4
- package/types/shaders/pickingMask.d.ts +0 -2
- package/types/shaders/pointCloud.d.ts +0 -2
- package/types/shaders/polyline.d.ts +0 -3
- package/types/shaders/ray.d.ts +0 -2
- package/types/shaders/screenFrame.d.ts +0 -2
- package/types/shaders/skybox.d.ts +0 -2
- package/types/shaders/toneMapping.d.ts +0 -2
- package/types/shaders/utils.d.ts +0 -1
- package/types/terrain/BilTerrain.d.ts +0 -14
- package/types/terrain/EmptyTerrain.d.ts +0 -87
- package/types/terrain/Geoid.d.ts +0 -17
- package/types/terrain/GlobusTerrain.d.ts +0 -122
- package/types/terrain/MapboxTerrain.d.ts +0 -14
- package/types/terrain/index.d.ts +0 -5
- package/types/ui/Button.d.ts +0 -21
- package/types/ui/ButtonGroup.d.ts +0 -12
- package/types/ui/Dialog.d.ts +0 -41
- package/types/ui/Slider.d.ts +0 -33
- package/types/ui/ToggleButton.d.ts +0 -10
- package/types/ui/UIhelpers.d.ts +0 -13
- package/types/ui/View.d.ts +0 -33
- package/types/ui/icons.d.ts +0 -1
- package/types/utils/BaseWorker.d.ts +0 -14
- package/types/utils/FontAtlas.d.ts +0 -16
- package/types/utils/GeoImageCreator.d.ts +0 -30
- package/types/utils/ImagesCacheManager.d.ts +0 -10
- package/types/utils/Loader.d.ts +0 -31
- package/types/utils/NormalMapCreator.d.ts +0 -39
- package/types/utils/PlainSegmentWorker.d.ts +0 -8
- package/types/utils/TerrainWorker.d.ts +0 -7
- package/types/utils/TextureAtlas.d.ts +0 -113
- package/types/utils/VectorTileCreator.d.ts +0 -14
- package/types/utils/colorTable.d.ts +0 -143
- package/types/utils/earcut.d.ts +0 -6
- package/types/utils/functionComposition.d.ts +0 -5
- package/types/utils/objParser.d.ts +0 -8
- package/types/utils/shared.d.ts +0 -241
- package/types/utils/units.d.ts +0 -20
- package/types/webgl/Framebuffer.d.ts +0 -134
- package/types/webgl/Handler.d.ts +0 -403
- package/types/webgl/Multisample.d.ts +0 -91
- package/types/webgl/Program.d.ts +0 -163
- package/types/webgl/ProgramController.d.ts +0 -89
- package/types/webgl/callbacks.d.ts +0 -1
- package/types/webgl/index.d.ts +0 -6
- package/types/webgl/types.d.ts +0 -2
- /package/{src/og → dist/@openglobus/res/fonts}/arial.js +0 -0
- /package/src/{og/ui/icons.js → ui/icons.ts} +0 -0
|
@@ -1,18 +1,47 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
1
|
+
import * as mercator from "../mercator";
|
|
2
|
+
import * as utils from "../utils/shared";
|
|
3
|
+
import {createColorRGB} from "../utils/shared";
|
|
4
|
+
import {createEvents, Events, EventsHandler} from "../Events";
|
|
5
|
+
import {Extent} from "../Extent";
|
|
6
|
+
import {LonLat} from "../LonLat";
|
|
7
|
+
import {Node} from "../quadTree/Node";
|
|
8
|
+
import {Material} from "./Material";
|
|
9
|
+
import {Planet} from "../scene/Planet";
|
|
10
|
+
import {Segment} from "../segment/Segment";
|
|
11
|
+
import {Vec3, NumberArray3} from "../math/Vec3";
|
|
12
|
+
import {NumberArray4} from "../math/Vec4";
|
|
13
|
+
import {IDefaultTextureParams, WebGLTextureExt} from "../webgl/Handler";
|
|
11
14
|
|
|
12
15
|
const FADING_RATIO = 15.8;
|
|
13
16
|
|
|
17
|
+
export interface ILayerParams {
|
|
18
|
+
properties?: any;
|
|
19
|
+
labelMaxLetters?: number;
|
|
20
|
+
displayInLayerSwitcher?: boolean;
|
|
21
|
+
opacity?: number;
|
|
22
|
+
minZoom?: number;
|
|
23
|
+
maxZoom?: number;
|
|
24
|
+
attribution?: string;
|
|
25
|
+
zIndex?: number;
|
|
26
|
+
isBaseLayer?: boolean;
|
|
27
|
+
defaultTextures?: [IDefaultTextureParams, IDefaultTextureParams];
|
|
28
|
+
visibility?: boolean;
|
|
29
|
+
fading?: boolean;
|
|
30
|
+
height?: number;
|
|
31
|
+
textureFilter?: string;
|
|
32
|
+
isSRGB?: boolean;
|
|
33
|
+
pickingEnabled?: boolean;
|
|
34
|
+
preLoadZoomLevels?: number[];
|
|
35
|
+
extent?: Extent | [[number, number], [number, number]];
|
|
36
|
+
ambient?: string | NumberArray3 | Vec3;
|
|
37
|
+
diffuse?: string | NumberArray3 | Vec3;
|
|
38
|
+
specular?: string | NumberArray3 | Vec3;
|
|
39
|
+
shininess?: number;
|
|
40
|
+
nightTextureCoefficient?: number;
|
|
41
|
+
}
|
|
42
|
+
|
|
14
43
|
/**
|
|
15
|
-
* @
|
|
44
|
+
* @class
|
|
16
45
|
* Base class; normally only used for creating subclasses and not instantiated in apps.
|
|
17
46
|
* A visual representation of raster or vector map data well known as a layer.
|
|
18
47
|
* @class
|
|
@@ -25,118 +54,215 @@ const FADING_RATIO = 15.8;
|
|
|
25
54
|
* @param {boolean} [options.isBaseLayer=false] - This is a base layer.
|
|
26
55
|
* @param {boolean} [options.visibility=true] - Layer visibility.
|
|
27
56
|
* @param {boolean} [options.displayInLayerSwitcher=true] - Presence of layer in dialog window of LayerSwitcher control.
|
|
28
|
-
* @param {boolean} [options.isSRGB=false] - Layer image webgl
|
|
57
|
+
* @param {boolean} [options.isSRGB=false] - Layer image webgl internal format.
|
|
29
58
|
* @param {Extent} [options.extent=[[-180.0, -90.0], [180.0, 90.0]]] - Visible extent.
|
|
30
59
|
* @param {string} [options.textureFilter="anisotropic"] - Image texture filter. Available values: "nearest", "linear", "mipmap" and "anisotropic".
|
|
31
60
|
*
|
|
32
|
-
* @fires
|
|
33
|
-
* @fires
|
|
34
|
-
* @fires
|
|
35
|
-
* @fires
|
|
36
|
-
* @fires
|
|
37
|
-
* @fires
|
|
38
|
-
* @fires
|
|
39
|
-
* @fires
|
|
40
|
-
* @fires
|
|
41
|
-
* @fires
|
|
42
|
-
* @fires
|
|
43
|
-
* @fires
|
|
44
|
-
* @fires
|
|
45
|
-
* @fires
|
|
46
|
-
* @fires
|
|
47
|
-
* @fires
|
|
48
|
-
* @fires
|
|
49
|
-
* @fires
|
|
50
|
-
* @fires
|
|
51
|
-
* @fires
|
|
52
|
-
* @fires
|
|
53
|
-
* @fires
|
|
54
|
-
* @fires
|
|
55
|
-
* @fires
|
|
56
|
-
* @fires
|
|
57
|
-
* @fires
|
|
61
|
+
* @fires EventsHandler<LayerEventsList>#visibilitychange
|
|
62
|
+
* @fires EventsHandler<LayerEventsList>#add
|
|
63
|
+
* @fires EventsHandler<LayerEventsList>#remove
|
|
64
|
+
* @fires EventsHandler<LayerEventsList>#mousemove
|
|
65
|
+
* @fires EventsHandler<LayerEventsList>#mouseenter
|
|
66
|
+
* @fires EventsHandler<LayerEventsList>#mouseleave
|
|
67
|
+
* @fires EventsHandler<LayerEventsList>#lclick
|
|
68
|
+
* @fires EventsHandler<LayerEventsList>#rclick
|
|
69
|
+
* @fires EventsHandler<LayerEventsList>#mclick
|
|
70
|
+
* @fires EventsHandler<LayerEventsList>#ldblclick
|
|
71
|
+
* @fires EventsHandler<LayerEventsList>#rdblclick
|
|
72
|
+
* @fires EventsHandler<LayerEventsList>#mdblclick
|
|
73
|
+
* @fires EventsHandler<LayerEventsList>#lup
|
|
74
|
+
* @fires EventsHandler<LayerEventsList>#rup
|
|
75
|
+
* @fires EventsHandler<LayerEventsList>#mup
|
|
76
|
+
* @fires EventsHandler<LayerEventsList>#ldown
|
|
77
|
+
* @fires EventsHandler<LayerEventsList>#rdown
|
|
78
|
+
* @fires EventsHandler<LayerEventsList>#mdown
|
|
79
|
+
* @fires EventsHandler<LayerEventsList>#lhold
|
|
80
|
+
* @fires EventsHandler<LayerEventsList>#rhold
|
|
81
|
+
* @fires EventsHandler<LayerEventsList>#mhold
|
|
82
|
+
* @fires EventsHandler<LayerEventsList>#mousewheel
|
|
83
|
+
* @fires EventsHandler<LayerEventsList>#touchmove
|
|
84
|
+
* @fires EventsHandler<LayerEventsList>#touchstart
|
|
85
|
+
* @fires EventsHandler<LayerEventsList>#touchend
|
|
86
|
+
* @fires EventsHandler<LayerEventsList>#doubletouch
|
|
58
87
|
*/
|
|
59
88
|
class Layer {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
89
|
+
|
|
90
|
+
static __counter__: number = 0;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Uniq identifier.
|
|
94
|
+
* @public
|
|
95
|
+
* @type {number}
|
|
96
|
+
*/
|
|
97
|
+
public __id: number;
|
|
98
|
+
|
|
99
|
+
/**
|
|
100
|
+
* Events handler.
|
|
101
|
+
* @public
|
|
102
|
+
* @type {Events}
|
|
103
|
+
*/
|
|
104
|
+
public events: EventsHandler<LayerEventsList>;
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Layer user name.
|
|
108
|
+
* @public
|
|
109
|
+
* @type {string}
|
|
110
|
+
*/
|
|
111
|
+
public name: string;
|
|
112
|
+
|
|
113
|
+
public properties: any;
|
|
114
|
+
|
|
115
|
+
public displayInLayerSwitcher: boolean;
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Minimal zoom level when layer is visible.
|
|
119
|
+
* @public
|
|
120
|
+
* @type {number}
|
|
121
|
+
*/
|
|
122
|
+
public minZoom: number;
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Maximal zoom level when layer is visible.
|
|
126
|
+
* @public
|
|
127
|
+
* @type {number}
|
|
128
|
+
*/
|
|
129
|
+
public maxZoom: number;
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Planet node.
|
|
133
|
+
* @public
|
|
134
|
+
* @type {Planet}
|
|
135
|
+
*/
|
|
136
|
+
public _planet: Planet | null;
|
|
137
|
+
|
|
138
|
+
public createTexture: Function | null;
|
|
139
|
+
|
|
140
|
+
public nightTextureCoefficient: number;
|
|
141
|
+
|
|
142
|
+
protected _hasImageryTiles: boolean;
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Layer global opacity.
|
|
146
|
+
* @public
|
|
147
|
+
* @type {number}
|
|
148
|
+
*/
|
|
149
|
+
protected _opacity: number;
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* Layer attribution.
|
|
153
|
+
* @protected
|
|
154
|
+
* @type {string}
|
|
155
|
+
*/
|
|
156
|
+
protected _attribution: string;
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Layer z-index.
|
|
160
|
+
* @protected
|
|
161
|
+
* @type {number}
|
|
162
|
+
*/
|
|
163
|
+
protected _zIndex: number;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Base layer type flag.
|
|
167
|
+
* @protected
|
|
168
|
+
* @type {boolean}
|
|
169
|
+
*/
|
|
170
|
+
protected _isBaseLayer: boolean;
|
|
171
|
+
|
|
172
|
+
public _defaultTextures: [IDefaultTextureParams | null, IDefaultTextureParams | null];
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Layer visibility.
|
|
176
|
+
* @protected
|
|
177
|
+
* @type {boolean}
|
|
178
|
+
*/
|
|
179
|
+
protected _visibility: boolean;
|
|
180
|
+
|
|
181
|
+
public _fading: boolean;
|
|
182
|
+
|
|
183
|
+
protected _fadingFactor: number;
|
|
184
|
+
|
|
185
|
+
public _fadingOpacity: number;
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Height over the ground.
|
|
189
|
+
* @public
|
|
190
|
+
* @type {number}
|
|
191
|
+
*/
|
|
192
|
+
public _height: number;
|
|
193
|
+
|
|
194
|
+
protected _textureFilter: string;
|
|
195
|
+
|
|
196
|
+
protected _isSRGB: boolean;
|
|
197
|
+
|
|
198
|
+
public _internalFormat: number | null;
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Visible degrees extent.
|
|
202
|
+
* @public
|
|
203
|
+
* @type {Extent}
|
|
204
|
+
*/
|
|
205
|
+
public _extent: Extent;
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Visible mercator extent.
|
|
209
|
+
* @public
|
|
210
|
+
* @type {Extent}
|
|
211
|
+
*/
|
|
212
|
+
public _extentMerc: Extent;
|
|
213
|
+
|
|
214
|
+
/**
|
|
215
|
+
* Layer picking color. Assign when added to the planet.
|
|
216
|
+
* @public
|
|
217
|
+
* @type {Vec3}
|
|
218
|
+
*/
|
|
219
|
+
public _pickingColor: Vec3;
|
|
220
|
+
|
|
221
|
+
public _pickingEnabled: boolean;
|
|
222
|
+
|
|
223
|
+
protected _isPreloadDone: boolean;
|
|
224
|
+
|
|
225
|
+
protected _preLoadZoomLevels: number[];
|
|
226
|
+
|
|
227
|
+
public _ambient: Float32Array | null;
|
|
228
|
+
public _diffuse: Float32Array | null;
|
|
229
|
+
public _specular: Float32Array | null;
|
|
230
|
+
|
|
231
|
+
public isVector: boolean = false;
|
|
232
|
+
|
|
233
|
+
constructor(name?: string | null, options: ILayerParams = {}) {
|
|
234
|
+
|
|
235
|
+
this.__id = Layer.__counter__++;
|
|
236
|
+
|
|
237
|
+
this.events = createEvents<LayerEventsList>(LAYER_EVENTS, this);
|
|
238
|
+
|
|
66
239
|
this.name = name || "noname";
|
|
67
240
|
|
|
68
241
|
this.properties = options.properties || {};
|
|
69
242
|
|
|
70
|
-
this._labelMaxLetters = options.labelMaxLetters;
|
|
71
|
-
|
|
72
243
|
this.displayInLayerSwitcher =
|
|
73
244
|
options.displayInLayerSwitcher !== undefined ? options.displayInLayerSwitcher : true;
|
|
74
245
|
|
|
75
246
|
this._hasImageryTiles = true;
|
|
76
247
|
|
|
77
|
-
/**
|
|
78
|
-
* Layer global opacity.
|
|
79
|
-
* @public
|
|
80
|
-
* @type {number}
|
|
81
|
-
*/
|
|
82
248
|
this._opacity = options.opacity || 1.0;
|
|
83
249
|
|
|
84
|
-
/**
|
|
85
|
-
* Minimal zoom level when layer is visibile.
|
|
86
|
-
* @public
|
|
87
|
-
* @type {number}
|
|
88
|
-
*/
|
|
89
250
|
this.minZoom = options.minZoom || 0;
|
|
90
251
|
|
|
91
|
-
/**
|
|
92
|
-
* Maximal zoom level when layer is visibile.
|
|
93
|
-
* @public
|
|
94
|
-
* @type {number}
|
|
95
|
-
*/
|
|
96
252
|
this.maxZoom = options.maxZoom || 50;
|
|
97
253
|
|
|
98
|
-
/**
|
|
99
|
-
* Planet node.
|
|
100
|
-
* @protected
|
|
101
|
-
* @type {Planet}
|
|
102
|
-
*/
|
|
103
254
|
this._planet = null;
|
|
104
255
|
|
|
105
|
-
|
|
106
|
-
* Unic identifier.
|
|
107
|
-
* @protected
|
|
108
|
-
* @type {number}
|
|
109
|
-
*/
|
|
110
|
-
this._id = Layer.__layersCounter++;
|
|
256
|
+
this.isVector = false;
|
|
111
257
|
|
|
112
|
-
/**
|
|
113
|
-
* Layer attribution.
|
|
114
|
-
* @protected
|
|
115
|
-
* @type {string}
|
|
116
|
-
*/
|
|
117
258
|
this._attribution = options.attribution || "";
|
|
118
259
|
|
|
119
|
-
/**
|
|
120
|
-
* Layer z-index.
|
|
121
|
-
* @protected
|
|
122
|
-
* @type {number}
|
|
123
|
-
*/
|
|
124
260
|
this._zIndex = options.zIndex || 0;
|
|
125
261
|
|
|
126
|
-
/**
|
|
127
|
-
* Base layer type flag.
|
|
128
|
-
* @protected
|
|
129
|
-
* @type {boolean}
|
|
130
|
-
*/
|
|
131
262
|
this._isBaseLayer = options.isBaseLayer || false;
|
|
132
263
|
|
|
133
264
|
this._defaultTextures = options.defaultTextures || [null, null];
|
|
134
265
|
|
|
135
|
-
/**
|
|
136
|
-
* Layer visibility.
|
|
137
|
-
* @protected
|
|
138
|
-
* @type {boolean}
|
|
139
|
-
*/
|
|
140
266
|
this._visibility = options.visibility !== undefined ? options.visibility : true;
|
|
141
267
|
|
|
142
268
|
this._fading = options.fading || false;
|
|
@@ -149,19 +275,9 @@ class Layer {
|
|
|
149
275
|
this._fadingOpacity = this._opacity;
|
|
150
276
|
}
|
|
151
277
|
|
|
152
|
-
/**
|
|
153
|
-
* Height over the ground.
|
|
154
|
-
* @protected
|
|
155
|
-
* @type {number}
|
|
156
|
-
*/
|
|
157
278
|
this._height = options.height || 0;
|
|
158
279
|
|
|
159
|
-
|
|
160
|
-
* Visible degrees extent.
|
|
161
|
-
* @protected
|
|
162
|
-
* @type {Extent}
|
|
163
|
-
*/
|
|
164
|
-
this._extent = null;
|
|
280
|
+
this._extent = new Extent();
|
|
165
281
|
|
|
166
282
|
this.createTexture = null;
|
|
167
283
|
|
|
@@ -171,12 +287,7 @@ class Layer {
|
|
|
171
287
|
|
|
172
288
|
this._internalFormat = null;
|
|
173
289
|
|
|
174
|
-
|
|
175
|
-
* Visible mercator extent.
|
|
176
|
-
* @protected
|
|
177
|
-
* @type {Extent}
|
|
178
|
-
*/
|
|
179
|
-
this._extentMerc = null;
|
|
290
|
+
this._extentMerc = new Extent();
|
|
180
291
|
|
|
181
292
|
// Setting the extent up
|
|
182
293
|
this.setExtent(
|
|
@@ -199,13 +310,6 @@ class Layer {
|
|
|
199
310
|
|
|
200
311
|
this._preLoadZoomLevels = options.preLoadZoomLevels || [0, 1];
|
|
201
312
|
|
|
202
|
-
/**
|
|
203
|
-
* Events handler.
|
|
204
|
-
* @public
|
|
205
|
-
* @type {Events}
|
|
206
|
-
*/
|
|
207
|
-
this.events = new Events(options.events ? [...EVENT_NAMES, ...options.events] : EVENT_NAMES, this);
|
|
208
|
-
|
|
209
313
|
this._ambient = null;
|
|
210
314
|
this._diffuse = null;
|
|
211
315
|
this._specular = null;
|
|
@@ -226,10 +330,10 @@ class Layer {
|
|
|
226
330
|
this._specular = new Float32Array([s.x, s.y, s.z, shininess]);
|
|
227
331
|
}
|
|
228
332
|
|
|
229
|
-
this.nightTextureCoefficient = options.nightTextureCoefficient ||
|
|
333
|
+
this.nightTextureCoefficient = options.nightTextureCoefficient || 1.0;
|
|
230
334
|
}
|
|
231
335
|
|
|
232
|
-
set diffuse(rgb) {
|
|
336
|
+
public set diffuse(rgb: string | NumberArray3 | Vec3 | null | undefined) {
|
|
233
337
|
if (rgb) {
|
|
234
338
|
let vec = createColorRGB(rgb);
|
|
235
339
|
this._diffuse = new Float32Array(vec.toArray());
|
|
@@ -238,7 +342,7 @@ class Layer {
|
|
|
238
342
|
}
|
|
239
343
|
}
|
|
240
344
|
|
|
241
|
-
set ambient(rgb) {
|
|
345
|
+
public set ambient(rgb: string | NumberArray3 | Vec3 | null | undefined) {
|
|
242
346
|
if (rgb) {
|
|
243
347
|
let vec = createColorRGB(rgb);
|
|
244
348
|
this._ambient = new Float32Array(vec.toArray());
|
|
@@ -247,26 +351,26 @@ class Layer {
|
|
|
247
351
|
}
|
|
248
352
|
}
|
|
249
353
|
|
|
250
|
-
set specular(rgb) {
|
|
354
|
+
public set specular(rgb: string | NumberArray3 | Vec3 | null | undefined) {
|
|
251
355
|
if (rgb) {
|
|
252
356
|
let vec = createColorRGB(rgb);
|
|
253
|
-
this._specular = new Float32Array([vec.x, vec.y, vec.y, this._specular[3]]);
|
|
357
|
+
this._specular = new Float32Array([vec.x, vec.y, vec.y, this._specular ? this._specular[3] : 0.0]);
|
|
254
358
|
} else {
|
|
255
359
|
this._specular = null;
|
|
256
360
|
}
|
|
257
361
|
}
|
|
258
362
|
|
|
259
|
-
set shininess(v) {
|
|
363
|
+
public set shininess(v: number) {
|
|
260
364
|
if (this._specular) {
|
|
261
365
|
this._specular[3] = v;
|
|
262
366
|
}
|
|
263
367
|
}
|
|
264
368
|
|
|
265
|
-
get normalMapCreator() {
|
|
266
|
-
|
|
267
|
-
}
|
|
369
|
+
// get normalMapCreator() {
|
|
370
|
+
// return this._normalMapCreator;
|
|
371
|
+
// }
|
|
268
372
|
|
|
269
|
-
static getTMS(x, y, z) {
|
|
373
|
+
static getTMS(x: number, y: number, z: number): { x: number; y: number; z: number } {
|
|
270
374
|
return {
|
|
271
375
|
x: x,
|
|
272
376
|
y: (1 << z) - y - 1,
|
|
@@ -274,30 +378,19 @@ class Layer {
|
|
|
274
378
|
};
|
|
275
379
|
}
|
|
276
380
|
|
|
277
|
-
static getTileIndex(...arr) {
|
|
381
|
+
static getTileIndex(...arr: number[]): string {
|
|
278
382
|
return arr.join("_");
|
|
279
383
|
}
|
|
280
384
|
|
|
281
|
-
|
|
282
|
-
if (!this.__lcounter && this.__lcounter !== 0) {
|
|
283
|
-
this.__lcounter = 0;
|
|
284
|
-
}
|
|
285
|
-
return this.__lcounter;
|
|
286
|
-
}
|
|
287
|
-
|
|
288
|
-
static set __layersCounter(n) {
|
|
289
|
-
this.__lcounter = n;
|
|
290
|
-
}
|
|
291
|
-
|
|
292
|
-
get instanceName() {
|
|
385
|
+
public get instanceName(): string {
|
|
293
386
|
return "Layer";
|
|
294
387
|
}
|
|
295
388
|
|
|
296
|
-
get rendererEvents() {
|
|
389
|
+
public get rendererEvents(): EventsHandler<LayerEventsList> {
|
|
297
390
|
return this.events;
|
|
298
391
|
}
|
|
299
392
|
|
|
300
|
-
set opacity(opacity) {
|
|
393
|
+
public set opacity(opacity: number) {
|
|
301
394
|
if (opacity !== this._opacity) {
|
|
302
395
|
if (this._fading) {
|
|
303
396
|
if (opacity > this._opacity) {
|
|
@@ -312,12 +405,12 @@ class Layer {
|
|
|
312
405
|
}
|
|
313
406
|
}
|
|
314
407
|
|
|
315
|
-
set pickingEnabled(picking) {
|
|
316
|
-
this._pickingEnabled = picking
|
|
408
|
+
public set pickingEnabled(picking: boolean) {
|
|
409
|
+
this._pickingEnabled = picking;
|
|
317
410
|
}
|
|
318
411
|
|
|
319
|
-
get pickingEnabled() {
|
|
320
|
-
return
|
|
412
|
+
public get pickingEnabled(): boolean {
|
|
413
|
+
return this._pickingEnabled;
|
|
321
414
|
}
|
|
322
415
|
|
|
323
416
|
/**
|
|
@@ -326,7 +419,7 @@ class Layer {
|
|
|
326
419
|
* @virtual
|
|
327
420
|
* @returns {boolean} - Imagery tiles flag.
|
|
328
421
|
*/
|
|
329
|
-
hasImageryTiles() {
|
|
422
|
+
public hasImageryTiles(): boolean {
|
|
330
423
|
return this._hasImageryTiles;
|
|
331
424
|
}
|
|
332
425
|
|
|
@@ -335,8 +428,19 @@ class Layer {
|
|
|
335
428
|
* @public
|
|
336
429
|
* @returns {string} - Layer object id.
|
|
337
430
|
*/
|
|
338
|
-
getID() {
|
|
339
|
-
return this.
|
|
431
|
+
public getID(): number {
|
|
432
|
+
return this.__id;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
public get id(): number {
|
|
436
|
+
return this.__id;
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
/**
|
|
440
|
+
* @todo: remove after all
|
|
441
|
+
*/
|
|
442
|
+
public get _id(): number {
|
|
443
|
+
return this.__id;
|
|
340
444
|
}
|
|
341
445
|
|
|
342
446
|
/**
|
|
@@ -345,8 +449,8 @@ class Layer {
|
|
|
345
449
|
* @param {Layer} layer - Layer instance to compare.
|
|
346
450
|
* @returns {boolean} - Returns true if the layers is the same instance of the input.
|
|
347
451
|
*/
|
|
348
|
-
isEqual(layer) {
|
|
349
|
-
return layer
|
|
452
|
+
public isEqual(layer: Layer): boolean {
|
|
453
|
+
return layer.__id === this.__id;
|
|
350
454
|
}
|
|
351
455
|
|
|
352
456
|
/**
|
|
@@ -355,21 +459,23 @@ class Layer {
|
|
|
355
459
|
* @virtual
|
|
356
460
|
* @param {Planet} planet - Planet render node.
|
|
357
461
|
*/
|
|
358
|
-
_assignPlanet(planet) {
|
|
462
|
+
public _assignPlanet(planet: Planet) {
|
|
359
463
|
|
|
360
464
|
this._planet = planet;
|
|
465
|
+
|
|
361
466
|
planet._layers.push(this);
|
|
362
467
|
|
|
363
|
-
if (planet.renderer.isInitialized()) {
|
|
468
|
+
if (planet.renderer && planet.renderer.isInitialized()) {
|
|
364
469
|
// TODO: webgl1
|
|
365
470
|
if (this._isSRGB) {
|
|
366
|
-
this._internalFormat = planet.renderer.handler.gl
|
|
471
|
+
this._internalFormat = planet.renderer.handler.gl!.SRGB8_ALPHA8;
|
|
367
472
|
} else {
|
|
368
|
-
this._internalFormat = planet.renderer.handler.gl
|
|
473
|
+
this._internalFormat = planet.renderer.handler.gl!.RGBA8;
|
|
369
474
|
}
|
|
370
475
|
this.createTexture = planet.renderer.handler.createTexture[this._textureFilter];
|
|
371
476
|
|
|
372
477
|
this.events.on("visibilitychange", planet._onLayerVisibilityChanged, planet);
|
|
478
|
+
|
|
373
479
|
if (this._isBaseLayer && this._visibility) {
|
|
374
480
|
planet.setBaseLayer(this);
|
|
375
481
|
}
|
|
@@ -385,8 +491,8 @@ class Layer {
|
|
|
385
491
|
}
|
|
386
492
|
}
|
|
387
493
|
|
|
388
|
-
get isIdle() {
|
|
389
|
-
return this._planet && this._planet._terrainCompletedActivated;
|
|
494
|
+
public get isIdle(): boolean {
|
|
495
|
+
return this._planet && this._planet._terrainCompletedActivated || false;
|
|
390
496
|
}
|
|
391
497
|
|
|
392
498
|
/**
|
|
@@ -394,8 +500,8 @@ class Layer {
|
|
|
394
500
|
* @protected
|
|
395
501
|
* @virtual
|
|
396
502
|
*/
|
|
397
|
-
_bindPicking() {
|
|
398
|
-
this._planet && this._planet.renderer.assignPickingColor(this);
|
|
503
|
+
protected _bindPicking() {
|
|
504
|
+
this._planet && this._planet.renderer && this._planet.renderer.assignPickingColor<Layer>(this);
|
|
399
505
|
}
|
|
400
506
|
|
|
401
507
|
/**
|
|
@@ -403,7 +509,7 @@ class Layer {
|
|
|
403
509
|
* @public
|
|
404
510
|
* @param {Planet} planet - Adds layer to the planet.
|
|
405
511
|
*/
|
|
406
|
-
addTo(planet) {
|
|
512
|
+
public addTo(planet: Planet) {
|
|
407
513
|
if (!this._planet) {
|
|
408
514
|
this._assignPlanet(planet);
|
|
409
515
|
}
|
|
@@ -414,13 +520,13 @@ class Layer {
|
|
|
414
520
|
* @public
|
|
415
521
|
* @returns {Layer} -This layer.
|
|
416
522
|
*/
|
|
417
|
-
remove() {
|
|
523
|
+
public remove(): this {
|
|
418
524
|
let p = this._planet;
|
|
419
525
|
if (p) {
|
|
420
526
|
//TODO: replace to planet
|
|
421
527
|
for (let i = 0; i < p._layers.length; i++) {
|
|
422
528
|
if (this.isEqual(p._layers[i])) {
|
|
423
|
-
p.renderer.clearPickingColor(this);
|
|
529
|
+
p.renderer && p.renderer.clearPickingColor(this);
|
|
424
530
|
p._layers.splice(i, 1);
|
|
425
531
|
p.updateVisibleLayers();
|
|
426
532
|
this.clear();
|
|
@@ -440,7 +546,7 @@ class Layer {
|
|
|
440
546
|
* Clears layer material.
|
|
441
547
|
* @virtual
|
|
442
548
|
*/
|
|
443
|
-
clear() {
|
|
549
|
+
public clear() {
|
|
444
550
|
if (this._planet) {
|
|
445
551
|
this._planet._clearLayerMaterial(this);
|
|
446
552
|
}
|
|
@@ -448,9 +554,8 @@ class Layer {
|
|
|
448
554
|
|
|
449
555
|
/**
|
|
450
556
|
* Returns planet instance.
|
|
451
|
-
* @virtual
|
|
452
557
|
*/
|
|
453
|
-
get planet() {
|
|
558
|
+
get planet(): Planet | null {
|
|
454
559
|
return this._planet;
|
|
455
560
|
}
|
|
456
561
|
|
|
@@ -459,19 +564,28 @@ class Layer {
|
|
|
459
564
|
* @public
|
|
460
565
|
* @param {string} html - HTML code that represents layer attribution, it could be just a text.
|
|
461
566
|
*/
|
|
462
|
-
setAttribution(html) {
|
|
567
|
+
public setAttribution(html: string) {
|
|
463
568
|
if (this._attribution !== html) {
|
|
464
569
|
this._attribution = html;
|
|
465
570
|
this._planet && this._planet.updateAttributionsList();
|
|
466
571
|
}
|
|
467
572
|
}
|
|
468
573
|
|
|
574
|
+
/**
|
|
575
|
+
* Gets layer attribution.
|
|
576
|
+
* @public
|
|
577
|
+
* @returns {string} Layer attribution
|
|
578
|
+
*/
|
|
579
|
+
public getAttribution(): string {
|
|
580
|
+
return this._attribution;
|
|
581
|
+
}
|
|
582
|
+
|
|
469
583
|
/**
|
|
470
584
|
* Sets height over the ground.
|
|
471
585
|
* @public
|
|
472
586
|
* @param {number} height - Layer height.
|
|
473
587
|
*/
|
|
474
|
-
setHeight(height) {
|
|
588
|
+
public setHeight(height: number) {
|
|
475
589
|
this._height = height;
|
|
476
590
|
this._planet && this._planet.updateVisibleLayers();
|
|
477
591
|
}
|
|
@@ -481,7 +595,7 @@ class Layer {
|
|
|
481
595
|
* @public
|
|
482
596
|
* @returns {number} -
|
|
483
597
|
*/
|
|
484
|
-
getHeight() {
|
|
598
|
+
public getHeight(): number {
|
|
485
599
|
return this._height;
|
|
486
600
|
}
|
|
487
601
|
|
|
@@ -490,7 +604,7 @@ class Layer {
|
|
|
490
604
|
* @public
|
|
491
605
|
* @param {number} zIndex - Layer z-index.
|
|
492
606
|
*/
|
|
493
|
-
setZIndex(zIndex) {
|
|
607
|
+
public setZIndex(zIndex: number) {
|
|
494
608
|
this._zIndex = zIndex;
|
|
495
609
|
this._planet && this._planet.updateVisibleLayers();
|
|
496
610
|
}
|
|
@@ -500,7 +614,7 @@ class Layer {
|
|
|
500
614
|
* @public
|
|
501
615
|
* @returns {number} -
|
|
502
616
|
*/
|
|
503
|
-
getZIndex() {
|
|
617
|
+
public getZIndex(): number {
|
|
504
618
|
return this._zIndex;
|
|
505
619
|
}
|
|
506
620
|
|
|
@@ -508,10 +622,10 @@ class Layer {
|
|
|
508
622
|
* Set zIndex to the maximal value depend on other layers on the planet.
|
|
509
623
|
* @public
|
|
510
624
|
*/
|
|
511
|
-
bringToFront() {
|
|
625
|
+
public bringToFront() {
|
|
512
626
|
if (this._planet) {
|
|
513
|
-
|
|
514
|
-
|
|
627
|
+
let vl = this._planet.visibleTileLayers;
|
|
628
|
+
let l = vl[vl.length - 1];
|
|
515
629
|
if (!l.isEqual(this)) {
|
|
516
630
|
this.setZIndex(l.getZIndex() + 1);
|
|
517
631
|
}
|
|
@@ -523,19 +637,19 @@ class Layer {
|
|
|
523
637
|
* @public
|
|
524
638
|
* @returns {boolean} - Base layer flag.
|
|
525
639
|
*/
|
|
526
|
-
isBaseLayer() {
|
|
640
|
+
public isBaseLayer(): boolean {
|
|
527
641
|
return this._isBaseLayer;
|
|
528
642
|
}
|
|
529
643
|
|
|
530
644
|
/**
|
|
531
645
|
* Sets base layer type true.
|
|
532
646
|
* @public
|
|
533
|
-
* @param {boolean}
|
|
647
|
+
* @param {boolean} isBaseLayer -
|
|
534
648
|
*/
|
|
535
|
-
setBaseLayer(
|
|
536
|
-
this._isBaseLayer =
|
|
649
|
+
public setBaseLayer(isBaseLayer: boolean) {
|
|
650
|
+
this._isBaseLayer = isBaseLayer;
|
|
537
651
|
if (this._planet) {
|
|
538
|
-
if (!
|
|
652
|
+
if (!isBaseLayer && this._planet.baseLayer && this.isEqual(this._planet.baseLayer)) {
|
|
539
653
|
this._planet.baseLayer = null;
|
|
540
654
|
}
|
|
541
655
|
this._planet.updateVisibleLayers();
|
|
@@ -548,7 +662,7 @@ class Layer {
|
|
|
548
662
|
* @virtual
|
|
549
663
|
* @param {boolean} visibility - Layer visibility.
|
|
550
664
|
*/
|
|
551
|
-
setVisibility(visibility) {
|
|
665
|
+
public setVisibility(visibility: boolean) {
|
|
552
666
|
if (visibility !== this._visibility) {
|
|
553
667
|
this._visibility = visibility;
|
|
554
668
|
if (this._planet) {
|
|
@@ -565,22 +679,34 @@ class Layer {
|
|
|
565
679
|
}
|
|
566
680
|
}
|
|
567
681
|
|
|
568
|
-
_forceMaterialApply(segment) {
|
|
682
|
+
protected _forceMaterialApply(segment: Segment) {
|
|
569
683
|
let pm = segment.materials,
|
|
570
|
-
m = pm[this.
|
|
684
|
+
m = pm[this.__id];
|
|
571
685
|
|
|
572
686
|
if (!m) {
|
|
573
|
-
m = pm[this.
|
|
687
|
+
m = pm[this.__id] = this.createMaterial(segment);
|
|
574
688
|
}
|
|
575
689
|
|
|
576
690
|
if (!m.isReady) {
|
|
577
|
-
this._planet
|
|
691
|
+
this._planet!._renderCompleted = false;
|
|
578
692
|
}
|
|
579
693
|
|
|
580
694
|
this.applyMaterial(m, true);
|
|
581
695
|
}
|
|
582
696
|
|
|
583
|
-
|
|
697
|
+
public clearMaterial(material: Material) {
|
|
698
|
+
//empty
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
public loadMaterial(material: Material, forceLoading: boolean = false) {
|
|
702
|
+
//empty
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
public applyMaterial(m: Material, isForced: boolean = false): NumberArray4 {
|
|
706
|
+
return [0, 0, 1, 1];
|
|
707
|
+
}
|
|
708
|
+
|
|
709
|
+
protected _preLoadRecursive(node: Node, maxZoom: number) {
|
|
584
710
|
if (node.segment.tileZoom > maxZoom) {
|
|
585
711
|
return;
|
|
586
712
|
}
|
|
@@ -595,7 +721,7 @@ class Layer {
|
|
|
595
721
|
}
|
|
596
722
|
}
|
|
597
723
|
|
|
598
|
-
_preLoad() {
|
|
724
|
+
protected _preLoad() {
|
|
599
725
|
if (this._planet && this._preLoadZoomLevels.length) {
|
|
600
726
|
|
|
601
727
|
let p = this._planet,
|
|
@@ -613,7 +739,7 @@ class Layer {
|
|
|
613
739
|
* @public
|
|
614
740
|
* @returns {boolean} - Layer visibility.
|
|
615
741
|
*/
|
|
616
|
-
getVisibility() {
|
|
742
|
+
public getVisibility(): boolean {
|
|
617
743
|
return this._visibility;
|
|
618
744
|
}
|
|
619
745
|
|
|
@@ -622,17 +748,21 @@ class Layer {
|
|
|
622
748
|
* @public
|
|
623
749
|
* @param {Extent} extent - Layer visible geographical extent.
|
|
624
750
|
*/
|
|
625
|
-
setExtent(extent) {
|
|
626
|
-
|
|
751
|
+
public setExtent(extent: Extent) {
|
|
752
|
+
let sw = extent.southWest.clone(),
|
|
627
753
|
ne = extent.northEast.clone();
|
|
754
|
+
|
|
628
755
|
if (sw.lat < mercator.MIN_LAT) {
|
|
629
756
|
sw.lat = mercator.MIN_LAT;
|
|
630
757
|
}
|
|
758
|
+
|
|
631
759
|
if (ne.lat > mercator.MAX_LAT) {
|
|
632
760
|
ne.lat = mercator.MAX_LAT;
|
|
633
761
|
}
|
|
762
|
+
|
|
634
763
|
this._extent = extent.clone();
|
|
635
764
|
this._extentMerc = new Extent(sw.forwardMercator(), ne.forwardMercator());
|
|
765
|
+
|
|
636
766
|
this._correctFullExtent();
|
|
637
767
|
}
|
|
638
768
|
|
|
@@ -641,15 +771,24 @@ class Layer {
|
|
|
641
771
|
* @public
|
|
642
772
|
* @return {Extent} - Layer geodetic extent.
|
|
643
773
|
*/
|
|
644
|
-
getExtent() {
|
|
774
|
+
public getExtent(): Extent {
|
|
645
775
|
return this._extent;
|
|
646
776
|
}
|
|
647
777
|
|
|
778
|
+
/**
|
|
779
|
+
* Gets layer web-mercator extent.
|
|
780
|
+
* @public
|
|
781
|
+
* @return {Extent} - Layer extent.
|
|
782
|
+
*/
|
|
783
|
+
public getExtentMerc(): Extent {
|
|
784
|
+
return this._extentMerc;
|
|
785
|
+
}
|
|
786
|
+
|
|
648
787
|
/**
|
|
649
788
|
* Special correction of the whole globe extent.
|
|
650
789
|
* @protected
|
|
651
790
|
*/
|
|
652
|
-
_correctFullExtent() {
|
|
791
|
+
protected _correctFullExtent() {
|
|
653
792
|
// var e = this._extent,
|
|
654
793
|
// em = this._extentMerc;
|
|
655
794
|
// var ENLARGE_MERCATOR_LON = og.mercator.POLE + 50000;
|
|
@@ -668,20 +807,18 @@ class Layer {
|
|
|
668
807
|
// }
|
|
669
808
|
}
|
|
670
809
|
|
|
671
|
-
get opacity() {
|
|
810
|
+
public get opacity(): number {
|
|
672
811
|
return this._opacity;
|
|
673
812
|
}
|
|
674
813
|
|
|
675
|
-
get screenOpacity() {
|
|
814
|
+
public get screenOpacity(): number {
|
|
676
815
|
return this._fading ? this._fadingOpacity : this._opacity;
|
|
677
816
|
}
|
|
678
817
|
|
|
679
|
-
_refreshFadingOpacity() {
|
|
680
|
-
|
|
818
|
+
public _refreshFadingOpacity() {
|
|
819
|
+
let p = this._planet!;
|
|
681
820
|
if (
|
|
682
|
-
this._visibility &&
|
|
683
|
-
p._viewExtent &&
|
|
684
|
-
p._viewExtent.overlaps(this._extent) &&
|
|
821
|
+
this._visibility && p.getViewExtent().overlaps(this._extent) &&
|
|
685
822
|
p.maxCurrZoom >= this.minZoom &&
|
|
686
823
|
p.minCurrZoom <= this.maxZoom
|
|
687
824
|
) {
|
|
@@ -696,47 +833,86 @@ class Layer {
|
|
|
696
833
|
|
|
697
834
|
return false;
|
|
698
835
|
} else {
|
|
699
|
-
//this._fadingOpacity -= this._opacity / FADING_RATIO;
|
|
700
|
-
//if (this._fadingOpacity < 0.0) {
|
|
701
836
|
this._fadingOpacity = 0.0;
|
|
702
|
-
//}
|
|
703
837
|
return !this._visibility;
|
|
704
838
|
}
|
|
705
839
|
}
|
|
706
840
|
|
|
707
|
-
createMaterial(segment) {
|
|
841
|
+
public createMaterial(segment: Segment): Material {
|
|
708
842
|
return new Material(segment, this);
|
|
709
843
|
}
|
|
710
844
|
|
|
711
|
-
redraw() {
|
|
845
|
+
public redraw() {
|
|
712
846
|
if (this._planet) {
|
|
713
|
-
this._planet._quadTree.traverseTree((n) => {
|
|
714
|
-
if (n.segment.materials[this._id]) {
|
|
715
|
-
n.segment.materials[this._id].clear();
|
|
716
|
-
}
|
|
717
|
-
}
|
|
718
|
-
);
|
|
719
|
-
|
|
720
|
-
this._planet._quadTreeNorth.traverseTree((n) => {
|
|
721
|
-
if (n.segment.materials[this._id]) {
|
|
722
|
-
n.segment.materials[this._id].clear();
|
|
723
|
-
}
|
|
724
|
-
}
|
|
725
|
-
);
|
|
726
847
|
|
|
727
|
-
this._planet.
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
848
|
+
this._planet.quadTreeStrategy.clearLayerMaterial(this);
|
|
849
|
+
|
|
850
|
+
// this._planet._quadTree.traverseTree((n: Node) => {
|
|
851
|
+
// if (n.segment.materials[this.__id]) {
|
|
852
|
+
// n.segment.materials[this.__id].clear();
|
|
853
|
+
// }
|
|
854
|
+
// }
|
|
855
|
+
// );
|
|
856
|
+
//
|
|
857
|
+
// this._planet._quadTreeNorth.traverseTree((n: Node) => {
|
|
858
|
+
// if (n.segment.materials[this.__id]) {
|
|
859
|
+
// n.segment.materials[this.__id].clear();
|
|
860
|
+
// }
|
|
861
|
+
// }
|
|
862
|
+
// );
|
|
863
|
+
//
|
|
864
|
+
// this._planet._quadTreeSouth.traverseTree((n: Node) => {
|
|
865
|
+
// if (n.segment.materials[this.__id]) {
|
|
866
|
+
// n.segment.materials[this.__id].clear();
|
|
867
|
+
// }
|
|
868
|
+
// }
|
|
869
|
+
// );
|
|
733
870
|
}
|
|
734
871
|
}
|
|
872
|
+
|
|
873
|
+
public abortMaterialLoading(material: Material) {
|
|
874
|
+
|
|
875
|
+
}
|
|
876
|
+
|
|
877
|
+
public abortLoading() {
|
|
878
|
+
|
|
879
|
+
}
|
|
735
880
|
}
|
|
736
881
|
|
|
737
|
-
|
|
882
|
+
export type LayerEventsList = [
|
|
883
|
+
"visibilitychange",
|
|
884
|
+
"add",
|
|
885
|
+
"remove",
|
|
886
|
+
"mousemove",
|
|
887
|
+
"mouseenter",
|
|
888
|
+
"mouseleave",
|
|
889
|
+
"lclick",
|
|
890
|
+
"rclick",
|
|
891
|
+
"mclick",
|
|
892
|
+
"ldblclick",
|
|
893
|
+
"rdblclick",
|
|
894
|
+
"mdblclick",
|
|
895
|
+
"lup",
|
|
896
|
+
"rup",
|
|
897
|
+
"mup",
|
|
898
|
+
"ldown",
|
|
899
|
+
"rdown",
|
|
900
|
+
"mdown",
|
|
901
|
+
"lhold",
|
|
902
|
+
"rhold",
|
|
903
|
+
"mhold",
|
|
904
|
+
"mousewheel",
|
|
905
|
+
"touchmove",
|
|
906
|
+
"touchstart",
|
|
907
|
+
"touchend",
|
|
908
|
+
"doubletouch",
|
|
909
|
+
"touchleave",
|
|
910
|
+
"touchenter"
|
|
911
|
+
];
|
|
912
|
+
|
|
913
|
+
export const LAYER_EVENTS: LayerEventsList = [
|
|
738
914
|
/**
|
|
739
|
-
* Triggered when layer
|
|
915
|
+
* Triggered when layer visibility changed.
|
|
740
916
|
* @event og.Layer#visibilitychange
|
|
741
917
|
*/
|
|
742
918
|
"visibilitychange",
|
|
@@ -904,4 +1080,4 @@ const EVENT_NAMES = [
|
|
|
904
1080
|
"touchenter"
|
|
905
1081
|
];
|
|
906
1082
|
|
|
907
|
-
export {
|
|
1083
|
+
export {Layer};
|