@openglobus/og 0.19.4 → 0.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +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,113 @@
|
|
|
1
|
+
import { TypedArray } from "../utils/shared";
|
|
2
|
+
import { Geoid } from "./Geoid";
|
|
3
|
+
import { LonLat } from "../LonLat";
|
|
4
|
+
import { Planet } from "../scene/Planet";
|
|
5
|
+
import { Segment } from "../segment/Segment";
|
|
6
|
+
export interface IEmptyTerrainParams {
|
|
7
|
+
equalizeVertices?: boolean;
|
|
8
|
+
name?: string;
|
|
9
|
+
minZoom?: number;
|
|
10
|
+
maxZoom?: number;
|
|
11
|
+
maxNativeZoom?: number;
|
|
12
|
+
geoidSrc?: string;
|
|
13
|
+
geoid?: Geoid;
|
|
14
|
+
gridSizeByZoom?: number[];
|
|
15
|
+
}
|
|
16
|
+
export type UrlRewriteFunc = (tileX: number, tileY: number, tileZoom: number, tileGroup: number) => string | null | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Class represents terrain provider without elevation data.
|
|
19
|
+
* @param {IEmptyTerrainParams} [options] - Provider options:
|
|
20
|
+
* @param {string} [options.name="empty"] - Provider name.
|
|
21
|
+
* @param {boolean} [options.equalizeVertices] -
|
|
22
|
+
* @param {number} [options.minZoom=2] - Minimal visible zoom index when terrain handler works.
|
|
23
|
+
* @param {number} [options.minZoom=50] - Maximal visible zoom index when terrain handler works.
|
|
24
|
+
* @param {number} [options.maxNativeZoom=19] - Maximal available terrain zoom level.
|
|
25
|
+
* @param {Array.<number>} [options.gridSizeByZoom] - Array of segment triangulation grid sizes where array index agreed to the segment zoom index.
|
|
26
|
+
* @param {Array.<number>} [gridSizeByZoom] - Array of values, where each value corresponds to the size of a tile(or segment) on the globe. Each value must be power of two.
|
|
27
|
+
* @param {Geoid} [options.geoid] -
|
|
28
|
+
* @param {string} [options.geoidSrc] -
|
|
29
|
+
*/
|
|
30
|
+
declare class EmptyTerrain {
|
|
31
|
+
static __counter__: number;
|
|
32
|
+
/**
|
|
33
|
+
* Uniq identifier.
|
|
34
|
+
* @public
|
|
35
|
+
* @type {number}
|
|
36
|
+
*/
|
|
37
|
+
__id: number;
|
|
38
|
+
equalizeVertices: boolean;
|
|
39
|
+
equalizeNormals: boolean;
|
|
40
|
+
isEmpty: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Provider name is "empty"
|
|
43
|
+
* @public
|
|
44
|
+
* @type {string}
|
|
45
|
+
*/
|
|
46
|
+
name: string;
|
|
47
|
+
/**
|
|
48
|
+
* Minimal z-index value for segment elevation data handling.
|
|
49
|
+
* @public
|
|
50
|
+
* @type {number}
|
|
51
|
+
*/
|
|
52
|
+
minZoom: number;
|
|
53
|
+
/**
|
|
54
|
+
* Maximal z-index value for segment elevation data handling.
|
|
55
|
+
* @public
|
|
56
|
+
* @type {number}
|
|
57
|
+
*/
|
|
58
|
+
maxZoom: number;
|
|
59
|
+
noDataValues: number[];
|
|
60
|
+
/**
|
|
61
|
+
* Maximal existent available zoom
|
|
62
|
+
* @type {number}
|
|
63
|
+
*/
|
|
64
|
+
maxNativeZoom: number;
|
|
65
|
+
/**
|
|
66
|
+
* @public
|
|
67
|
+
* @type {Array.<number>}
|
|
68
|
+
*/
|
|
69
|
+
gridSizeByZoom: number[];
|
|
70
|
+
_maxNodeZoom: number;
|
|
71
|
+
/**
|
|
72
|
+
* Elevation grid size. Current is 2x2 is the smallest grid size.
|
|
73
|
+
* @public
|
|
74
|
+
* @type {number}
|
|
75
|
+
*/
|
|
76
|
+
plainGridSize: number;
|
|
77
|
+
/**
|
|
78
|
+
* Planet scene.
|
|
79
|
+
* @public
|
|
80
|
+
* @type {Planet}
|
|
81
|
+
*/
|
|
82
|
+
_planet: Planet | null;
|
|
83
|
+
_geoid: Geoid;
|
|
84
|
+
_isReady: boolean;
|
|
85
|
+
constructor(options?: IEmptyTerrainParams);
|
|
86
|
+
/**
|
|
87
|
+
* Sets url rewrite callback, used for custom url rewriting for every tile loading.
|
|
88
|
+
* @public
|
|
89
|
+
* @param {UrlRewriteFunc} ur - The callback that returns tile custom created url.
|
|
90
|
+
*/
|
|
91
|
+
setUrlRewriteCallback(ur: UrlRewriteFunc): void;
|
|
92
|
+
get isIdle(): boolean;
|
|
93
|
+
isEqual(obj: this): boolean;
|
|
94
|
+
static checkNoDataValue(noDataValues: number[] | TypedArray, value: number): boolean;
|
|
95
|
+
isBlur(segment?: Segment): boolean;
|
|
96
|
+
set maxNodeZoom(val: number);
|
|
97
|
+
get maxNodeZoom(): number;
|
|
98
|
+
set geoid(geoid: Geoid);
|
|
99
|
+
get geoid(): Geoid;
|
|
100
|
+
getGeoid(): Geoid;
|
|
101
|
+
/**
|
|
102
|
+
* Loads or creates segment elevation data.
|
|
103
|
+
* @public
|
|
104
|
+
* @param {Segment} segment - Segment to create elevation data.
|
|
105
|
+
*/
|
|
106
|
+
handleSegmentTerrain(segment: Segment): void;
|
|
107
|
+
isReady(): boolean;
|
|
108
|
+
abortLoading(): void;
|
|
109
|
+
clearCache(): void;
|
|
110
|
+
getHeightAsync(lonLat: LonLat, callback: (height: number) => void): boolean;
|
|
111
|
+
loadTerrain(segment: Segment, forceLoading?: boolean): void;
|
|
112
|
+
}
|
|
113
|
+
export { EmptyTerrain };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { LonLat } from "../LonLat";
|
|
2
|
+
interface IGeoidParams {
|
|
3
|
+
model?: GeoidModel;
|
|
4
|
+
src?: string | null;
|
|
5
|
+
}
|
|
6
|
+
export type GeoidModel = {
|
|
7
|
+
scale: number;
|
|
8
|
+
offset: number;
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
rlonres: number;
|
|
12
|
+
rlatres: number;
|
|
13
|
+
i: number;
|
|
14
|
+
rawfile: Uint8Array;
|
|
15
|
+
};
|
|
16
|
+
declare class Geoid {
|
|
17
|
+
model: GeoidModel | null;
|
|
18
|
+
src: string | null;
|
|
19
|
+
protected _cached_ix: number;
|
|
20
|
+
protected _cached_iy: number;
|
|
21
|
+
protected _v00: number;
|
|
22
|
+
protected _v01: number;
|
|
23
|
+
protected _v10: number;
|
|
24
|
+
protected _v11: number;
|
|
25
|
+
protected _t: number;
|
|
26
|
+
constructor(options?: IGeoidParams);
|
|
27
|
+
static loadModel(url?: string | null): Promise<GeoidModel | null>;
|
|
28
|
+
setModel(model: GeoidModel | null): void;
|
|
29
|
+
protected _rawval(ix: number, iy: number): number;
|
|
30
|
+
getHeightLonLat(lonlat: LonLat): number;
|
|
31
|
+
getHeight(lon: number, lat: number): number;
|
|
32
|
+
}
|
|
33
|
+
export { Geoid };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { IRgbTerrainParams, RgbTerrain } from "./RgbTerrain";
|
|
2
|
+
import { Segment } from "../segment/Segment";
|
|
3
|
+
export declare class GlobusRgbTerrain extends RgbTerrain {
|
|
4
|
+
constructor(name?: string | null, options?: IRgbTerrainParams);
|
|
5
|
+
isReadyToLoad(segment: Segment): boolean;
|
|
6
|
+
}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { EventsHandler } from "../Events";
|
|
2
|
+
import { TypedArray } from "../utils/shared";
|
|
3
|
+
import { EmptyTerrain, IEmptyTerrainParams, UrlRewriteFunc } from "./EmptyTerrain";
|
|
4
|
+
import { Extent } from "../Extent";
|
|
5
|
+
import { Loader } from "../utils/Loader";
|
|
6
|
+
import { LonLat } from "../LonLat";
|
|
7
|
+
import { Segment } from "../segment/Segment";
|
|
8
|
+
export interface IGlobusTerrainParams extends IEmptyTerrainParams {
|
|
9
|
+
subdomains?: string[];
|
|
10
|
+
url?: string;
|
|
11
|
+
extent?: Extent | [[number, number], [number, number]];
|
|
12
|
+
urlRewrite?: UrlRewriteFunc;
|
|
13
|
+
noDataValues?: number[];
|
|
14
|
+
plainGridSize?: number;
|
|
15
|
+
heightFactor?: number;
|
|
16
|
+
}
|
|
17
|
+
type TileData = {
|
|
18
|
+
heights: number[] | TypedArray | null;
|
|
19
|
+
extent: Extent | null;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Class that loads segment elevation data, converts it to the array and passes it to the planet segment.
|
|
23
|
+
* @class
|
|
24
|
+
* @extends {GlobusTerrain}
|
|
25
|
+
* @param {string} [name=""] - Terrain provider name.
|
|
26
|
+
* @param {IGlobusTerrainParams} [options] - Provider options:
|
|
27
|
+
* @param {number} [options.minZoom=3] - Minimal visible zoom index when terrain handler works.
|
|
28
|
+
* @param {number} [options.minZoom=14] - Maximal visible zoom index when terrain handler works.
|
|
29
|
+
* @param {number} [options.minNativeZoom=14] - Maximal available terrain zoom level.
|
|
30
|
+
* @param {string} [options.url="//openglobus.org/heights/srtm3/{z}/{y}/{x}.ddm"] - Terrain source path url template. Default is openglobus ddm elevation file.
|
|
31
|
+
* @param {Array.<number>} [options.gridSizeByZoom] - Array of segment triangulation grid sizes where array index agreed to the segment zoom index.
|
|
32
|
+
* @param {number} [options.plainGridSize=32] - Elevation grid size. Default is 32x32. Must be power of two.
|
|
33
|
+
* @param {string} [options.responseType="arraybuffer"] - Response type.
|
|
34
|
+
* @param {number} [options.MAX_LOADING_TILES] - Maximum at one time loading tiles.
|
|
35
|
+
* @param {Array.<number>} [gridSizeByZoom] - Array of values, where each value corresponds to the size of a tile(or segment) on the globe. Each value must be power of two.
|
|
36
|
+
* @param {number} [heightFactor=1] - Elevation height multiplier.
|
|
37
|
+
*
|
|
38
|
+
* @fires GlobusTerrainEvents#load
|
|
39
|
+
* @fires GlobusTerrainEvents#loadend
|
|
40
|
+
*/
|
|
41
|
+
declare class GlobusTerrain extends EmptyTerrain {
|
|
42
|
+
events: GlobusTerrainEvents;
|
|
43
|
+
protected _s: string[];
|
|
44
|
+
protected _requestCount: number;
|
|
45
|
+
protected _requestsPeerSubdomain: number;
|
|
46
|
+
/**
|
|
47
|
+
* Terrain source path url template.
|
|
48
|
+
* @protected
|
|
49
|
+
* @type {string}
|
|
50
|
+
*/
|
|
51
|
+
protected url: string;
|
|
52
|
+
protected _extent: Extent;
|
|
53
|
+
protected _dataType: string;
|
|
54
|
+
protected _elevationCache: Record<string, TileData>;
|
|
55
|
+
protected _fetchCache: Record<string, Promise<any>>;
|
|
56
|
+
protected _loader: Loader<GlobusTerrain>;
|
|
57
|
+
/**
|
|
58
|
+
* Rewrites elevation storage url query.
|
|
59
|
+
* @protected
|
|
60
|
+
* @type {Function} -
|
|
61
|
+
*/
|
|
62
|
+
protected _urlRewriteCallback: UrlRewriteFunc | null;
|
|
63
|
+
protected _heightFactor: number;
|
|
64
|
+
constructor(name?: string, options?: IGlobusTerrainParams);
|
|
65
|
+
get loader(): Loader<GlobusTerrain>;
|
|
66
|
+
clearCache(): void;
|
|
67
|
+
isBlur(segment: Segment): boolean;
|
|
68
|
+
setElevationCache(tileIndex: string, tileData: TileData): void;
|
|
69
|
+
getElevationCache(tileIndex: string): TileData | undefined;
|
|
70
|
+
getHeightAsync(lonLat: LonLat, callback: (h: number) => void, zoom?: number, firstAttempt?: boolean): boolean;
|
|
71
|
+
protected _getGroundHeightMerc(merc: LonLat, tileData: TileData): number;
|
|
72
|
+
/**
|
|
73
|
+
* Stop loading.
|
|
74
|
+
* @public
|
|
75
|
+
*/
|
|
76
|
+
abortLoading(): void;
|
|
77
|
+
/**
|
|
78
|
+
* Sets terrain data url template.
|
|
79
|
+
* @public
|
|
80
|
+
* @param {string} url - Url template.
|
|
81
|
+
* @example <caption>Default openglobus url template:</caption>:
|
|
82
|
+
* "http://earth3.openglobus.org/{z}/{y}/{x}.ddm"
|
|
83
|
+
*/
|
|
84
|
+
setUrl(url: string): void;
|
|
85
|
+
/**
|
|
86
|
+
* Sets provider name.
|
|
87
|
+
* @public
|
|
88
|
+
* @param {string} name - Name.
|
|
89
|
+
*/
|
|
90
|
+
setName(name: string): void;
|
|
91
|
+
isReadyToLoad(segment: Segment): boolean;
|
|
92
|
+
/**
|
|
93
|
+
* Starts to load segment elevation data.
|
|
94
|
+
* @public
|
|
95
|
+
* @param {Segment} segment - Segment that wants a terrain data.
|
|
96
|
+
* @param {boolean} [forceLoading] -
|
|
97
|
+
*/
|
|
98
|
+
loadTerrain(segment: Segment, forceLoading?: boolean): void;
|
|
99
|
+
protected _getSubdomain(): string;
|
|
100
|
+
buildURL(x: number, y: number, z: number, tileGroup: number): string;
|
|
101
|
+
/**
|
|
102
|
+
* Creates default query url string.
|
|
103
|
+
* @protected
|
|
104
|
+
* @param {Segment} segment -
|
|
105
|
+
* @returns {string} -
|
|
106
|
+
*/
|
|
107
|
+
protected _createUrl(segment: Segment): string;
|
|
108
|
+
/**
|
|
109
|
+
* Returns actual url query string.
|
|
110
|
+
* @protected
|
|
111
|
+
* @param {Segment} segment - Segment that loads image data.
|
|
112
|
+
* @returns {string} - Url string.
|
|
113
|
+
*/
|
|
114
|
+
protected _getHTTPRequestString(segment: Segment): string;
|
|
115
|
+
/**
|
|
116
|
+
* Sets url rewrite callback, used for custom url rewriting for every tile loading.
|
|
117
|
+
* @public
|
|
118
|
+
* @param {UrlRewriteFunc} ur - The callback that returns tile custom created url.
|
|
119
|
+
*/
|
|
120
|
+
setUrlRewriteCallback(ur: UrlRewriteFunc): void;
|
|
121
|
+
/**
|
|
122
|
+
* Converts loaded data to segment elevation data type(column major elevation data array in meters)
|
|
123
|
+
* @public
|
|
124
|
+
* @returns {Array.<number>} -
|
|
125
|
+
*/
|
|
126
|
+
protected _createHeights(data: any, segment?: Segment | null, tileGroup?: number, x?: number, y?: number, z?: number, extent?: Extent, isMaxZoom?: boolean): TypedArray | number[];
|
|
127
|
+
/**
|
|
128
|
+
* @protected
|
|
129
|
+
*/
|
|
130
|
+
protected _applyElevationsData(segment: Segment, elevations: number[] | TypedArray | null): void;
|
|
131
|
+
}
|
|
132
|
+
type GlobusTerrainEventsList = [
|
|
133
|
+
"load",
|
|
134
|
+
"loadend"
|
|
135
|
+
];
|
|
136
|
+
type GlobusTerrainEvents = EventsHandler<GlobusTerrainEventsList>;
|
|
137
|
+
export { GlobusTerrain };
|
|
@@ -3,20 +3,20 @@ import { GlobusTerrain, IGlobusTerrainParams } from "./GlobusTerrain";
|
|
|
3
3
|
import { LonLat } from "../LonLat";
|
|
4
4
|
import { Segment } from "../segment/Segment";
|
|
5
5
|
import { TypedArray } from "../utils/shared";
|
|
6
|
-
interface
|
|
6
|
+
export interface IRgbTerrainParams extends IGlobusTerrainParams {
|
|
7
7
|
equalizeNormals?: boolean;
|
|
8
8
|
key?: string;
|
|
9
9
|
imageSize?: number;
|
|
10
10
|
}
|
|
11
|
-
declare class
|
|
11
|
+
declare class RgbTerrain extends GlobusTerrain {
|
|
12
12
|
protected _imageSize: number;
|
|
13
13
|
protected _ctx: CanvasRenderingContext2D;
|
|
14
14
|
protected _imageDataCache: Record<string, Uint8ClampedArray>;
|
|
15
|
-
constructor(name: string | null, options?:
|
|
15
|
+
constructor(name: string | null, options?: IRgbTerrainParams);
|
|
16
16
|
static checkNoDataValue(noDataValues: number[] | TypedArray, value: number): boolean;
|
|
17
17
|
isBlur(segment: Segment): boolean;
|
|
18
18
|
protected _createTemporalCanvas(size: number): CanvasRenderingContext2D;
|
|
19
|
-
protected _createHeights(data: HTMLImageElement | ImageBitmap,
|
|
19
|
+
protected _createHeights(data: HTMLImageElement | ImageBitmap, segment: Segment | null, tileGroup: number, tileX: number, tileY: number, tileZoom: number, extent: Extent, preventChildren: boolean): TypedArray | number[];
|
|
20
20
|
getHeightAsync(lonLat: LonLat, callback: (h: number) => void, zoom?: number): boolean;
|
|
21
21
|
}
|
|
22
|
-
export {
|
|
22
|
+
export { RgbTerrain };
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { BilTerrain } from './BilTerrain';
|
|
2
|
+
import { EmptyTerrain } from './EmptyTerrain';
|
|
3
|
+
import { GlobusTerrain } from './GlobusTerrain';
|
|
4
|
+
import { RgbTerrain } from './RgbTerrain';
|
|
5
|
+
import { GlobusRgbTerrain } from './GlobusRgbTerrain';
|
|
6
|
+
export { EmptyTerrain, GlobusTerrain, RgbTerrain, BilTerrain, GlobusRgbTerrain };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { IViewParams, View, ViewEventsList } from './View';
|
|
2
|
+
import { EventsHandler } from "../Events";
|
|
3
|
+
interface HTMLElementExt extends HTMLElement {
|
|
4
|
+
__og_button__: Button;
|
|
5
|
+
}
|
|
6
|
+
export type ButtonEventsList = ["click", "mousedown", "mouseup", "touchstart", "touchend", "touchcancel"];
|
|
7
|
+
export interface IButtonParams extends IViewParams {
|
|
8
|
+
icon?: string;
|
|
9
|
+
text?: string;
|
|
10
|
+
title?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
}
|
|
13
|
+
declare class Button extends View<null> {
|
|
14
|
+
events: EventsHandler<ButtonEventsList> & EventsHandler<ViewEventsList>;
|
|
15
|
+
el: HTMLElementExt | null;
|
|
16
|
+
name: string;
|
|
17
|
+
$icon: HTMLElement | null;
|
|
18
|
+
$text: HTMLElement | null;
|
|
19
|
+
constructor(options?: IButtonParams);
|
|
20
|
+
render(params: any): this;
|
|
21
|
+
protected _initEvents(): void;
|
|
22
|
+
protected _onMouseDown: (e: MouseEvent) => void;
|
|
23
|
+
protected _onMouseUp: (e: MouseEvent) => void;
|
|
24
|
+
protected _onTouchStart: (e: TouchEvent) => void;
|
|
25
|
+
protected _onTouchEnd: (e: TouchEvent) => void;
|
|
26
|
+
protected _onTouchCancel: (e: TouchEvent) => void;
|
|
27
|
+
protected _mouseClickHandler(e: MouseEvent): void;
|
|
28
|
+
protected _onMouseClick: (e: MouseEvent) => void;
|
|
29
|
+
remove(): void;
|
|
30
|
+
protected _clearEvents(): void;
|
|
31
|
+
}
|
|
32
|
+
export { Button };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ToggleButton } from "./ToggleButton";
|
|
2
|
+
import { EventsHandler } from '../Events';
|
|
3
|
+
interface IButtonGroupParams {
|
|
4
|
+
buttons?: ToggleButton[];
|
|
5
|
+
}
|
|
6
|
+
type ButtonGroupEventsList = ["change"];
|
|
7
|
+
declare class ButtonGroup {
|
|
8
|
+
events: EventsHandler<ButtonGroupEventsList>;
|
|
9
|
+
protected _buttons: ToggleButton[];
|
|
10
|
+
constructor(options?: IButtonGroupParams);
|
|
11
|
+
protected _bindButton(button: ToggleButton): void;
|
|
12
|
+
add(button: ToggleButton): void;
|
|
13
|
+
protected _onChange: (isActive: boolean, btn: ToggleButton) => void;
|
|
14
|
+
remove(button: ToggleButton): void;
|
|
15
|
+
}
|
|
16
|
+
export { ButtonGroup };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { EventsHandler } from "../Events";
|
|
2
|
+
import { IViewParams, View, ViewEventsList } from './View';
|
|
3
|
+
interface IColorParams extends IViewParams {
|
|
4
|
+
label?: string;
|
|
5
|
+
value?: string;
|
|
6
|
+
}
|
|
7
|
+
type ColorEventsList = ["input"];
|
|
8
|
+
declare class Color extends View<null> {
|
|
9
|
+
events: EventsHandler<ColorEventsList> & EventsHandler<ViewEventsList>;
|
|
10
|
+
protected _value: string;
|
|
11
|
+
protected $label: HTMLElement | null;
|
|
12
|
+
protected $input: HTMLInputElement | null;
|
|
13
|
+
constructor(options?: IColorParams);
|
|
14
|
+
render(params: any): this;
|
|
15
|
+
set value(val: string);
|
|
16
|
+
get value(): string;
|
|
17
|
+
protected _initEvents(): void;
|
|
18
|
+
protected _clearEvents(): void;
|
|
19
|
+
protected _onInput: (e: Event) => void;
|
|
20
|
+
remove(): void;
|
|
21
|
+
}
|
|
22
|
+
export { Color };
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Button } from './Button';
|
|
2
|
+
import { IViewParams, View, ViewEventsList } from './View';
|
|
3
|
+
import { EventsHandler } from "../Events";
|
|
4
|
+
export interface IDialogParams extends IViewParams {
|
|
5
|
+
title?: string;
|
|
6
|
+
visible?: boolean;
|
|
7
|
+
resizable?: boolean;
|
|
8
|
+
width?: number;
|
|
9
|
+
height?: number;
|
|
10
|
+
left?: number;
|
|
11
|
+
top?: number;
|
|
12
|
+
minHeight?: number;
|
|
13
|
+
maxHeight?: number;
|
|
14
|
+
minWidth?: number;
|
|
15
|
+
maxWidth?: number;
|
|
16
|
+
useHide?: boolean;
|
|
17
|
+
}
|
|
18
|
+
type DialogEventsList = ["resize", "focus", "visibility", "dragstart", "dragend"];
|
|
19
|
+
declare class Dialog<M> extends View<M> {
|
|
20
|
+
static __zIndex__: number;
|
|
21
|
+
events: EventsHandler<DialogEventsList> & EventsHandler<ViewEventsList>;
|
|
22
|
+
$header: HTMLElement | null;
|
|
23
|
+
$title: HTMLElement | null;
|
|
24
|
+
$container: HTMLElement | null;
|
|
25
|
+
$buttons: HTMLElement | null;
|
|
26
|
+
useHide: boolean;
|
|
27
|
+
protected _startPosX: number;
|
|
28
|
+
protected _startPosY: number;
|
|
29
|
+
protected _closeBtn: Button;
|
|
30
|
+
protected _visibility: boolean;
|
|
31
|
+
constructor(options?: IDialogParams);
|
|
32
|
+
setContainer(htmlStr: string): void;
|
|
33
|
+
get container(): HTMLElement | null;
|
|
34
|
+
get width(): number;
|
|
35
|
+
get height(): number;
|
|
36
|
+
bringToFront(): void;
|
|
37
|
+
render(params: any): this;
|
|
38
|
+
show(): void;
|
|
39
|
+
hide(): void;
|
|
40
|
+
close(): void;
|
|
41
|
+
setVisibility(visibility: boolean): void;
|
|
42
|
+
protected _initButtons(): void;
|
|
43
|
+
protected _initEvents(): void;
|
|
44
|
+
protected _onCloseBtnClick: () => void;
|
|
45
|
+
protected _onMouseDownAll: () => void;
|
|
46
|
+
protected _onMouseDown: (e: MouseEvent) => void;
|
|
47
|
+
setPosition(x?: number, y?: number): void;
|
|
48
|
+
protected _onMouseMove: (e: MouseEvent) => void;
|
|
49
|
+
protected _startDragging(): void;
|
|
50
|
+
protected _clearDragging(): void;
|
|
51
|
+
protected _onMouseUp: () => void;
|
|
52
|
+
remove(): void;
|
|
53
|
+
protected _clearEvents(): void;
|
|
54
|
+
}
|
|
55
|
+
export { Dialog };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { EventsHandler } from "../Events";
|
|
2
|
+
import { IViewParams, View, ViewEventsList } from './View';
|
|
3
|
+
interface ISliderParams extends IViewParams {
|
|
4
|
+
label?: string;
|
|
5
|
+
value?: number;
|
|
6
|
+
min?: number;
|
|
7
|
+
max?: number;
|
|
8
|
+
}
|
|
9
|
+
type SliderEventsList = ["change"];
|
|
10
|
+
declare class Slider extends View<null> {
|
|
11
|
+
events: EventsHandler<SliderEventsList> & EventsHandler<ViewEventsList>;
|
|
12
|
+
protected _value: number;
|
|
13
|
+
protected _min: number;
|
|
14
|
+
protected _max: number;
|
|
15
|
+
protected _startPosX: number;
|
|
16
|
+
protected _resizeObserver: ResizeObserver;
|
|
17
|
+
protected $label: HTMLElement | null;
|
|
18
|
+
protected $pointer: HTMLElement | null;
|
|
19
|
+
protected $progress: HTMLElement | null;
|
|
20
|
+
protected $input: HTMLInputElement | null;
|
|
21
|
+
protected $panel: HTMLElement | null;
|
|
22
|
+
constructor(options?: ISliderParams);
|
|
23
|
+
render(params: any): this;
|
|
24
|
+
protected _onResize: () => void;
|
|
25
|
+
set value(val: number);
|
|
26
|
+
get value(): number;
|
|
27
|
+
protected _initEvents(): void;
|
|
28
|
+
protected _clearEvents(): void;
|
|
29
|
+
protected _onMouseWheel: (e: WheelEvent) => void;
|
|
30
|
+
protected _onMouseWheelFF: (e: WheelEvent) => void;
|
|
31
|
+
protected _onInput: (e: Event) => void;
|
|
32
|
+
protected _onMouseDown: (e: MouseEvent) => void;
|
|
33
|
+
protected _setOffset(x: number): void;
|
|
34
|
+
protected _onMouseMove: (e: MouseEvent) => void;
|
|
35
|
+
protected _onMouseUp: () => void;
|
|
36
|
+
remove(): void;
|
|
37
|
+
}
|
|
38
|
+
export { Slider };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Button, IButtonParams, ButtonEventsList } from './Button';
|
|
2
|
+
import { EventsHandler } from "../Events";
|
|
3
|
+
import { ViewEventsList } from "./View";
|
|
4
|
+
interface IToggleButtonParams extends IButtonParams {
|
|
5
|
+
isActive?: boolean;
|
|
6
|
+
preventClick?: boolean;
|
|
7
|
+
}
|
|
8
|
+
type ToggleButtonEventsList = ["change"];
|
|
9
|
+
declare class ToggleButton extends Button {
|
|
10
|
+
events: EventsHandler<ToggleButtonEventsList> & EventsHandler<ButtonEventsList> & EventsHandler<ViewEventsList>;
|
|
11
|
+
protected _isActive: boolean;
|
|
12
|
+
preventClick: boolean;
|
|
13
|
+
constructor(options: IToggleButtonParams);
|
|
14
|
+
setActive(isActive: boolean, stopPropagation?: boolean): void;
|
|
15
|
+
protected _toggle(): void;
|
|
16
|
+
get isActive(): boolean;
|
|
17
|
+
render(params: any): this;
|
|
18
|
+
protected _onMouseClick: (e: MouseEvent) => void;
|
|
19
|
+
}
|
|
20
|
+
export { ToggleButton };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { EventsHandler } from '../Events';
|
|
2
|
+
export interface IViewParams {
|
|
3
|
+
model?: any;
|
|
4
|
+
template?: string;
|
|
5
|
+
parent?: View<any> | null;
|
|
6
|
+
classList?: string[];
|
|
7
|
+
}
|
|
8
|
+
export type ViewEventsList = ["render"];
|
|
9
|
+
declare class View<M> {
|
|
10
|
+
static __counter__: number;
|
|
11
|
+
protected __id: number;
|
|
12
|
+
events: EventsHandler<ViewEventsList>;
|
|
13
|
+
model: M;
|
|
14
|
+
template: string;
|
|
15
|
+
parent: View<any> | null;
|
|
16
|
+
el: HTMLElement | null;
|
|
17
|
+
protected _classList: string[];
|
|
18
|
+
constructor(options?: IViewParams);
|
|
19
|
+
static getHTML(template: string, params: any): string;
|
|
20
|
+
static parseHTML(htmlStr: string): HTMLElement[];
|
|
21
|
+
static insertAfter(newNodes: HTMLElement | HTMLElement[], referenceNode: Node): HTMLElement[];
|
|
22
|
+
static insertBefore(newNodes: HTMLElement | HTMLElement[], referenceNode: Node): HTMLElement[];
|
|
23
|
+
insertBefore(view: View<any> | HTMLElement): void;
|
|
24
|
+
insertAfter(view: View<any> | HTMLElement): void;
|
|
25
|
+
isEqual(view: View<any>): boolean;
|
|
26
|
+
appendTo(node: HTMLElement, clean?: boolean, firstPosition?: boolean): this;
|
|
27
|
+
afterRender(parentNode: HTMLElement): void;
|
|
28
|
+
beforeRender(parentNode: HTMLElement): void;
|
|
29
|
+
stopPropagation(): void;
|
|
30
|
+
renderTemplate(params: any): HTMLElement;
|
|
31
|
+
render(params?: any): this;
|
|
32
|
+
select<T extends HTMLElement>(queryStr: string): T | null;
|
|
33
|
+
selectRemove(queryStr: string): HTMLElement | undefined;
|
|
34
|
+
selectAll(queryStr: string, callback?: Function): NodeListOf<Element> | undefined;
|
|
35
|
+
remove(): void;
|
|
36
|
+
}
|
|
37
|
+
export { View };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const CLOSE_ICON = "<svg className=\"svg-icon\" style=\"width: 1em; height: 1em;vertical-align: middle;fill: currentColor; overflow: hidden;\" viewBox=\"0 0 1024 1024\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M777.856 280.192l-33.92-33.952-231.872 231.872-231.84-231.872-33.984 33.888 231.872 231.904-231.84 231.84 33.888 33.984 231.904-231.904 231.84 231.872 33.952-33.888-231.872-231.904z\"/>\n</svg>";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare class BaseWorker<T> {
|
|
2
|
+
protected _sourceId: number;
|
|
3
|
+
protected _source: Map<number, T>;
|
|
4
|
+
protected _pendingQueue: T[];
|
|
5
|
+
protected _numWorkers: number;
|
|
6
|
+
protected _workerQueue: Worker[];
|
|
7
|
+
constructor(numWorkers?: number, program?: string);
|
|
8
|
+
check(): void;
|
|
9
|
+
setProgram(program: string): void;
|
|
10
|
+
make(data: T): void;
|
|
11
|
+
protected _onMessage(e: MessageEvent): void;
|
|
12
|
+
destroy(): void;
|
|
13
|
+
get pendingQueue(): T[];
|
|
14
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Deferred } from '../Deferred';
|
|
2
|
+
import { Rectangle } from '../Rectangle';
|
|
3
|
+
import { TextureAtlas, TextureAtlasNode } from './TextureAtlas';
|
|
4
|
+
import { Handler } from "../webgl/Handler";
|
|
5
|
+
import { HTMLImageElementExt } from "./ImagesCacheManager";
|
|
6
|
+
interface IChar {
|
|
7
|
+
id: number;
|
|
8
|
+
char: string;
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
x: number;
|
|
12
|
+
y: number;
|
|
13
|
+
chnl: number;
|
|
14
|
+
index: number;
|
|
15
|
+
page: number;
|
|
16
|
+
xadvance: number;
|
|
17
|
+
xoffset: number;
|
|
18
|
+
yoffset: number;
|
|
19
|
+
}
|
|
20
|
+
interface IKerning {
|
|
21
|
+
first: number;
|
|
22
|
+
second: number;
|
|
23
|
+
amount: number;
|
|
24
|
+
}
|
|
25
|
+
export interface IFontParams {
|
|
26
|
+
common: {
|
|
27
|
+
scaleH: number;
|
|
28
|
+
scaleW: number;
|
|
29
|
+
};
|
|
30
|
+
info: {
|
|
31
|
+
size: number;
|
|
32
|
+
};
|
|
33
|
+
distanceField: {
|
|
34
|
+
distanceRange: number;
|
|
35
|
+
};
|
|
36
|
+
chars: IChar[];
|
|
37
|
+
kernings: IKerning[];
|
|
38
|
+
pages: string[];
|
|
39
|
+
}
|
|
40
|
+
declare class FontTextureAtlas extends TextureAtlas {
|
|
41
|
+
width: number;
|
|
42
|
+
height: number;
|
|
43
|
+
gliphSize: number;
|
|
44
|
+
distanceRange: number;
|
|
45
|
+
nodes: Map<number, FontTextureAtlasNode>;
|
|
46
|
+
kernings: Record<number, Record<number, number>>;
|
|
47
|
+
constructor(width?: number, height?: number);
|
|
48
|
+
get(key: number): FontTextureAtlasNode | undefined;
|
|
49
|
+
}
|
|
50
|
+
interface IMetrics extends IChar {
|
|
51
|
+
nChar: string;
|
|
52
|
+
nCode: number;
|
|
53
|
+
nWidth: number;
|
|
54
|
+
nHeight: number;
|
|
55
|
+
nAdvance: number;
|
|
56
|
+
nXOffset: number;
|
|
57
|
+
nYOffset: number;
|
|
58
|
+
}
|
|
59
|
+
declare class FontTextureAtlasNode extends TextureAtlasNode {
|
|
60
|
+
metrics: IMetrics;
|
|
61
|
+
emptySize: number;
|
|
62
|
+
constructor(rect: Rectangle, texCoords: number[]);
|
|
63
|
+
}
|
|
64
|
+
declare class FontAtlas {
|
|
65
|
+
atlasesArr: FontTextureAtlas[];
|
|
66
|
+
samplerArr: Uint32Array;
|
|
67
|
+
sdfParamsArr: Float32Array;
|
|
68
|
+
catalogSrc: string;
|
|
69
|
+
protected atlasIndexes: Record<string, number>;
|
|
70
|
+
protected atlasIndexesDeferred: Record<string, Deferred<number>>;
|
|
71
|
+
protected tokenImageSize: number;
|
|
72
|
+
protected _handler: Handler | null;
|
|
73
|
+
constructor(catalogSrc?: string);
|
|
74
|
+
assignHandler(handler: Handler): void;
|
|
75
|
+
getFontIndex(face: string): Promise<number>;
|
|
76
|
+
getFullIndex(face: string): string;
|
|
77
|
+
protected _applyFontDataToAtlas(atlas: FontTextureAtlas, data: IFontParams, index?: number): void;
|
|
78
|
+
initFont(faceName: string, dataJson: IFontParams, imageBase64: string): void;
|
|
79
|
+
protected _createTexture(atlas: FontTextureAtlas, img: HTMLImageElementExt): void;
|
|
80
|
+
loadFont(faceName: string, srcDir: string, atlasUrl: string): void;
|
|
81
|
+
}
|
|
82
|
+
export { FontAtlas };
|