@openglobus/og 0.12.1 → 0.12.3
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/dist/@openglobus/og.css +1 -0
- package/dist/@openglobus/og.esm.js +21 -0
- package/dist/@openglobus/og.esm.js.map +1 -0
- package/dist/@openglobus/og.umd.js +21 -0
- package/dist/@openglobus/og.umd.js.map +1 -0
- package/package.json +2 -2
- package/src/og/entity/GeoObjectHandler.js +35 -16
- package/src/og/layer/KML.js +19 -12
- package/src/og/layer/Layer.js +4 -1
- package/src/og/scene/Planet.js +14 -14
- package/src/og/shaders/geoObject.js +15 -6
- package/types/Clock.d.ts +94 -0
- package/types/Deferred.d.ts +6 -0
- package/types/Events.d.ts +77 -0
- package/types/Extent.d.ts +166 -0
- package/types/Globe.d.ts +85 -0
- package/types/ImageCanvas.d.ts +123 -0
- package/types/Lock.d.ts +12 -0
- package/types/LonLat.d.ts +108 -0
- package/types/Popup.d.ts +42 -0
- package/types/QueueArray.d.ts +19 -0
- package/types/Rectangle.d.ts +80 -0
- package/types/Stack.d.ts +19 -0
- package/types/ajax.d.ts +24 -0
- package/types/arial.d.ts +48 -0
- package/types/astro/astro.d.ts +38 -0
- package/types/astro/earth.d.ts +7 -0
- package/types/astro/jd.d.ts +254 -0
- package/types/bv/Box.d.ts +30 -0
- package/types/bv/Sphere.d.ts +38 -0
- package/types/bv/index.d.ts +3 -0
- package/types/camera/Camera.d.ts +312 -0
- package/types/camera/Frustum.d.ts +133 -0
- package/types/camera/PlanetCamera.d.ts +219 -0
- package/types/camera/index.d.ts +3 -0
- package/types/cons.d.ts +40 -0
- package/types/control/CompassButton.d.ts +17 -0
- package/types/control/Control.d.ts +104 -0
- package/types/control/DebugInfo.d.ts +15 -0
- package/types/control/EarthCoordinates.d.ts +47 -0
- package/types/control/EarthNavigation.d.ts +43 -0
- package/types/control/GeoImageDragControl.d.ts +6 -0
- package/types/control/KeyboardNavigation.d.ts +21 -0
- package/types/control/LayerSwitcher.d.ts +21 -0
- package/types/control/Lighting.d.ts +16 -0
- package/types/control/MouseNavigation.d.ts +48 -0
- package/types/control/MouseWheelZoomControl.d.ts +45 -0
- package/types/control/ScaleControl.d.ts +22 -0
- package/types/control/ShowFps.d.ts +11 -0
- package/types/control/SimpleNavigation.d.ts +25 -0
- package/types/control/Sun.d.ts +50 -0
- package/types/control/ToggleWireframe.d.ts +12 -0
- package/types/control/TouchNavigation.d.ts +48 -0
- package/types/control/ZoomControl.d.ts +27 -0
- package/types/control/index.d.ts +18 -0
- package/types/ellipsoid/Ellipsoid.d.ts +146 -0
- package/types/ellipsoid/index.d.ts +3 -0
- package/types/ellipsoid/wgs84.d.ts +6 -0
- package/types/entity/BaseBillboard.d.ts +215 -0
- package/types/entity/Billboard.d.ts +94 -0
- package/types/entity/BillboardHandler.d.ts +79 -0
- package/types/entity/Entity.d.ts +348 -0
- package/types/entity/EntityCollection.d.ts +317 -0
- package/types/entity/GeoObject.d.ts +111 -0
- package/types/entity/GeoObjectHandler.d.ts +81 -0
- package/types/entity/Geometry.d.ts +74 -0
- package/types/entity/GeometryHandler.d.ts +76 -0
- package/types/entity/Label.d.ts +189 -0
- package/types/entity/LabelHandler.d.ts +31 -0
- package/types/entity/LabelWorker.d.ts +11 -0
- package/types/entity/PointCloud.d.ts +174 -0
- package/types/entity/PointCloudHandler.d.ts +38 -0
- package/types/entity/Polyline.d.ts +306 -0
- package/types/entity/PolylineHandler.d.ts +18 -0
- package/types/entity/Ray.d.ts +124 -0
- package/types/entity/RayHandler.d.ts +67 -0
- package/types/entity/ShapeHandler.d.ts +22 -0
- package/types/entity/Strip.d.ts +119 -0
- package/types/entity/StripHandler.d.ts +38 -0
- package/types/entity/index.d.ts +8 -0
- package/types/index.core.d.ts +65 -0
- package/types/index.d.ts +45 -0
- package/types/index.webgl.d.ts +7 -0
- package/types/input/KeyboardHandler.d.ts +10 -0
- package/types/input/MouseHandler.d.ts +5 -0
- package/types/input/TouchHandler.d.ts +5 -0
- package/types/input/input.d.ts +34 -0
- package/types/layer/BaseGeoImage.d.ts +94 -0
- package/types/layer/CanvasTiles.d.ts +67 -0
- package/types/layer/GeoImage.d.ts +52 -0
- package/types/layer/GeoTexture2d.d.ts +8 -0
- package/types/layer/GeoVideo.d.ts +55 -0
- package/types/layer/KML.d.ts +68 -0
- package/types/layer/Layer.d.ts +310 -0
- package/types/layer/Material.d.ts +45 -0
- package/types/layer/Vector.d.ts +208 -0
- package/types/layer/WMS.d.ts +61 -0
- package/types/layer/XYZ.d.ts +119 -0
- package/types/layer/index.d.ts +10 -0
- package/types/light/LightSource.d.ts +178 -0
- package/types/math/Line2.d.ts +11 -0
- package/types/math/Line3.d.ts +10 -0
- package/types/math/Mat3.d.ts +65 -0
- package/types/math/Mat4.d.ts +176 -0
- package/types/math/Plane.d.ts +18 -0
- package/types/math/Quat.d.ts +379 -0
- package/types/math/Ray.d.ts +82 -0
- package/types/math/Vec2.d.ts +309 -0
- package/types/math/Vec3.d.ts +467 -0
- package/types/math/Vec4.d.ts +162 -0
- package/types/math/coder.d.ts +43 -0
- package/types/math/index.d.ts +11 -0
- package/types/math.d.ts +261 -0
- package/types/mercator.d.ts +92 -0
- package/types/proj/EPSG3857.d.ts +6 -0
- package/types/proj/EPSG4326.d.ts +6 -0
- package/types/proj/Proj.d.ts +42 -0
- package/types/quadTree/EntityCollectionNode.d.ts +34 -0
- package/types/quadTree/Node.d.ts +60 -0
- package/types/quadTree/quadTree.d.ts +40 -0
- package/types/renderer/Renderer.d.ts +290 -0
- package/types/renderer/RendererEvents.d.ts +237 -0
- package/types/res/images.d.ts +3 -0
- package/types/scene/Axes.d.ts +11 -0
- package/types/scene/BaseNode.d.ts +60 -0
- package/types/scene/Planet.d.ts +576 -0
- package/types/scene/RenderNode.d.ts +142 -0
- package/types/scene/SkyBox.d.ts +10 -0
- package/types/scene/index.d.ts +4 -0
- package/types/segment/Segment.d.ts +275 -0
- package/types/segment/SegmentLonLat.d.ts +17 -0
- package/types/segment/Slice.d.ts +10 -0
- package/types/segment/segmentHelper.d.ts +13 -0
- package/types/shaders/billboard.d.ts +3 -0
- package/types/shaders/depth.d.ts +2 -0
- package/types/shaders/drawnode.d.ts +7 -0
- package/types/shaders/geoObject.d.ts +3 -0
- package/types/shaders/label.d.ts +4 -0
- package/types/shaders/pointCloud.d.ts +2 -0
- package/types/shaders/polyline.d.ts +3 -0
- package/types/shaders/ray.d.ts +2 -0
- package/types/shaders/screenFrame.d.ts +2 -0
- package/types/shaders/shape.d.ts +4 -0
- package/types/shaders/skybox.d.ts +2 -0
- package/types/shaders/toneMapping.d.ts +2 -0
- package/types/shapes/BaseShape.d.ts +250 -0
- package/types/shapes/Sphere.d.ts +41 -0
- package/types/terrain/BilTerrain.d.ts +7 -0
- package/types/terrain/EmptyTerrain.d.ts +73 -0
- package/types/terrain/Geoid.d.ts +26 -0
- package/types/terrain/GlobusTerrain.d.ts +116 -0
- package/types/terrain/MapboxTerrain.d.ts +7 -0
- package/types/terrain/index.d.ts +5 -0
- package/types/utils/FontAtlas.d.ts +15 -0
- package/types/utils/GeoImageCreator.d.ts +30 -0
- package/types/utils/ImagesCacheManager.d.ts +10 -0
- package/types/utils/Loader.d.ts +25 -0
- package/types/utils/NormalMapCreator.d.ts +39 -0
- package/types/utils/PlainSegmentWorker.d.ts +10 -0
- package/types/utils/TerrainWorker.d.ts +9 -0
- package/types/utils/TextureAtlas.d.ts +111 -0
- package/types/utils/VectorTileCreator.d.ts +16 -0
- package/types/utils/colorTable.d.ts +143 -0
- package/types/utils/earcut.d.ts +6 -0
- package/types/utils/shared.d.ts +231 -0
- package/types/webgl/Framebuffer.d.ts +135 -0
- package/types/webgl/Handler.d.ts +417 -0
- package/types/webgl/Multisample.d.ts +89 -0
- package/types/webgl/Program.d.ts +161 -0
- package/types/webgl/ProgramController.d.ts +89 -0
- package/types/webgl/callbacks.d.ts +1 -0
- package/types/webgl/index.d.ts +6 -0
- package/types/webgl/types.d.ts +2 -0
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Class represents terrain provider without elevation data.
|
|
3
|
+
* @class
|
|
4
|
+
*/
|
|
5
|
+
export class EmptyTerrain {
|
|
6
|
+
static checkNoDataValue(noDataValues: any, value: any): boolean;
|
|
7
|
+
constructor(options?: {});
|
|
8
|
+
equalizeVertices: boolean;
|
|
9
|
+
equalizeNormals: boolean;
|
|
10
|
+
isEmpty: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Provider name is "empty"
|
|
13
|
+
* @public
|
|
14
|
+
* @type {string}
|
|
15
|
+
*/
|
|
16
|
+
public name: string;
|
|
17
|
+
/**
|
|
18
|
+
* Minimal z-index value for segment elevation data handling.
|
|
19
|
+
* @public
|
|
20
|
+
* @type {number}
|
|
21
|
+
*/
|
|
22
|
+
public minZoom: number;
|
|
23
|
+
/**
|
|
24
|
+
* Maximal z-index value for segment elevation data handling.
|
|
25
|
+
* @public
|
|
26
|
+
* @type {number}
|
|
27
|
+
*/
|
|
28
|
+
public maxZoom: number;
|
|
29
|
+
/**
|
|
30
|
+
* @public
|
|
31
|
+
* @type {Array.<number>}
|
|
32
|
+
*/
|
|
33
|
+
public gridSizeByZoom: Array<number>;
|
|
34
|
+
_maxNodeZoom: number;
|
|
35
|
+
/**
|
|
36
|
+
* Elevation grid size. Currend is 2x2 is the smallest grid size.
|
|
37
|
+
* @public
|
|
38
|
+
* @type {number}
|
|
39
|
+
*/
|
|
40
|
+
public plainGridSize: number;
|
|
41
|
+
/**
|
|
42
|
+
* Planet node.
|
|
43
|
+
* @protected
|
|
44
|
+
* @type {Planet}
|
|
45
|
+
*/
|
|
46
|
+
protected _planet: Planet;
|
|
47
|
+
_geoid: any;
|
|
48
|
+
isBlur(): boolean;
|
|
49
|
+
set maxNodeZoom(arg: number);
|
|
50
|
+
get maxNodeZoom(): number;
|
|
51
|
+
set geoid(arg: any);
|
|
52
|
+
get geoid(): any;
|
|
53
|
+
/**
|
|
54
|
+
* Loads or creates segment elevation data.
|
|
55
|
+
* @public
|
|
56
|
+
* @virtual
|
|
57
|
+
* @param {Segment} segment - Segment to create elevation data.
|
|
58
|
+
*/
|
|
59
|
+
public handleSegmentTerrain(segment: Segment): void;
|
|
60
|
+
isReady(): any;
|
|
61
|
+
/**
|
|
62
|
+
* Abstract function
|
|
63
|
+
* @public
|
|
64
|
+
* @abstract
|
|
65
|
+
*/
|
|
66
|
+
public abortLoading(): void;
|
|
67
|
+
/**
|
|
68
|
+
* Abstract function
|
|
69
|
+
* @public
|
|
70
|
+
* @abstract
|
|
71
|
+
*/
|
|
72
|
+
public clearCache(): void;
|
|
73
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export class Geoid {
|
|
2
|
+
static loadModel(url: any): Promise<{
|
|
3
|
+
scale: number;
|
|
4
|
+
offset: number;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
rlonres: number;
|
|
8
|
+
rlatres: number;
|
|
9
|
+
i: number;
|
|
10
|
+
rawfile: Uint8Array;
|
|
11
|
+
}>;
|
|
12
|
+
constructor(options?: {});
|
|
13
|
+
model: any;
|
|
14
|
+
src: any;
|
|
15
|
+
_cached_ix: any;
|
|
16
|
+
_cached_iy: number;
|
|
17
|
+
_v00: number;
|
|
18
|
+
_v01: number;
|
|
19
|
+
_v10: number;
|
|
20
|
+
_v11: number;
|
|
21
|
+
_t: any;
|
|
22
|
+
setModel(model: any): void;
|
|
23
|
+
_rawval(ix: any, iy: any): number;
|
|
24
|
+
getHeightLonLat(lonlat: any): any;
|
|
25
|
+
getHeight(lon: any, lat: any): any;
|
|
26
|
+
}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Class that loads segment elevation data, converts it to the array and passes it to the planet segment.
|
|
3
|
+
* @class
|
|
4
|
+
* @extends {EmptyTerrain}
|
|
5
|
+
* @param {string} [name=""] - Terrain provider name.
|
|
6
|
+
* @param {Object} [options] - Provider options:
|
|
7
|
+
* @param {number} [options.minZoom=3] - Minimal visible zoom index when terrain handler works.
|
|
8
|
+
* @param {number} [options.minZoom=14] - Maximal visible zoom index when terrain handler works.
|
|
9
|
+
* @param {string} [options.url="//openglobus.org/heights/srtm3/{z}/{y}/{x}.ddm"] - Terrain source path url template. Default is openglobus ddm elevation file.
|
|
10
|
+
* @param {Array.<number>} [options.gridSizeByZoom] - Array of segment triangulation grid sizes where array index agreed to the segment zoom index.
|
|
11
|
+
* @param {number} [options.plainGridSize=32] - Elevation grid size. Default is 32x32. Must be power of two.
|
|
12
|
+
* @param {string} [options.responseType="arraybuffer"] - Ajax responce type.
|
|
13
|
+
* @param {number} [options.MAX_LOADING_TILES] - Maximum at one time loading tiles.
|
|
14
|
+
* @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.
|
|
15
|
+
* @fires og.terrain.GlobusTerrain#load
|
|
16
|
+
* @fires og.terrain.GlobusTerrain#loadend
|
|
17
|
+
*/
|
|
18
|
+
export class GlobusTerrain extends EmptyTerrain {
|
|
19
|
+
/**
|
|
20
|
+
* @param {string} [name]
|
|
21
|
+
* @param {*} [options]
|
|
22
|
+
*/
|
|
23
|
+
constructor(name?: string, options?: any);
|
|
24
|
+
/**
|
|
25
|
+
* Events handler.
|
|
26
|
+
* @public
|
|
27
|
+
* @type {Events}
|
|
28
|
+
*/
|
|
29
|
+
public events: Events;
|
|
30
|
+
/**
|
|
31
|
+
* Terrain source path url template.
|
|
32
|
+
* @public
|
|
33
|
+
* @type {string}
|
|
34
|
+
*/
|
|
35
|
+
public url: string;
|
|
36
|
+
noDataValues: any;
|
|
37
|
+
_extent: any;
|
|
38
|
+
_dataType: string;
|
|
39
|
+
_elevationCache: {};
|
|
40
|
+
_fetchCache: {};
|
|
41
|
+
_loader: Loader;
|
|
42
|
+
/**
|
|
43
|
+
* Rewrites elevation storage url query.
|
|
44
|
+
* @private
|
|
45
|
+
* @callback og.terrain.GlobusTerrain~_urlRewriteCallback
|
|
46
|
+
* @param {Segment} segment - Segment to load.
|
|
47
|
+
* @param {string} url - Created url.
|
|
48
|
+
* @returns {string} - Url query string.
|
|
49
|
+
*/
|
|
50
|
+
private _urlRewriteCallback;
|
|
51
|
+
getGeoid(): any;
|
|
52
|
+
getHeightAsync(lonLat: any, callback: any, zoom: any): boolean;
|
|
53
|
+
getTileCache(lonLat: any, z: any): any;
|
|
54
|
+
_getGroundHeightMerc(merc: any, tileData: any): number;
|
|
55
|
+
/**
|
|
56
|
+
* Sets terrain data url template.
|
|
57
|
+
* @public
|
|
58
|
+
* @param {string} url - Url template.
|
|
59
|
+
* @example <caption>Default openglobus url template:</caption>:
|
|
60
|
+
* "http://earth3.openglobus.org/{z}/{y}/{x}.ddm"
|
|
61
|
+
*/
|
|
62
|
+
public setUrl(url: string): void;
|
|
63
|
+
/**
|
|
64
|
+
* Sets provider name.
|
|
65
|
+
* @public
|
|
66
|
+
* @param {string} name - Name.
|
|
67
|
+
*/
|
|
68
|
+
public setName(name: string): void;
|
|
69
|
+
isReadyToLoad(segment: any): any;
|
|
70
|
+
/**
|
|
71
|
+
* Starts to load segment data.
|
|
72
|
+
* @public
|
|
73
|
+
* @virtual
|
|
74
|
+
* @param {Segment} segment - Segment that wants a terrain data.
|
|
75
|
+
* @param {boolean} forceLoading
|
|
76
|
+
*/
|
|
77
|
+
public loadTerrain(segment: Segment, forceLoading: boolean): void;
|
|
78
|
+
/**
|
|
79
|
+
* Creates query url.
|
|
80
|
+
* @protected
|
|
81
|
+
* @virtual
|
|
82
|
+
* @param {Segment} segment -
|
|
83
|
+
* @returns {string} -
|
|
84
|
+
*/
|
|
85
|
+
protected _createUrl(segment: Segment): string;
|
|
86
|
+
/**
|
|
87
|
+
* Returns actual url query string.
|
|
88
|
+
* @protected
|
|
89
|
+
* @param {Segment} segment - Segment that loads image data.
|
|
90
|
+
* @returns {string} - Url string.
|
|
91
|
+
*/
|
|
92
|
+
protected _getHTTPRequestString(segment: Segment): string;
|
|
93
|
+
/**
|
|
94
|
+
* Sets url rewrite callback, used for custom url rewriting for every tile laoding.
|
|
95
|
+
* @public
|
|
96
|
+
* @param {GlobusTerrain~_urlRewriteCallback} ur - The callback that returns tile custom created url.
|
|
97
|
+
*/
|
|
98
|
+
public setUrlRewriteCallback(ur: any): void;
|
|
99
|
+
/**
|
|
100
|
+
* Converts loaded data to segment elevation data type(columr major elevation data array in meters)
|
|
101
|
+
* @public
|
|
102
|
+
* @virtual
|
|
103
|
+
* @param {*} data - Loaded elevation data.
|
|
104
|
+
* @returns {Array.<number>} -
|
|
105
|
+
*/
|
|
106
|
+
public _createHeights(data: any): Array<number>;
|
|
107
|
+
/**
|
|
108
|
+
* @protected
|
|
109
|
+
* @param {Segment} segment -
|
|
110
|
+
* @param {*} data -
|
|
111
|
+
*/
|
|
112
|
+
protected _applyElevationsData(segment: Segment, elevations: any): void;
|
|
113
|
+
}
|
|
114
|
+
import { EmptyTerrain } from "./EmptyTerrain.js";
|
|
115
|
+
import { Events } from "../Events.js";
|
|
116
|
+
import { Loader } from "../utils/Loader.js";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export class FontAtlas {
|
|
2
|
+
atlasesArr: any[];
|
|
3
|
+
atlasIndexes: {};
|
|
4
|
+
atlasIndexesDeferred: any[];
|
|
5
|
+
tokenImageSize: number;
|
|
6
|
+
samplerArr: number[];
|
|
7
|
+
_handler: any;
|
|
8
|
+
assignHandler(handler: any): void;
|
|
9
|
+
getFontIndex(face: any): any;
|
|
10
|
+
getFullIndex(face: any): any;
|
|
11
|
+
_applyFontDataToAtlas(atlas: any, data: any): void;
|
|
12
|
+
initFont(faceName: any, dataJson: any, imageBase64: any): void;
|
|
13
|
+
_createTexture(atlas: any, img: any): void;
|
|
14
|
+
loadFont(faceName: any, srcDir: any, atlasUrl: any): void;
|
|
15
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export class GeoImageCreator {
|
|
2
|
+
constructor(planet: any, maxFrames: any);
|
|
3
|
+
_gridSize: number;
|
|
4
|
+
_planet: any;
|
|
5
|
+
_framebuffer: Framebuffer;
|
|
6
|
+
_texCoordsBuffer: any;
|
|
7
|
+
_indexBuffer: any;
|
|
8
|
+
MAX_FRAMES: any;
|
|
9
|
+
_currentFrame: number;
|
|
10
|
+
_queue: any[];
|
|
11
|
+
_animate: any[];
|
|
12
|
+
_initialize(): void;
|
|
13
|
+
/**
|
|
14
|
+
* Creates geoImage corners coordinates grid buffer.
|
|
15
|
+
* @public
|
|
16
|
+
* @param{Array.<LonLat>} c - GeoImage corners coordinates.
|
|
17
|
+
* @return{WebGLBuffer} Grid coordinates buffer.
|
|
18
|
+
*/
|
|
19
|
+
public createGridBuffer(c: Array<LonLat>, toMerc: any): WebGLBuffer;
|
|
20
|
+
frame(): void;
|
|
21
|
+
add(geoImage: any): void;
|
|
22
|
+
remove(geoImage: any): void;
|
|
23
|
+
_initBuffers(): void;
|
|
24
|
+
_framebufferMercProj: Framebuffer;
|
|
25
|
+
_quadTexCoordsBuffer: any;
|
|
26
|
+
_quadVertexBuffer: any;
|
|
27
|
+
_initShaders(): void;
|
|
28
|
+
}
|
|
29
|
+
import { Framebuffer } from "../webgl/Framebuffer.js";
|
|
30
|
+
import { LonLat } from "../LonLat.js";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class ImagesCacheManager {
|
|
2
|
+
imagesCache: {};
|
|
3
|
+
_counter: number;
|
|
4
|
+
_pendingsQueue: QueueArray;
|
|
5
|
+
_imageIndexCounter: number;
|
|
6
|
+
load(src: any, success: any): void;
|
|
7
|
+
_exec(req: any): void;
|
|
8
|
+
_dequeueRequest(): void;
|
|
9
|
+
}
|
|
10
|
+
import { QueueArray } from "../QueueArray.js";
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class Loader {
|
|
2
|
+
constructor(maxRequests?: number);
|
|
3
|
+
MAX_REQUESTS: number;
|
|
4
|
+
events: Events;
|
|
5
|
+
_loading: number;
|
|
6
|
+
_queue: any[];
|
|
7
|
+
_promises: {
|
|
8
|
+
json: (r: any) => any;
|
|
9
|
+
blob: (r: any) => any;
|
|
10
|
+
arrayBuffer: (r: any) => any;
|
|
11
|
+
imageBitmap: (r: any) => any;
|
|
12
|
+
text: (r: any) => any;
|
|
13
|
+
};
|
|
14
|
+
load(params: any, callback: any): void;
|
|
15
|
+
fetch(params: any): Promise<{
|
|
16
|
+
status: string;
|
|
17
|
+
data: any;
|
|
18
|
+
} | {
|
|
19
|
+
status: string;
|
|
20
|
+
msg: any;
|
|
21
|
+
}>;
|
|
22
|
+
_exec(): Promise<void>;
|
|
23
|
+
abort(): void;
|
|
24
|
+
}
|
|
25
|
+
import { Events } from "../Events.js";
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export class NormalMapCreator {
|
|
2
|
+
constructor(planet: any, options: any);
|
|
3
|
+
_minTabelSize: any;
|
|
4
|
+
_maxTableSize: any;
|
|
5
|
+
_planet: any;
|
|
6
|
+
_handler: any;
|
|
7
|
+
_verticesBufferArray: any[];
|
|
8
|
+
_indexBufferArray: any[];
|
|
9
|
+
_positionBuffer: any;
|
|
10
|
+
_framebuffer: Framebuffer;
|
|
11
|
+
_normalMapVerticesTexture: any;
|
|
12
|
+
_width: any;
|
|
13
|
+
_height: any;
|
|
14
|
+
_queue: QueueArray;
|
|
15
|
+
_lock: Lock;
|
|
16
|
+
_init(): void;
|
|
17
|
+
_drawNormalMapBlur(segment: any): boolean;
|
|
18
|
+
_drawNormalMapNoBlur(segment: any): boolean;
|
|
19
|
+
_drawNormalMap(segment: any): boolean;
|
|
20
|
+
drawSingle(segment: any): void;
|
|
21
|
+
frame(): void;
|
|
22
|
+
queue(segment: any): void;
|
|
23
|
+
unshift(segment: any): void;
|
|
24
|
+
remove(segment: any): void;
|
|
25
|
+
clear(): void;
|
|
26
|
+
/**
|
|
27
|
+
* Set activity off
|
|
28
|
+
* @public
|
|
29
|
+
*/
|
|
30
|
+
public lock(key: any): void;
|
|
31
|
+
/**
|
|
32
|
+
* Set activity on
|
|
33
|
+
* @public
|
|
34
|
+
*/
|
|
35
|
+
public free(key: any): void;
|
|
36
|
+
}
|
|
37
|
+
import { Framebuffer } from "../webgl/Framebuffer.js";
|
|
38
|
+
import { QueueArray } from "../QueueArray.js";
|
|
39
|
+
import { Lock } from "../Lock.js";
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Texture atlas stores images in one texture. Each image has its own
|
|
3
|
+
* atlas texture coordinates.
|
|
4
|
+
* @class
|
|
5
|
+
* @param {number} [width] - Texture atlas width, if it hasn't 1024 default.
|
|
6
|
+
* @param {number} [height] - Texture atlas height, if it hasn't 1024 default..
|
|
7
|
+
*/
|
|
8
|
+
export class TextureAtlas {
|
|
9
|
+
constructor(width: any, height: any);
|
|
10
|
+
/**
|
|
11
|
+
* Atlas nodes where input images store. It can be access by image.__nodeIndex.
|
|
12
|
+
* @public
|
|
13
|
+
* @type {Array.<utils.TextureAtlasNode >}
|
|
14
|
+
*/
|
|
15
|
+
public nodes: Array<utils.TextureAtlasNode>;
|
|
16
|
+
/**
|
|
17
|
+
* Created gl texture.
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
public texture: any;
|
|
21
|
+
/**
|
|
22
|
+
* Atlas canvas.
|
|
23
|
+
* @public
|
|
24
|
+
* @type {canvas}
|
|
25
|
+
*/
|
|
26
|
+
public canvas: canvas;
|
|
27
|
+
_handler: any;
|
|
28
|
+
_images: any[];
|
|
29
|
+
_btree: TextureAtlasNode;
|
|
30
|
+
_imagesCacheManager: ImagesCacheManager;
|
|
31
|
+
borderSize: number;
|
|
32
|
+
/**
|
|
33
|
+
* Returns atlas javascript image object.
|
|
34
|
+
* @public
|
|
35
|
+
* @returns {Object} -
|
|
36
|
+
*/
|
|
37
|
+
public getImage(): any;
|
|
38
|
+
/**
|
|
39
|
+
* Returns canvas object.
|
|
40
|
+
* @public
|
|
41
|
+
* @returns {Object} -
|
|
42
|
+
*/
|
|
43
|
+
public getCanvas(): any;
|
|
44
|
+
/**
|
|
45
|
+
* Clear atlas with black.
|
|
46
|
+
* @public
|
|
47
|
+
*/
|
|
48
|
+
public clearCanvas(): void;
|
|
49
|
+
/**
|
|
50
|
+
* Sets openglobus gl handler that creates gl texture.
|
|
51
|
+
* @public
|
|
52
|
+
* @param {Handler} handler - WebGL handler.
|
|
53
|
+
*/
|
|
54
|
+
public assignHandler(handler: Handler): void;
|
|
55
|
+
/**
|
|
56
|
+
* Returns image diagonal size.
|
|
57
|
+
* @param {Object} image - JavaSript image object.
|
|
58
|
+
* @returns {number} -
|
|
59
|
+
*/
|
|
60
|
+
getDiagonal(image: any): number;
|
|
61
|
+
/**
|
|
62
|
+
* Adds image to the atlas and returns creted node with texture coordinates of the stored image.
|
|
63
|
+
* @public
|
|
64
|
+
* @param {Object} image - Input javascript image object.
|
|
65
|
+
* @param {boolean} [fastInsert] - If it's true atlas doesnt restore all images again
|
|
66
|
+
* and store image in the curent atlas sheme.
|
|
67
|
+
* @returns {utils.TextureAtlasNode} -
|
|
68
|
+
*/
|
|
69
|
+
public addImage(image: any, fastInsert?: boolean): utils.TextureAtlasNode;
|
|
70
|
+
_completeNode(nodes: any, node: any): void;
|
|
71
|
+
/**
|
|
72
|
+
* Main atlas making function.
|
|
73
|
+
* @private
|
|
74
|
+
* @param {boolean} [fastInsert] - If it's true atlas doesnt restore all images again
|
|
75
|
+
* and store image in the curent atlas sheme.
|
|
76
|
+
*/
|
|
77
|
+
private _makeAtlas;
|
|
78
|
+
/**
|
|
79
|
+
* Creates atlas gl texture.
|
|
80
|
+
* @public
|
|
81
|
+
*/
|
|
82
|
+
public createTexture(img: any, internalFormat: any): void;
|
|
83
|
+
/**
|
|
84
|
+
* Image handler callback.
|
|
85
|
+
* @callback Object~successCallback
|
|
86
|
+
* @param {Image} img - Loaded image.
|
|
87
|
+
*/
|
|
88
|
+
/**
|
|
89
|
+
* Asynchronous function that loads and creates image to the image cache, and call success callback when it's done.
|
|
90
|
+
* @public
|
|
91
|
+
* @param {string} src - Image object src string.
|
|
92
|
+
* @param {Object~successCallback} success - The callback that handles the image loads done.
|
|
93
|
+
*/
|
|
94
|
+
public loadImage(src: string, success: any): void;
|
|
95
|
+
getImageTexCoordinates(img: any): any;
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Atlas binary tree node.
|
|
99
|
+
* @class
|
|
100
|
+
* @param {Rectangle} rect - Node image rectangle.
|
|
101
|
+
*/
|
|
102
|
+
export class TextureAtlasNode {
|
|
103
|
+
constructor(rect: any, texCoords: any);
|
|
104
|
+
childNodes: any[];
|
|
105
|
+
image: any;
|
|
106
|
+
rect: any;
|
|
107
|
+
texCoords: any;
|
|
108
|
+
atlas: any;
|
|
109
|
+
insert(img: any): any;
|
|
110
|
+
}
|
|
111
|
+
import { ImagesCacheManager } from "./ImagesCacheManager.js";
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export class VectorTileCreator {
|
|
2
|
+
constructor(planet: any, maxFrames: any, width: any, height: any);
|
|
3
|
+
_width: any;
|
|
4
|
+
_height: any;
|
|
5
|
+
_handler: any;
|
|
6
|
+
_planet: any;
|
|
7
|
+
_framebuffer: Framebuffer;
|
|
8
|
+
MAX_FRAMES: any;
|
|
9
|
+
_currentFrame: number;
|
|
10
|
+
_queue: any[];
|
|
11
|
+
_initialize(): void;
|
|
12
|
+
frame(): void;
|
|
13
|
+
add(material: any): void;
|
|
14
|
+
remove(material: any): void;
|
|
15
|
+
}
|
|
16
|
+
import { Framebuffer } from "../webgl/Framebuffer.js";
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
export const colorTable: {
|
|
2
|
+
aliceblue: string;
|
|
3
|
+
antiquewhite: string;
|
|
4
|
+
aqua: string;
|
|
5
|
+
aquamarine: string;
|
|
6
|
+
azure: string;
|
|
7
|
+
beige: string;
|
|
8
|
+
bisque: string;
|
|
9
|
+
black: string;
|
|
10
|
+
blanchedalmond: string;
|
|
11
|
+
blue: string;
|
|
12
|
+
blueviolet: string;
|
|
13
|
+
brown: string;
|
|
14
|
+
burlywood: string;
|
|
15
|
+
cadetblue: string;
|
|
16
|
+
chartreuse: string;
|
|
17
|
+
chocolate: string;
|
|
18
|
+
coral: string;
|
|
19
|
+
cornflowerblue: string;
|
|
20
|
+
cornsilk: string;
|
|
21
|
+
crimson: string;
|
|
22
|
+
cyan: string;
|
|
23
|
+
darkblue: string;
|
|
24
|
+
darkcyan: string;
|
|
25
|
+
darkgoldenrod: string;
|
|
26
|
+
darkgray: string;
|
|
27
|
+
darkgreen: string;
|
|
28
|
+
darkkhaki: string;
|
|
29
|
+
darkmagenta: string;
|
|
30
|
+
darkolivegreen: string;
|
|
31
|
+
darkorange: string;
|
|
32
|
+
darkorchid: string;
|
|
33
|
+
darkred: string;
|
|
34
|
+
darksalmon: string;
|
|
35
|
+
darkseagreen: string;
|
|
36
|
+
darkslateblue: string;
|
|
37
|
+
darkslategray: string;
|
|
38
|
+
darkturquoise: string;
|
|
39
|
+
darkviolet: string;
|
|
40
|
+
deeppink: string;
|
|
41
|
+
deepskyblue: string;
|
|
42
|
+
dimgray: string;
|
|
43
|
+
dodgerblue: string;
|
|
44
|
+
firebrick: string;
|
|
45
|
+
floralwhite: string;
|
|
46
|
+
forestgreen: string;
|
|
47
|
+
fuchsia: string;
|
|
48
|
+
gainsboro: string;
|
|
49
|
+
ghostwhite: string;
|
|
50
|
+
gold: string;
|
|
51
|
+
goldenrod: string;
|
|
52
|
+
gray: string;
|
|
53
|
+
green: string;
|
|
54
|
+
greenyellow: string;
|
|
55
|
+
honeydew: string;
|
|
56
|
+
hotpink: string;
|
|
57
|
+
"indianred ": string;
|
|
58
|
+
indigo: string;
|
|
59
|
+
ivory: string;
|
|
60
|
+
khaki: string;
|
|
61
|
+
lavender: string;
|
|
62
|
+
lavenderblush: string;
|
|
63
|
+
lawngreen: string;
|
|
64
|
+
lemonchiffon: string;
|
|
65
|
+
lightblue: string;
|
|
66
|
+
lightcoral: string;
|
|
67
|
+
lightcyan: string;
|
|
68
|
+
lightgoldenrodyellow: string;
|
|
69
|
+
lightgrey: string;
|
|
70
|
+
lightgreen: string;
|
|
71
|
+
lightpink: string;
|
|
72
|
+
lightsalmon: string;
|
|
73
|
+
lightseagreen: string;
|
|
74
|
+
lightskyblue: string;
|
|
75
|
+
lightslategray: string;
|
|
76
|
+
lightsteelblue: string;
|
|
77
|
+
lightyellow: string;
|
|
78
|
+
lime: string;
|
|
79
|
+
limegreen: string;
|
|
80
|
+
linen: string;
|
|
81
|
+
magenta: string;
|
|
82
|
+
maroon: string;
|
|
83
|
+
mediumaquamarine: string;
|
|
84
|
+
mediumblue: string;
|
|
85
|
+
mediumorchid: string;
|
|
86
|
+
mediumpurple: string;
|
|
87
|
+
mediumseagreen: string;
|
|
88
|
+
mediumslateblue: string;
|
|
89
|
+
mediumspringgreen: string;
|
|
90
|
+
mediumturquoise: string;
|
|
91
|
+
mediumvioletred: string;
|
|
92
|
+
midnightblue: string;
|
|
93
|
+
mintcream: string;
|
|
94
|
+
mistyrose: string;
|
|
95
|
+
moccasin: string;
|
|
96
|
+
navajowhite: string;
|
|
97
|
+
navy: string;
|
|
98
|
+
oldlace: string;
|
|
99
|
+
olive: string;
|
|
100
|
+
olivedrab: string;
|
|
101
|
+
orange: string;
|
|
102
|
+
orangered: string;
|
|
103
|
+
orchid: string;
|
|
104
|
+
palegoldenrod: string;
|
|
105
|
+
palegreen: string;
|
|
106
|
+
paleturquoise: string;
|
|
107
|
+
palevioletred: string;
|
|
108
|
+
papayawhip: string;
|
|
109
|
+
peachpuff: string;
|
|
110
|
+
peru: string;
|
|
111
|
+
pink: string;
|
|
112
|
+
plum: string;
|
|
113
|
+
powderblue: string;
|
|
114
|
+
purple: string;
|
|
115
|
+
rebeccapurple: string;
|
|
116
|
+
red: string;
|
|
117
|
+
rosybrown: string;
|
|
118
|
+
royalblue: string;
|
|
119
|
+
saddlebrown: string;
|
|
120
|
+
salmon: string;
|
|
121
|
+
sandybrown: string;
|
|
122
|
+
seagreen: string;
|
|
123
|
+
seashell: string;
|
|
124
|
+
sienna: string;
|
|
125
|
+
silver: string;
|
|
126
|
+
skyblue: string;
|
|
127
|
+
slateblue: string;
|
|
128
|
+
slategray: string;
|
|
129
|
+
snow: string;
|
|
130
|
+
springgreen: string;
|
|
131
|
+
steelblue: string;
|
|
132
|
+
tan: string;
|
|
133
|
+
teal: string;
|
|
134
|
+
thistle: string;
|
|
135
|
+
tomato: string;
|
|
136
|
+
turquoise: string;
|
|
137
|
+
violet: string;
|
|
138
|
+
wheat: string;
|
|
139
|
+
white: string;
|
|
140
|
+
whitesmoke: string;
|
|
141
|
+
yellow: string;
|
|
142
|
+
yellowgreen: string;
|
|
143
|
+
};
|