@openglobus/og 0.19.4 → 0.20.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 +3 -3
- package/css/og.css +18 -4
- package/lib/@openglobus/js/Clock.d.ts +106 -0
- package/lib/@openglobus/js/Deferred.d.ts +6 -0
- package/lib/@openglobus/js/Events.d.ts +90 -0
- package/lib/@openglobus/js/Extent.d.ts +145 -0
- package/lib/@openglobus/js/Globe.d.ts +134 -0
- package/lib/@openglobus/js/ImageCanvas.d.ts +128 -0
- package/lib/@openglobus/js/Lock.d.ts +15 -0
- package/lib/@openglobus/js/LonLat.d.ts +128 -0
- package/lib/@openglobus/js/Object3d.d.ts +64 -0
- package/lib/@openglobus/js/Popup.d.ts +46 -0
- package/lib/@openglobus/js/QueueArray.d.ts +16 -0
- package/lib/@openglobus/js/Rectangle.d.ts +76 -0
- package/lib/@openglobus/js/Stack.d.ts +20 -0
- package/lib/@openglobus/js/astro/astro.d.ts +39 -0
- package/lib/@openglobus/js/astro/earth.d.ts +8 -0
- package/lib/@openglobus/js/astro/jd.d.ts +234 -0
- package/lib/@openglobus/js/astro/orbit.d.ts +5 -0
- package/lib/@openglobus/js/astro/rotation.d.ts +2 -0
- package/lib/@openglobus/js/bv/Box.d.ts +32 -0
- package/lib/@openglobus/js/bv/Sphere.d.ts +37 -0
- package/lib/@openglobus/js/bv/index.d.ts +3 -0
- package/lib/@openglobus/js/camera/Camera.d.ts +314 -0
- package/lib/@openglobus/js/camera/Frustum.d.ts +139 -0
- package/lib/@openglobus/js/camera/PlanetCamera.d.ts +234 -0
- package/lib/@openglobus/js/camera/index.d.ts +3 -0
- package/lib/@openglobus/js/cons.d.ts +40 -0
- package/lib/@openglobus/js/control/Atmosphere.d.ts +16 -0
- package/lib/@openglobus/js/control/CompassButton.d.ts +16 -0
- package/lib/@openglobus/js/control/Control.d.ts +100 -0
- package/lib/@openglobus/js/control/DebugInfo.d.ts +25 -0
- package/lib/@openglobus/js/control/DrawingSwitcher.d.ts +13 -0
- package/lib/@openglobus/js/control/EarthCoordinates.d.ts +41 -0
- package/lib/@openglobus/js/control/EarthNavigation.d.ts +50 -0
- package/lib/@openglobus/js/control/GeoImageDragControl.d.ts +22 -0
- package/lib/@openglobus/js/control/KeyboardNavigation.d.ts +28 -0
- package/lib/@openglobus/js/control/LayerAnimation.d.ts +71 -0
- package/lib/@openglobus/js/control/LayerSwitcher.d.ts +36 -0
- package/lib/@openglobus/js/control/Lighting.d.ts +53 -0
- package/lib/@openglobus/js/control/MouseNavigation.d.ts +64 -0
- package/lib/@openglobus/js/control/MouseWheelZoomControl.d.ts +44 -0
- package/lib/@openglobus/js/control/RulerSwitcher.d.ts +17 -0
- package/lib/@openglobus/js/control/ScaleControl.d.ts +24 -0
- package/lib/@openglobus/js/control/SegmentBoundVisualization.d.ts +12 -0
- package/lib/@openglobus/js/control/ShowFps.d.ts +9 -0
- package/lib/@openglobus/js/control/SimpleNavigation.d.ts +25 -0
- package/lib/@openglobus/js/control/SimpleSkyBackground.d.ts +17 -0
- package/lib/@openglobus/js/control/Sun.d.ts +33 -0
- package/lib/@openglobus/js/control/ToggleWireframe.d.ts +14 -0
- package/lib/@openglobus/js/control/TouchNavigation.d.ts +52 -0
- package/lib/@openglobus/js/control/ZoomControl.d.ts +27 -0
- package/lib/@openglobus/js/control/drawing/DrawingControl.d.ts +12 -0
- package/lib/@openglobus/js/control/drawing/LineStringDrawingScene.d.ts +15 -0
- package/lib/@openglobus/js/control/drawing/PolygonDrawingScene.d.ts +98 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfile.d.ts +77 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileButtonsView.d.ts +14 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileControl.d.ts +33 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileLegend.d.ts +20 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileScene.d.ts +80 -0
- package/lib/@openglobus/js/control/elevationProfile/ElevationProfileView.d.ts +63 -0
- package/lib/@openglobus/js/control/elevationProfile/PointListDialog.d.ts +12 -0
- package/lib/@openglobus/js/control/heightRuler/HeightRuler.d.ts +7 -0
- package/lib/@openglobus/js/control/heightRuler/HeightRulerScene.d.ts +35 -0
- package/lib/@openglobus/js/control/heightRuler/HeightRulerSwitcher.d.ts +6 -0
- package/lib/@openglobus/js/control/index.d.ts +29 -0
- package/lib/@openglobus/js/control/ruler/Ruler.d.ts +13 -0
- package/lib/@openglobus/js/control/ruler/RulerScene.d.ts +88 -0
- package/lib/@openglobus/js/control/selection/Selection.d.ts +55 -0
- package/lib/@openglobus/js/control/selection/SelectionScene.d.ts +44 -0
- package/lib/@openglobus/js/control/timeline/TimelineControl.d.ts +18 -0
- package/lib/@openglobus/js/control/timeline/TimelineModel.d.ts +41 -0
- package/lib/@openglobus/js/control/timeline/TimelineView.d.ts +85 -0
- package/lib/@openglobus/js/control/timeline/timelineUtils.d.ts +12 -0
- package/lib/@openglobus/js/control/visibleExtent/drawnode.d.ts +7 -0
- package/lib/@openglobus/js/ellipsoid/Ellipsoid.d.ts +193 -0
- package/lib/@openglobus/js/ellipsoid/index.d.ts +3 -0
- package/lib/@openglobus/js/ellipsoid/wgs84.d.ts +6 -0
- package/lib/@openglobus/js/entity/BaseBillboard.d.ts +222 -0
- package/lib/@openglobus/js/entity/BaseBillboardHandler.d.ts +81 -0
- package/lib/@openglobus/js/entity/Billboard.d.ts +113 -0
- package/lib/@openglobus/js/entity/BillboardHandler.d.ts +15 -0
- package/lib/@openglobus/js/entity/Entity.d.ts +354 -0
- package/lib/@openglobus/js/entity/EntityCollection.d.ts +363 -0
- package/lib/@openglobus/js/entity/GeoObject.d.ts +152 -0
- package/lib/@openglobus/js/entity/GeoObjectHandler.d.ts +104 -0
- package/lib/@openglobus/js/entity/Geometry.d.ts +124 -0
- package/lib/@openglobus/js/entity/GeometryHandler.d.ts +84 -0
- package/lib/@openglobus/js/entity/Label.d.ts +214 -0
- package/lib/@openglobus/js/entity/LabelHandler.d.ts +65 -0
- package/lib/@openglobus/js/entity/LabelWorker.d.ts +15 -0
- package/lib/@openglobus/js/entity/PointCloud.d.ts +179 -0
- package/lib/@openglobus/js/entity/PointCloudHandler.d.ts +42 -0
- package/lib/@openglobus/js/entity/Polyline.d.ts +345 -0
- package/lib/@openglobus/js/entity/PolylineHandler.d.ts +22 -0
- package/lib/@openglobus/js/entity/Ray.d.ts +133 -0
- package/lib/@openglobus/js/entity/RayHandler.d.ts +70 -0
- package/lib/@openglobus/js/entity/Strip.d.ts +139 -0
- package/lib/@openglobus/js/entity/StripHandler.d.ts +42 -0
- package/lib/@openglobus/js/entity/index.d.ts +10 -0
- package/lib/@openglobus/js/index.d.ts +33 -0
- package/lib/@openglobus/js/input/KeyboardHandler.d.ts +33 -0
- package/lib/@openglobus/js/input/MouseHandler.d.ts +16 -0
- package/lib/@openglobus/js/input/TouchHandler.d.ts +11 -0
- package/lib/@openglobus/js/input/input.d.ts +3 -0
- package/lib/@openglobus/js/layer/BaseGeoImage.d.ts +145 -0
- package/lib/@openglobus/js/layer/Bing.d.ts +4 -0
- package/lib/@openglobus/js/layer/CanvasTiles.d.ts +103 -0
- package/lib/@openglobus/js/layer/GeoImage.d.ts +61 -0
- package/lib/@openglobus/js/layer/GeoTexture2d.d.ts +17 -0
- package/lib/@openglobus/js/layer/GeoVideo.d.ts +68 -0
- package/lib/@openglobus/js/layer/KML.d.ts +72 -0
- package/lib/@openglobus/js/layer/Layer.d.ts +415 -0
- package/lib/@openglobus/js/layer/Material.d.ts +34 -0
- package/lib/@openglobus/js/layer/OpenStreetMap.d.ts +4 -0
- package/lib/@openglobus/js/layer/Vector.d.ts +246 -0
- package/lib/@openglobus/js/layer/WMS.d.ts +75 -0
- package/lib/@openglobus/js/layer/XYZ.d.ts +148 -0
- package/lib/@openglobus/js/layer/index.d.ts +12 -0
- package/lib/@openglobus/js/light/LightSource.d.ts +174 -0
- package/lib/@openglobus/js/math/Line2.d.ts +11 -0
- package/lib/@openglobus/js/math/Line3.d.ts +28 -0
- package/lib/@openglobus/js/math/Mat3.d.ts +77 -0
- package/lib/@openglobus/js/math/Mat4.d.ts +195 -0
- package/lib/@openglobus/js/math/Plane.d.ts +20 -0
- package/lib/@openglobus/js/math/Quat.d.ts +373 -0
- package/lib/@openglobus/js/math/Ray.d.ts +76 -0
- package/lib/@openglobus/js/math/Vec2.d.ts +310 -0
- package/lib/@openglobus/js/math/Vec3.d.ts +472 -0
- package/lib/@openglobus/js/math/Vec4.d.ts +163 -0
- package/lib/@openglobus/js/math/coder.d.ts +51 -0
- package/lib/@openglobus/js/math/index.d.ts +11 -0
- package/lib/@openglobus/js/math.d.ts +266 -0
- package/lib/@openglobus/js/mercator.d.ts +92 -0
- package/lib/@openglobus/js/proj/EPSG3857.d.ts +9 -0
- package/lib/@openglobus/js/proj/EPSG4326.d.ts +9 -0
- package/lib/@openglobus/js/proj/Proj.d.ts +43 -0
- package/lib/@openglobus/js/quadTree/EPSG4326QuadTreeStrategy.d.ts +6 -0
- package/lib/@openglobus/js/quadTree/EarthQuadTreeStrategy.d.ts +9 -0
- package/lib/@openglobus/js/quadTree/EntityCollectionNode.d.ts +54 -0
- package/lib/@openglobus/js/quadTree/MarsQuadTreeStrategy.d.ts +11 -0
- package/lib/@openglobus/js/quadTree/Node.d.ts +80 -0
- package/lib/@openglobus/js/quadTree/QuadTreeStrategy.d.ts +28 -0
- package/lib/@openglobus/js/quadTree/Wgs84QuadTreeStrategy.d.ts +6 -0
- package/lib/@openglobus/js/quadTree/index.d.ts +12 -0
- package/lib/@openglobus/js/quadTree/quadTree.d.ts +40 -0
- package/lib/@openglobus/js/renderer/Renderer.d.ts +319 -0
- package/lib/@openglobus/js/renderer/RendererEvents.d.ts +240 -0
- package/lib/@openglobus/js/scene/Axes.d.ts +12 -0
- package/lib/@openglobus/js/scene/BaseNode.d.ts +61 -0
- package/lib/@openglobus/js/scene/Planet.d.ts +652 -0
- package/lib/@openglobus/js/scene/RenderNode.d.ts +150 -0
- package/lib/@openglobus/js/scene/SkyBox.d.ts +13 -0
- package/lib/@openglobus/js/scene/index.d.ts +5 -0
- package/lib/@openglobus/js/segment/Segment.d.ts +288 -0
- package/lib/@openglobus/js/segment/SegmentLonLat.d.ts +44 -0
- package/lib/@openglobus/js/segment/SegmentLonLatWgs84.d.ts +10 -0
- package/lib/@openglobus/js/segment/Slice.d.ts +13 -0
- package/lib/@openglobus/js/segment/segmentHelper.d.ts +18 -0
- package/lib/@openglobus/js/shaders/atmos.d.ts +4 -0
- package/lib/@openglobus/js/shaders/billboard.d.ts +3 -0
- package/lib/@openglobus/js/shaders/bloom.d.ts +2 -0
- package/lib/@openglobus/js/shaders/blur.d.ts +3 -0
- package/lib/@openglobus/js/shaders/depth.d.ts +2 -0
- package/lib/@openglobus/js/shaders/drawnode.d.ts +8 -0
- package/lib/@openglobus/js/shaders/geoObject.d.ts +3 -0
- package/lib/@openglobus/js/shaders/label.d.ts +4 -0
- package/lib/@openglobus/js/shaders/lumFilter.d.ts +2 -0
- package/lib/@openglobus/js/shaders/pointCloud.d.ts +2 -0
- package/lib/@openglobus/js/shaders/polyline.d.ts +3 -0
- package/lib/@openglobus/js/shaders/ray.d.ts +2 -0
- package/lib/@openglobus/js/shaders/screenFrame.d.ts +2 -0
- package/lib/@openglobus/js/shaders/skybox.d.ts +2 -0
- package/lib/@openglobus/js/shaders/toneMapping.d.ts +2 -0
- package/lib/@openglobus/js/shaders/utils.d.ts +1 -0
- package/lib/@openglobus/js/terrain/BilTerrain.d.ts +18 -0
- package/lib/@openglobus/js/terrain/EmptyTerrain.d.ts +113 -0
- package/lib/@openglobus/js/terrain/Geoid.d.ts +33 -0
- package/lib/@openglobus/js/terrain/GlobusRgbTerrain.d.ts +6 -0
- package/lib/@openglobus/js/terrain/GlobusTerrain.d.ts +137 -0
- package/lib/{js/terrain/MapboxTerrain.d.ts → @openglobus/js/terrain/RgbTerrain.d.ts} +5 -5
- package/lib/@openglobus/js/terrain/index.d.ts +6 -0
- package/lib/@openglobus/js/ui/Button.d.ts +32 -0
- package/lib/@openglobus/js/ui/ButtonGroup.d.ts +16 -0
- package/lib/@openglobus/js/ui/Color.d.ts +22 -0
- package/lib/@openglobus/js/ui/Dialog.d.ts +55 -0
- package/lib/@openglobus/js/ui/Slider.d.ts +38 -0
- package/lib/@openglobus/js/ui/ToggleButton.d.ts +20 -0
- package/lib/@openglobus/js/ui/View.d.ts +37 -0
- package/lib/@openglobus/js/ui/icons.d.ts +1 -0
- package/lib/@openglobus/js/utils/BaseWorker.d.ts +14 -0
- package/lib/@openglobus/js/utils/FontAtlas.d.ts +82 -0
- package/lib/@openglobus/js/utils/GeoImageCreator.d.ts +34 -0
- package/lib/@openglobus/js/utils/ImagesCacheManager.d.ts +22 -0
- package/lib/@openglobus/js/utils/Loader.d.ts +63 -0
- package/lib/@openglobus/js/utils/NormalMapCreator.d.ts +52 -0
- package/lib/@openglobus/js/utils/PlainSegmentWorker.d.ts +24 -0
- package/lib/@openglobus/js/utils/TerrainWorker.d.ts +28 -0
- package/lib/@openglobus/js/utils/TextureAtlas.d.ts +113 -0
- package/lib/@openglobus/js/utils/VectorTileCreator.d.ts +18 -0
- package/lib/@openglobus/js/utils/colorTable.d.ts +3 -0
- package/lib/@openglobus/js/utils/earcut.d.ts +7 -0
- package/lib/@openglobus/js/utils/objParser.d.ts +24 -0
- package/lib/@openglobus/js/utils/shared.d.ts +263 -0
- package/lib/@openglobus/js/utils/units.d.ts +16 -0
- package/lib/@openglobus/js/webgl/BaseFramebuffer.d.ts +53 -0
- package/lib/@openglobus/js/webgl/Framebuffer.d.ts +69 -0
- package/lib/@openglobus/js/webgl/Handler.d.ts +473 -0
- package/lib/@openglobus/js/webgl/Multisample.d.ts +27 -0
- package/lib/@openglobus/js/webgl/Program.d.ts +159 -0
- package/lib/@openglobus/js/webgl/ProgramController.d.ts +86 -0
- package/lib/@openglobus/js/webgl/index.d.ts +6 -0
- package/lib/@openglobus/js/webgl/types.d.ts +9 -0
- package/lib/@openglobus/js/webgl/variableHandlers.d.ts +22 -0
- package/lib/@openglobus/og.css +1 -1
- package/lib/@openglobus/og.esm.js +1 -1
- package/lib/@openglobus/og.esm.js.map +1 -1
- package/lib/@openglobus/og.umd.js +1 -1
- package/lib/@openglobus/og.umd.js.map +1 -1
- package/lib/js/Extent.js +2 -2
- package/lib/js/Globe.d.ts +1 -1
- package/lib/js/Object3d.d.ts +8 -1
- package/lib/js/Object3d.js +12 -2
- package/lib/js/camera/Frustum.d.ts +1 -1
- package/lib/js/camera/Frustum.js +3 -2
- package/lib/js/control/DebugInfo.js +19 -18
- package/lib/js/control/Lighting.d.ts +4 -0
- package/lib/js/control/Lighting.js +51 -12
- package/lib/js/control/SimpleSkyBackground.d.ts +2 -0
- package/lib/js/control/SimpleSkyBackground.js +13 -3
- package/lib/js/control/drawing/PolygonDrawingScene.js +2 -2
- package/lib/js/control/visibleExtent/drawnode.js +1 -1
- package/lib/js/entity/GeoObject.d.ts +12 -3
- package/lib/js/entity/GeoObject.js +34 -2
- package/lib/js/entity/GeoObjectHandler.d.ts +5 -0
- package/lib/js/entity/GeoObjectHandler.js +47 -0
- package/lib/js/entity/Geometry.d.ts +24 -11
- package/lib/js/entity/Geometry.js +17 -9
- package/lib/js/entity/GeometryHandler.js +5 -5
- package/lib/js/entity/Label.d.ts +7 -0
- package/lib/js/entity/Label.js +11 -0
- package/lib/js/entity/Polyline.d.ts +15 -7
- package/lib/js/entity/Polyline.js +54 -6
- package/lib/js/entity/Strip.d.ts +12 -0
- package/lib/js/entity/Strip.js +16 -0
- package/lib/js/entity/StripHandler.js +1 -1
- package/lib/js/entity/index.d.ts +10 -11
- package/lib/js/entity/index.js +10 -11
- package/lib/js/index.d.ts +5 -5
- package/lib/js/index.js +5 -5
- package/lib/js/layer/Bing.d.ts +4 -0
- package/lib/js/layer/Bing.js +40 -0
- package/lib/js/layer/GeoImage.d.ts +1 -1
- package/lib/js/layer/GeoVideo.d.ts +1 -1
- package/lib/js/layer/Layer.d.ts +1 -1
- package/lib/js/layer/Layer.js +2 -2
- package/lib/js/layer/OpenStreetMap.d.ts +4 -0
- package/lib/js/layer/OpenStreetMap.js +19 -0
- package/lib/js/layer/Vector.d.ts +3 -0
- package/lib/js/layer/Vector.js +3 -3
- package/lib/js/layer/index.d.ts +12 -11
- package/lib/js/layer/index.js +12 -11
- package/lib/js/math/Mat4.js +18 -17
- package/lib/js/mercator.js +2 -1
- package/lib/js/quadTree/EPSG4326QuadTreeStrategy.js +4 -5
- package/lib/js/quadTree/EarthQuadTreeStrategy.d.ts +3 -0
- package/lib/js/quadTree/EarthQuadTreeStrategy.js +40 -5
- package/lib/js/quadTree/EntityCollectionNode.d.ts +2 -2
- package/lib/js/quadTree/EntityCollectionNode.js +13 -14
- package/lib/js/quadTree/MarsQuadTreeStrategy.d.ts +5 -0
- package/lib/js/quadTree/MarsQuadTreeStrategy.js +31 -5
- package/lib/js/quadTree/Node.d.ts +2 -1
- package/lib/js/quadTree/Node.js +38 -28
- package/lib/js/quadTree/QuadTreeStrategy.d.ts +3 -0
- package/lib/js/quadTree/QuadTreeStrategy.js +17 -0
- package/lib/js/quadTree/Wgs84QuadTreeStrategy.js +3 -3
- package/lib/js/renderer/Renderer.js +1 -0
- package/lib/js/scene/Planet.js +6 -4
- package/lib/js/segment/Segment.d.ts +12 -9
- package/lib/js/segment/Segment.js +47 -24
- package/lib/js/segment/SegmentLonLat.d.ts +1 -5
- package/lib/js/segment/SegmentLonLat.js +8 -100
- package/lib/js/segment/SegmentLonLatWgs84.js +5 -3
- package/lib/js/shaders/billboard.js +4 -4
- package/lib/js/shaders/drawnode.js +16 -19
- package/lib/js/shaders/geoObject.js +4 -5
- package/lib/js/shaders/ray.js +7 -3
- package/lib/js/terrain/BilTerrain.d.ts +1 -1
- package/lib/js/terrain/BilTerrain.js +7 -6
- package/lib/js/terrain/EmptyTerrain.d.ts +7 -0
- package/lib/js/terrain/EmptyTerrain.js +7 -0
- package/lib/js/terrain/GlobusRgbTerrain.d.ts +6 -0
- package/lib/js/terrain/GlobusRgbTerrain.js +25 -0
- package/lib/js/terrain/GlobusTerrain.d.ts +5 -5
- package/lib/js/terrain/GlobusTerrain.js +35 -30
- package/lib/js/terrain/RgbTerrain.d.ts +22 -0
- package/lib/js/terrain/RgbTerrain.js +415 -0
- package/lib/js/terrain/index.d.ts +3 -2
- package/lib/js/terrain/index.js +3 -2
- package/lib/js/ui/Color.d.ts +22 -0
- package/lib/js/ui/Color.js +58 -0
- package/lib/js/utils/GeoImageCreator.js +1 -1
- package/lib/js/utils/NormalMapCreator.js +1 -1
- package/lib/js/utils/VectorTileCreator.js +3 -3
- package/lib/js/utils/shared.d.ts +1 -8
- package/lib/js/utils/shared.js +17 -8
- package/package.json +2 -1
- package/lib/js/terrain/MapboxTerrain.js +0 -305
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
import { EventsHandler } from "../Events";
|
|
2
|
+
import { Extent } from "../Extent";
|
|
3
|
+
import { Node } from "../quadTree/Node";
|
|
4
|
+
import { Material } from "./Material";
|
|
5
|
+
import { Planet } from "../scene/Planet";
|
|
6
|
+
import { Segment } from "../segment/Segment";
|
|
7
|
+
import { Vec3, NumberArray3 } from "../math/Vec3";
|
|
8
|
+
import { NumberArray4 } from "../math/Vec4";
|
|
9
|
+
import { IDefaultTextureParams } from "../webgl/Handler";
|
|
10
|
+
export interface ILayerParams {
|
|
11
|
+
properties?: any;
|
|
12
|
+
labelMaxLetters?: number;
|
|
13
|
+
hideInLayerSwitcher?: boolean;
|
|
14
|
+
opacity?: number;
|
|
15
|
+
minZoom?: number;
|
|
16
|
+
maxZoom?: number;
|
|
17
|
+
attribution?: string;
|
|
18
|
+
zIndex?: number;
|
|
19
|
+
isBaseLayer?: boolean;
|
|
20
|
+
defaultTextures?: [IDefaultTextureParams, IDefaultTextureParams];
|
|
21
|
+
visibility?: boolean;
|
|
22
|
+
fading?: boolean;
|
|
23
|
+
height?: number;
|
|
24
|
+
textureFilter?: string;
|
|
25
|
+
isSRGB?: boolean;
|
|
26
|
+
pickingEnabled?: boolean;
|
|
27
|
+
preLoadZoomLevels?: number[];
|
|
28
|
+
extent?: Extent | [[number, number], [number, number]];
|
|
29
|
+
ambient?: string | NumberArray3 | Vec3;
|
|
30
|
+
diffuse?: string | NumberArray3 | Vec3;
|
|
31
|
+
specular?: string | NumberArray3 | Vec3;
|
|
32
|
+
shininess?: number;
|
|
33
|
+
nightTextureCoefficient?: number;
|
|
34
|
+
iconSrc?: string | null;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* @class
|
|
38
|
+
* Base class; normally only used for creating subclasses and not instantiated in apps.
|
|
39
|
+
* A visual representation of raster or vector map data well known as a layer.
|
|
40
|
+
* @class
|
|
41
|
+
* @param {String} [name="noname"] - Layer name.
|
|
42
|
+
* @param {Object} [options] - Layer options:
|
|
43
|
+
* @param {number} [options.opacity=1.0] - Layer opacity.
|
|
44
|
+
* @param {number} [options.minZoom=0] - Minimal visibility zoom level.
|
|
45
|
+
* @param {number} [options.maxZoom=0] - Maximal visibility zoom level.
|
|
46
|
+
* @param {string} [options.attribution] - Layer attribution that displayed in the attribution area on the screen.
|
|
47
|
+
* @param {boolean} [options.isBaseLayer=false] - This is a base layer.
|
|
48
|
+
* @param {boolean} [options.visibility=true] - Layer visibility.
|
|
49
|
+
* @param {boolean} [options.hideInLayerSwitcher=false] - Presence of layer in dialog window of LayerSwitcher control.
|
|
50
|
+
* @param {boolean} [options.isSRGB=false] - Layer image webgl internal format.
|
|
51
|
+
* @param {Extent} [options.extent=[[-180.0, -90.0], [180.0, 90.0]]] - Visible extent.
|
|
52
|
+
* @param {string} [options.textureFilter="anisotropic"] - Image texture filter. Available values: "nearest", "linear", "mipmap" and "anisotropic".
|
|
53
|
+
* @param {string} [options.icon] - Icon for LayerSwitcher
|
|
54
|
+
* @fires EventsHandler<LayerEventsList>#visibilitychange
|
|
55
|
+
* @fires EventsHandler<LayerEventsList>#add
|
|
56
|
+
* @fires EventsHandler<LayerEventsList>#remove
|
|
57
|
+
* @fires EventsHandler<LayerEventsList>#mousemove
|
|
58
|
+
* @fires EventsHandler<LayerEventsList>#mouseenter
|
|
59
|
+
* @fires EventsHandler<LayerEventsList>#mouseleave
|
|
60
|
+
* @fires EventsHandler<LayerEventsList>#lclick
|
|
61
|
+
* @fires EventsHandler<LayerEventsList>#rclick
|
|
62
|
+
* @fires EventsHandler<LayerEventsList>#mclick
|
|
63
|
+
* @fires EventsHandler<LayerEventsList>#ldblclick
|
|
64
|
+
* @fires EventsHandler<LayerEventsList>#rdblclick
|
|
65
|
+
* @fires EventsHandler<LayerEventsList>#mdblclick
|
|
66
|
+
* @fires EventsHandler<LayerEventsList>#lup
|
|
67
|
+
* @fires EventsHandler<LayerEventsList>#rup
|
|
68
|
+
* @fires EventsHandler<LayerEventsList>#mup
|
|
69
|
+
* @fires EventsHandler<LayerEventsList>#ldown
|
|
70
|
+
* @fires EventsHandler<LayerEventsList>#rdown
|
|
71
|
+
* @fires EventsHandler<LayerEventsList>#mdown
|
|
72
|
+
* @fires EventsHandler<LayerEventsList>#lhold
|
|
73
|
+
* @fires EventsHandler<LayerEventsList>#rhold
|
|
74
|
+
* @fires EventsHandler<LayerEventsList>#mhold
|
|
75
|
+
* @fires EventsHandler<LayerEventsList>#mousewheel
|
|
76
|
+
* @fires EventsHandler<LayerEventsList>#touchmove
|
|
77
|
+
* @fires EventsHandler<LayerEventsList>#touchstart
|
|
78
|
+
* @fires EventsHandler<LayerEventsList>#touchend
|
|
79
|
+
* @fires EventsHandler<LayerEventsList>#doubletouch
|
|
80
|
+
*/
|
|
81
|
+
declare class Layer {
|
|
82
|
+
static __counter__: number;
|
|
83
|
+
/**
|
|
84
|
+
* Uniq identifier.
|
|
85
|
+
* @public
|
|
86
|
+
* @type {number}
|
|
87
|
+
*/
|
|
88
|
+
__id: number;
|
|
89
|
+
/**
|
|
90
|
+
* Events handler.
|
|
91
|
+
* @public
|
|
92
|
+
* @type {Events}
|
|
93
|
+
*/
|
|
94
|
+
events: EventsHandler<LayerEventsList>;
|
|
95
|
+
/**
|
|
96
|
+
* Layer user name.
|
|
97
|
+
* @public
|
|
98
|
+
* @type {string}
|
|
99
|
+
*/
|
|
100
|
+
name: string;
|
|
101
|
+
properties: any;
|
|
102
|
+
hideInLayerSwitcher: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Minimal zoom level when layer is visible.
|
|
105
|
+
* @public
|
|
106
|
+
* @type {number}
|
|
107
|
+
*/
|
|
108
|
+
minZoom: number;
|
|
109
|
+
/**
|
|
110
|
+
* Maximal zoom level when layer is visible.
|
|
111
|
+
* @public
|
|
112
|
+
* @type {number}
|
|
113
|
+
*/
|
|
114
|
+
maxZoom: number;
|
|
115
|
+
/**
|
|
116
|
+
* Planet node.
|
|
117
|
+
* @public
|
|
118
|
+
* @type {Planet}
|
|
119
|
+
*/
|
|
120
|
+
_planet: Planet | null;
|
|
121
|
+
createTexture: Function | null;
|
|
122
|
+
nightTextureCoefficient: number;
|
|
123
|
+
protected _hasImageryTiles: boolean;
|
|
124
|
+
/**
|
|
125
|
+
* Layer global opacity.
|
|
126
|
+
* @public
|
|
127
|
+
* @type {number}
|
|
128
|
+
*/
|
|
129
|
+
protected _opacity: number;
|
|
130
|
+
/**
|
|
131
|
+
* Layer attribution.
|
|
132
|
+
* @protected
|
|
133
|
+
* @type {string}
|
|
134
|
+
*/
|
|
135
|
+
protected _attribution: string;
|
|
136
|
+
/**
|
|
137
|
+
* Layer z-index.
|
|
138
|
+
* @protected
|
|
139
|
+
* @type {number}
|
|
140
|
+
*/
|
|
141
|
+
protected _zIndex: number;
|
|
142
|
+
/**
|
|
143
|
+
* Base layer type flag.
|
|
144
|
+
* @protected
|
|
145
|
+
* @type {boolean}
|
|
146
|
+
*/
|
|
147
|
+
protected _isBaseLayer: boolean;
|
|
148
|
+
_defaultTextures: [IDefaultTextureParams | null, IDefaultTextureParams | null];
|
|
149
|
+
/**
|
|
150
|
+
* Layer visibility.
|
|
151
|
+
* @protected
|
|
152
|
+
* @type {boolean}
|
|
153
|
+
*/
|
|
154
|
+
protected _visibility: boolean;
|
|
155
|
+
_fading: boolean;
|
|
156
|
+
protected _fadingFactor: number;
|
|
157
|
+
_fadingOpacity: number;
|
|
158
|
+
/**
|
|
159
|
+
* Height over the ground.
|
|
160
|
+
* @public
|
|
161
|
+
* @type {number}
|
|
162
|
+
*/
|
|
163
|
+
_height: number;
|
|
164
|
+
protected _textureFilter: string;
|
|
165
|
+
protected _isSRGB: boolean;
|
|
166
|
+
_internalFormat: number | null;
|
|
167
|
+
/**
|
|
168
|
+
* Visible degrees extent.
|
|
169
|
+
* @public
|
|
170
|
+
* @type {Extent}
|
|
171
|
+
*/
|
|
172
|
+
_extent: Extent;
|
|
173
|
+
/**
|
|
174
|
+
* Visible mercator extent.
|
|
175
|
+
* @public
|
|
176
|
+
* @type {Extent}
|
|
177
|
+
*/
|
|
178
|
+
_extentMerc: Extent;
|
|
179
|
+
/**
|
|
180
|
+
* Layer picking color. Assign when added to the planet.
|
|
181
|
+
* @public
|
|
182
|
+
* @type {Vec3}
|
|
183
|
+
*/
|
|
184
|
+
_pickingColor: Vec3;
|
|
185
|
+
_pickingEnabled: boolean;
|
|
186
|
+
protected _isPreloadDone: boolean;
|
|
187
|
+
protected _preLoadZoomLevels: number[];
|
|
188
|
+
_ambient: Float32Array | null;
|
|
189
|
+
_diffuse: Float32Array | null;
|
|
190
|
+
_specular: Float32Array | null;
|
|
191
|
+
isVector: boolean;
|
|
192
|
+
protected _iconSrc: string | null;
|
|
193
|
+
constructor(name?: string | null, options?: ILayerParams);
|
|
194
|
+
get iconSrc(): string | null;
|
|
195
|
+
set iconSrc(src: string | null);
|
|
196
|
+
set diffuse(rgb: string | NumberArray3 | Vec3 | null | undefined);
|
|
197
|
+
set ambient(rgb: string | NumberArray3 | Vec3 | null | undefined);
|
|
198
|
+
set specular(rgb: string | NumberArray3 | Vec3 | null | undefined);
|
|
199
|
+
set shininess(v: number);
|
|
200
|
+
static getTMS(x: number, y: number, z: number): {
|
|
201
|
+
x: number;
|
|
202
|
+
y: number;
|
|
203
|
+
z: number;
|
|
204
|
+
};
|
|
205
|
+
static getTileIndex(x: number, y: number, z: number, tileGroup: number): string;
|
|
206
|
+
get instanceName(): string;
|
|
207
|
+
get rendererEvents(): EventsHandler<LayerEventsList>;
|
|
208
|
+
set opacity(opacity: number);
|
|
209
|
+
set pickingEnabled(picking: boolean);
|
|
210
|
+
get pickingEnabled(): boolean;
|
|
211
|
+
/**
|
|
212
|
+
* Returns true if a layer has imagery tiles.
|
|
213
|
+
* @public
|
|
214
|
+
* @virtual
|
|
215
|
+
* @returns {boolean} - Imagery tiles flag.
|
|
216
|
+
*/
|
|
217
|
+
hasImageryTiles(): boolean;
|
|
218
|
+
/**
|
|
219
|
+
* Gets layer identifier.
|
|
220
|
+
* @public
|
|
221
|
+
* @returns {string} - Layer object id.
|
|
222
|
+
*/
|
|
223
|
+
getID(): number;
|
|
224
|
+
get id(): number;
|
|
225
|
+
/**
|
|
226
|
+
* @todo: remove after all
|
|
227
|
+
*/
|
|
228
|
+
get _id(): number;
|
|
229
|
+
/**
|
|
230
|
+
* Compares layers instances.
|
|
231
|
+
* @public
|
|
232
|
+
* @param {Layer} layer - Layer instance to compare.
|
|
233
|
+
* @returns {boolean} - Returns true if the layers is the same instance of the input.
|
|
234
|
+
*/
|
|
235
|
+
isEqual(layer: Layer): boolean;
|
|
236
|
+
/**
|
|
237
|
+
* Assign the planet.
|
|
238
|
+
* @protected
|
|
239
|
+
* @virtual
|
|
240
|
+
* @param {Planet} planet - Planet render node.
|
|
241
|
+
*/
|
|
242
|
+
_assignPlanet(planet: Planet): void;
|
|
243
|
+
get isIdle(): boolean;
|
|
244
|
+
/**
|
|
245
|
+
* Assign picking color to the layer.
|
|
246
|
+
* @protected
|
|
247
|
+
* @virtual
|
|
248
|
+
*/
|
|
249
|
+
protected _bindPicking(): void;
|
|
250
|
+
/**
|
|
251
|
+
* Adds layer to the planet.
|
|
252
|
+
* @public
|
|
253
|
+
* @param {Planet} planet - Adds layer to the planet.
|
|
254
|
+
*/
|
|
255
|
+
addTo(planet: Planet): void;
|
|
256
|
+
/**
|
|
257
|
+
* Removes from planet.
|
|
258
|
+
* @public
|
|
259
|
+
* @returns {Layer} -This layer.
|
|
260
|
+
*/
|
|
261
|
+
remove(): this;
|
|
262
|
+
/**
|
|
263
|
+
* Clears layer material.
|
|
264
|
+
* @virtual
|
|
265
|
+
*/
|
|
266
|
+
clear(): void;
|
|
267
|
+
/**
|
|
268
|
+
* Returns planet instance.
|
|
269
|
+
*/
|
|
270
|
+
get planet(): Planet | null;
|
|
271
|
+
/**
|
|
272
|
+
* Sets layer attribution text.
|
|
273
|
+
* @public
|
|
274
|
+
* @param {string} html - HTML code that represents layer attribution, it could be just a text.
|
|
275
|
+
*/
|
|
276
|
+
setAttribution(html: string): void;
|
|
277
|
+
/**
|
|
278
|
+
* Gets layer attribution.
|
|
279
|
+
* @public
|
|
280
|
+
* @returns {string} Layer attribution
|
|
281
|
+
*/
|
|
282
|
+
getAttribution(): string;
|
|
283
|
+
/**
|
|
284
|
+
* Sets height over the ground.
|
|
285
|
+
* @public
|
|
286
|
+
* @param {number} height - Layer height.
|
|
287
|
+
*/
|
|
288
|
+
setHeight(height: number): void;
|
|
289
|
+
/**
|
|
290
|
+
* Gets layer height.
|
|
291
|
+
* @public
|
|
292
|
+
* @returns {number} -
|
|
293
|
+
*/
|
|
294
|
+
getHeight(): number;
|
|
295
|
+
/**
|
|
296
|
+
* Sets z-index.
|
|
297
|
+
* @public
|
|
298
|
+
* @param {number} zIndex - Layer z-index.
|
|
299
|
+
*/
|
|
300
|
+
setZIndex(zIndex: number): void;
|
|
301
|
+
/**
|
|
302
|
+
* Gets z-index.
|
|
303
|
+
* @public
|
|
304
|
+
* @returns {number} -
|
|
305
|
+
*/
|
|
306
|
+
getZIndex(): number;
|
|
307
|
+
/**
|
|
308
|
+
* Set zIndex to the maximal value depend on other layers on the planet.
|
|
309
|
+
* @public
|
|
310
|
+
*/
|
|
311
|
+
bringToFront(): void;
|
|
312
|
+
/**
|
|
313
|
+
* Returns true if the layer is a base.
|
|
314
|
+
* @public
|
|
315
|
+
* @returns {boolean} - Base layer flag.
|
|
316
|
+
*/
|
|
317
|
+
isBaseLayer(): boolean;
|
|
318
|
+
/**
|
|
319
|
+
* Sets base layer type true.
|
|
320
|
+
* @public
|
|
321
|
+
* @param {boolean} isBaseLayer -
|
|
322
|
+
*/
|
|
323
|
+
setBaseLayer(isBaseLayer: boolean): void;
|
|
324
|
+
/**
|
|
325
|
+
* Sets layer visibility.
|
|
326
|
+
* @public
|
|
327
|
+
* @virtual
|
|
328
|
+
* @param {boolean} visibility - Layer visibility.
|
|
329
|
+
*/
|
|
330
|
+
setVisibility(visibility: boolean): void;
|
|
331
|
+
protected _forceMaterialApply(segment: Segment): void;
|
|
332
|
+
clearMaterial(material: Material): void;
|
|
333
|
+
loadMaterial(material: Material, forceLoading?: boolean): void;
|
|
334
|
+
applyMaterial(m: Material, isForced?: boolean): NumberArray4;
|
|
335
|
+
protected _preLoadRecursive(node: Node, maxZoom: number): void;
|
|
336
|
+
protected _preLoad(): void;
|
|
337
|
+
/**
|
|
338
|
+
* Gets layer visibility.
|
|
339
|
+
* @public
|
|
340
|
+
* @returns {boolean} - Layer visibility.
|
|
341
|
+
*/
|
|
342
|
+
getVisibility(): boolean;
|
|
343
|
+
/**
|
|
344
|
+
* Sets visible geographical extent.
|
|
345
|
+
* @public
|
|
346
|
+
* @param {Extent} extent - Layer visible geographical extent.
|
|
347
|
+
*/
|
|
348
|
+
setExtent(extent: Extent): void;
|
|
349
|
+
/**
|
|
350
|
+
* Gets layer extent.
|
|
351
|
+
* @public
|
|
352
|
+
* @return {Extent} - Layer geodetic extent.
|
|
353
|
+
*/
|
|
354
|
+
getExtent(): Extent;
|
|
355
|
+
/**
|
|
356
|
+
* Gets layer web-mercator extent.
|
|
357
|
+
* @public
|
|
358
|
+
* @return {Extent} - Layer extent.
|
|
359
|
+
*/
|
|
360
|
+
getExtentMerc(): Extent;
|
|
361
|
+
/**
|
|
362
|
+
* Fly extent.
|
|
363
|
+
* @public
|
|
364
|
+
*/
|
|
365
|
+
flyExtent(): void;
|
|
366
|
+
/**
|
|
367
|
+
* View extent.
|
|
368
|
+
* @public
|
|
369
|
+
*/
|
|
370
|
+
viewExtent(): void;
|
|
371
|
+
/**
|
|
372
|
+
* Special correction of the whole globe extent.
|
|
373
|
+
* @protected
|
|
374
|
+
*/
|
|
375
|
+
protected _correctFullExtent(): void;
|
|
376
|
+
get opacity(): number;
|
|
377
|
+
get screenOpacity(): number;
|
|
378
|
+
_refreshFadingOpacity(): boolean;
|
|
379
|
+
createMaterial(segment: Segment): Material;
|
|
380
|
+
redraw(): void;
|
|
381
|
+
abortMaterialLoading(material: Material): void;
|
|
382
|
+
abortLoading(): void;
|
|
383
|
+
}
|
|
384
|
+
export type LayerEventsList = [
|
|
385
|
+
"visibilitychange",
|
|
386
|
+
"add",
|
|
387
|
+
"remove",
|
|
388
|
+
"mousemove",
|
|
389
|
+
"mouseenter",
|
|
390
|
+
"mouseleave",
|
|
391
|
+
"lclick",
|
|
392
|
+
"rclick",
|
|
393
|
+
"mclick",
|
|
394
|
+
"ldblclick",
|
|
395
|
+
"rdblclick",
|
|
396
|
+
"mdblclick",
|
|
397
|
+
"lup",
|
|
398
|
+
"rup",
|
|
399
|
+
"mup",
|
|
400
|
+
"ldown",
|
|
401
|
+
"rdown",
|
|
402
|
+
"mdown",
|
|
403
|
+
"lhold",
|
|
404
|
+
"rhold",
|
|
405
|
+
"mhold",
|
|
406
|
+
"mousewheel",
|
|
407
|
+
"touchmove",
|
|
408
|
+
"touchstart",
|
|
409
|
+
"touchend",
|
|
410
|
+
"doubletouch",
|
|
411
|
+
"touchleave",
|
|
412
|
+
"touchenter"
|
|
413
|
+
];
|
|
414
|
+
export declare const LAYER_EVENTS: LayerEventsList;
|
|
415
|
+
export { Layer };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Layer } from "./Layer";
|
|
2
|
+
import { Node } from "../quadTree/Node";
|
|
3
|
+
import { Segment } from "../segment/Segment";
|
|
4
|
+
import { WebGLTextureExt } from "../webgl/Handler";
|
|
5
|
+
import { NumberArray4 } from "../math/Vec4";
|
|
6
|
+
/**
|
|
7
|
+
* @class Material
|
|
8
|
+
* @param {Segment} segment
|
|
9
|
+
* @param {Layer} layer
|
|
10
|
+
*/
|
|
11
|
+
declare class Material {
|
|
12
|
+
segment: Segment;
|
|
13
|
+
layer: Layer;
|
|
14
|
+
isReady: boolean;
|
|
15
|
+
isLoading: boolean;
|
|
16
|
+
texture: WebGLTextureExt | null;
|
|
17
|
+
pickingMask: WebGLTextureExt | null;
|
|
18
|
+
textureExists: boolean;
|
|
19
|
+
appliedNodeId: number;
|
|
20
|
+
appliedNode: Node | null;
|
|
21
|
+
texOffset: NumberArray4;
|
|
22
|
+
loadingAttempts: number;
|
|
23
|
+
_updateTexture: WebGLTextureExt | null;
|
|
24
|
+
_updatePickingMask: WebGLTextureExt | null;
|
|
25
|
+
pickingReady: boolean;
|
|
26
|
+
constructor(segment: Segment, layer: Layer);
|
|
27
|
+
abortLoading(): void;
|
|
28
|
+
_createTexture(img: HTMLCanvasElement | ImageBitmap | HTMLImageElement): any;
|
|
29
|
+
applyImage(img: HTMLCanvasElement | ImageBitmap | HTMLImageElement): void;
|
|
30
|
+
applyTexture(texture: WebGLTextureExt | null, pickingMask?: WebGLTextureExt | null): void;
|
|
31
|
+
textureNotExists(): void;
|
|
32
|
+
clear(): void;
|
|
33
|
+
}
|
|
34
|
+
export { Material };
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
import { Entity, IEntityParams } from "../entity/Entity";
|
|
2
|
+
import { EntityCollection } from "../entity/EntityCollection";
|
|
3
|
+
import { EntityCollectionNode, EntityCollectionNodeWGS84 } from "../quadTree/EntityCollectionNode";
|
|
4
|
+
import { EventsHandler } from "../Events";
|
|
5
|
+
import { GeometryHandler } from "../entity/GeometryHandler";
|
|
6
|
+
import { ILayerParams, Layer, LayerEventsList } from "./Layer";
|
|
7
|
+
import { NumberArray3 } from "../math/Vec3";
|
|
8
|
+
import { Planet } from "../scene/Planet";
|
|
9
|
+
import { QueueArray } from "../QueueArray";
|
|
10
|
+
import { Material } from "./Material";
|
|
11
|
+
import { NumberArray4 } from "../math/Vec4";
|
|
12
|
+
export interface IVectorParams extends ILayerParams {
|
|
13
|
+
entities?: Entity[] | IEntityParams[];
|
|
14
|
+
polygonOffsetUnits?: number;
|
|
15
|
+
nodeCapacity?: number;
|
|
16
|
+
relativeToGround?: boolean;
|
|
17
|
+
clampToGround?: boolean;
|
|
18
|
+
async?: boolean;
|
|
19
|
+
pickingScale?: number;
|
|
20
|
+
scaleByDistance?: NumberArray3;
|
|
21
|
+
labelMaxLetters?: number;
|
|
22
|
+
}
|
|
23
|
+
type VectorEventsList = [
|
|
24
|
+
"draw",
|
|
25
|
+
"entityadd",
|
|
26
|
+
"entityremove"
|
|
27
|
+
];
|
|
28
|
+
export type VectorEventsType = EventsHandler<VectorEventsList> & EventsHandler<LayerEventsList>;
|
|
29
|
+
/**
|
|
30
|
+
* Vector layer represents alternative entities store. Used for geospatial data rendering like
|
|
31
|
+
* points, lines, polygons, geometry objects etc.
|
|
32
|
+
* @class
|
|
33
|
+
* @extends {Layer}
|
|
34
|
+
* @param {string} [name="noname"] - Layer name.
|
|
35
|
+
* @param {IVectorParams} [options] - Layer options:
|
|
36
|
+
* @param {number} [options.minZoom=0] - Minimal visible zoom. 0 is default
|
|
37
|
+
* @param {number} [options.maxZoom=50] - Maximal visible zoom. 50 is default.
|
|
38
|
+
* @param {string} [options.attribution] - Layer attribution.
|
|
39
|
+
* @param {string} [options.zIndex=0] - Layer Z-order index. 0 is default.
|
|
40
|
+
* @param {boolean} [options.visibility=true] - Layer visibility. True is default.
|
|
41
|
+
* @param {boolean} [options.isBaseLayer=false] - Layer base layer. False is default.
|
|
42
|
+
* @param {Array.<Entity>} [options.entities] - Entities array.
|
|
43
|
+
* @param {Array.<number>} [options.scaleByDistance] - Scale by distance parameters. (exactly 3 entries)
|
|
44
|
+
* First index - near distance to the entity, after entity becomes full scale.
|
|
45
|
+
* Second index - far distance to the entity, when entity becomes zero scale.
|
|
46
|
+
* Third index - far distance to the entity, when entity becomes invisible.
|
|
47
|
+
* @param {number} [options.nodeCapacity=30] - Maximum entities quantity in the tree node. Rendering optimization parameter. 30 is default.
|
|
48
|
+
* @param {boolean} [options.async=true] - Asynchronous vector data handling before rendering. True for optimization huge data.
|
|
49
|
+
* @param {boolean} [options.clampToGround = false] - Clamp vector data to the ground.
|
|
50
|
+
* @param {boolean} [options.relativeToGround = false] - Place vector data relative to the ground relief.
|
|
51
|
+
* @param {Number} [options.polygonOffsetUnits=0.0] - The multiplier by which an implementation-specific value is multiplied with to create a constant depth offset.
|
|
52
|
+
*
|
|
53
|
+
* //@fires EventsHandler<VectorEventsList>#entitymove
|
|
54
|
+
* @fires EventsHandler<VectorEventsList>#draw
|
|
55
|
+
* @fires EventsHandler<VectorEventsList>#add
|
|
56
|
+
* @fires EventsHandler<VectorEventsList>#remove
|
|
57
|
+
* @fires EventsHandler<VectorEventsList>#entityadd
|
|
58
|
+
* @fires EventsHandler<VectorEventsList>#entityremove
|
|
59
|
+
* @fires EventsHandler<VectorEventsList>#visibilitychange
|
|
60
|
+
*/
|
|
61
|
+
declare class Vector extends Layer {
|
|
62
|
+
events: VectorEventsType;
|
|
63
|
+
/**
|
|
64
|
+
* Entities collection.
|
|
65
|
+
* @protected
|
|
66
|
+
*/
|
|
67
|
+
protected _entities: Entity[];
|
|
68
|
+
/**
|
|
69
|
+
* First index - near distance to the entity, after that entity becomes full scale.
|
|
70
|
+
* Second index - far distance to the entity, when entity becomes zero scale.
|
|
71
|
+
* Third index - far distance to the entity, when entity becomes invisible.
|
|
72
|
+
* @public
|
|
73
|
+
* @type {NumberArray3} - (exactly 3 entries)
|
|
74
|
+
*/
|
|
75
|
+
scaleByDistance: NumberArray3;
|
|
76
|
+
pickingScale: number;
|
|
77
|
+
/**
|
|
78
|
+
* Asynchronous data handling before rendering.
|
|
79
|
+
* @public
|
|
80
|
+
* @type {boolean}
|
|
81
|
+
*/
|
|
82
|
+
async: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Clamp vector data to the ground.
|
|
85
|
+
* @public
|
|
86
|
+
* @type {boolean}
|
|
87
|
+
*/
|
|
88
|
+
clampToGround: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Sets vector data relative to the ground relief.
|
|
91
|
+
* @public
|
|
92
|
+
* @type {boolean}
|
|
93
|
+
*/
|
|
94
|
+
relativeToGround: boolean;
|
|
95
|
+
protected _stripEntityCollection: EntityCollection;
|
|
96
|
+
protected _polylineEntityCollection: EntityCollection;
|
|
97
|
+
protected _geoObjectEntityCollection: EntityCollection;
|
|
98
|
+
_geometryHandler: GeometryHandler;
|
|
99
|
+
/**
|
|
100
|
+
* Maximum entities quantity in the tree node.
|
|
101
|
+
* @public
|
|
102
|
+
*/
|
|
103
|
+
_nodeCapacity: number;
|
|
104
|
+
/**
|
|
105
|
+
* @todo: remove, or replace with node strategy
|
|
106
|
+
*/
|
|
107
|
+
protected _entityCollectionsTree: EntityCollectionNode | null;
|
|
108
|
+
protected _entityCollectionsTreeNorth: EntityCollectionNodeWGS84 | null;
|
|
109
|
+
protected _entityCollectionsTreeSouth: EntityCollectionNodeWGS84 | null;
|
|
110
|
+
_renderingNodes: Record<number, boolean>;
|
|
111
|
+
_renderingNodesNorth: Record<number, boolean>;
|
|
112
|
+
_renderingNodesSouth: Record<number, boolean>;
|
|
113
|
+
protected _counter: number;
|
|
114
|
+
protected _deferredEntitiesPendingQueue: QueueArray<EntityCollectionNode>;
|
|
115
|
+
protected _pendingsQueue: Entity[];
|
|
116
|
+
/**
|
|
117
|
+
* Specifies the scale Units for gl.polygonOffset function to calculate depth values, 0.0 is default.
|
|
118
|
+
* @public
|
|
119
|
+
* @type {Number}
|
|
120
|
+
*/
|
|
121
|
+
polygonOffsetUnits: number;
|
|
122
|
+
_secondPASS: EntityCollectionNode[];
|
|
123
|
+
protected _labelMaxLetters: number;
|
|
124
|
+
constructor(name?: string | null, options?: IVectorParams);
|
|
125
|
+
get labelMaxLetters(): number;
|
|
126
|
+
get instanceName(): string;
|
|
127
|
+
protected _bindPicking(): void;
|
|
128
|
+
/**
|
|
129
|
+
* Adds layer to the planet.
|
|
130
|
+
* @public
|
|
131
|
+
* @param {Planet} planet - Planet scene object.
|
|
132
|
+
* @returns {Vector} -
|
|
133
|
+
*/
|
|
134
|
+
addTo(planet: Planet): void;
|
|
135
|
+
remove(): this;
|
|
136
|
+
/**
|
|
137
|
+
* Returns stored entities.
|
|
138
|
+
* @public
|
|
139
|
+
* @returns {Array.<Entity>} -
|
|
140
|
+
*/
|
|
141
|
+
getEntities(): Entity[];
|
|
142
|
+
/**
|
|
143
|
+
* Adds entity to the layer.
|
|
144
|
+
* @public
|
|
145
|
+
* @param {Entity} entity - Entity.
|
|
146
|
+
* @param {boolean} [rightNow=false] - Entity insertion option. False is default.
|
|
147
|
+
* @returns {Vector} - Returns this layer.
|
|
148
|
+
*/
|
|
149
|
+
add(entity: Entity, rightNow?: boolean): this;
|
|
150
|
+
/**
|
|
151
|
+
* Adds entity to the layer in the index position.
|
|
152
|
+
* @public
|
|
153
|
+
* @param {Entity} entity - Entity.
|
|
154
|
+
* @param {Number} index - Index position.
|
|
155
|
+
* @param {boolean} [rightNow] - Entity insertion option. False is default.
|
|
156
|
+
* @returns {Vector} - Returns this layer.
|
|
157
|
+
*/
|
|
158
|
+
insert(entity: Entity, index: number, rightNow?: boolean): this;
|
|
159
|
+
protected _proceedEntity(entity: Entity, rightNow?: boolean): void;
|
|
160
|
+
/**
|
|
161
|
+
* Adds entity array to the layer.
|
|
162
|
+
* @public
|
|
163
|
+
* @param {Array.<Entity>} entities - Entities array.
|
|
164
|
+
* @param {boolean} [rightNow=false] - Entity insertion option. False is default.
|
|
165
|
+
* @returns {Vector} - Returns this layer.
|
|
166
|
+
*/
|
|
167
|
+
addEntities(entities: Entity[], rightNow?: boolean): this;
|
|
168
|
+
/**
|
|
169
|
+
* Remove entity from layer.
|
|
170
|
+
* TODO: memory leaks.
|
|
171
|
+
* @public
|
|
172
|
+
* @param {Entity} entity - Entity to remove.
|
|
173
|
+
* @returns {Vector} - Returns this layer.
|
|
174
|
+
*/
|
|
175
|
+
removeEntity(entity: Entity): this;
|
|
176
|
+
/**
|
|
177
|
+
* Set layer picking events active.
|
|
178
|
+
* @public
|
|
179
|
+
* @param {boolean} picking - Picking enable flag.
|
|
180
|
+
*/
|
|
181
|
+
set pickingEnabled(picking: boolean);
|
|
182
|
+
/**
|
|
183
|
+
* Refresh collected entities indexes from startIndex entities collection array position.
|
|
184
|
+
* @protected
|
|
185
|
+
* @param {number} startIndex - Entity array index.
|
|
186
|
+
*/
|
|
187
|
+
protected _reindexEntitiesArray(startIndex: number): void;
|
|
188
|
+
/**
|
|
189
|
+
* Removes entities from layer.
|
|
190
|
+
* @public
|
|
191
|
+
* @param {Array.<Entity>} entities - Entity array.
|
|
192
|
+
* @returns {Vector} - Returns this layer.
|
|
193
|
+
*/
|
|
194
|
+
removeEntities(entities: Entity[]): this;
|
|
195
|
+
/**
|
|
196
|
+
* TODO: Clear the layer.
|
|
197
|
+
* @public
|
|
198
|
+
*/
|
|
199
|
+
clear(): void;
|
|
200
|
+
/**
|
|
201
|
+
* Safety entities loop.
|
|
202
|
+
* @public
|
|
203
|
+
* @param {(entity: Entity, index?: number) => void} callback - Entity callback.
|
|
204
|
+
*/
|
|
205
|
+
each(callback: (entity: Entity, index?: number) => void): void;
|
|
206
|
+
/**
|
|
207
|
+
* Removes current entities from layer and adds new entities.
|
|
208
|
+
* @public
|
|
209
|
+
* @param {Array.<Entity>} entities - New entity array.
|
|
210
|
+
* @returns {Vector} - Returns layer instance.
|
|
211
|
+
*/
|
|
212
|
+
setEntities(entities: Entity[]): this;
|
|
213
|
+
/**
|
|
214
|
+
* @todo: replace to a strategy node collecting algorithm
|
|
215
|
+
*/
|
|
216
|
+
protected _createEntityCollectionsTree(entitiesForTree: Entity[]): void;
|
|
217
|
+
/**
|
|
218
|
+
* @todo (refactoring) could be used in somethig like bindEntityCollectionQuad(...)
|
|
219
|
+
* @param entityCollection
|
|
220
|
+
*/
|
|
221
|
+
_bindEventsDefault(entityCollection: EntityCollection): void;
|
|
222
|
+
protected _collectStripCollectionPASS(outArr: EntityCollection[]): void;
|
|
223
|
+
protected _collectPolylineCollectionPASS(outArr: EntityCollection[]): void;
|
|
224
|
+
protected _collectGeoObjectCollectionPASS(outArr: EntityCollection[]): void;
|
|
225
|
+
collectVisibleCollections(outArr: EntityCollection[]): void;
|
|
226
|
+
_queueDeferredNode(node: EntityCollectionNode): void;
|
|
227
|
+
protected _execDeferredNode(node: EntityCollectionNode): void;
|
|
228
|
+
/**
|
|
229
|
+
* Start to load tile material.
|
|
230
|
+
* @public
|
|
231
|
+
* @virtual
|
|
232
|
+
* @param {Material} material - Current material.
|
|
233
|
+
*/
|
|
234
|
+
loadMaterial(material: Material): void;
|
|
235
|
+
/**
|
|
236
|
+
* Abort exact material loading.
|
|
237
|
+
* @public
|
|
238
|
+
* @override
|
|
239
|
+
* @param {Material} material - Segment material.
|
|
240
|
+
*/
|
|
241
|
+
abortMaterialLoading(material: Material): void;
|
|
242
|
+
applyMaterial(material: Material, isForced?: boolean): NumberArray4;
|
|
243
|
+
clearMaterial(material: Material): void;
|
|
244
|
+
update(): void;
|
|
245
|
+
}
|
|
246
|
+
export { Vector };
|