@openglobus/og 1.0.0-rc2 → 1.0.0-rc21
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 +2 -0
- package/lib/Globe.d.ts +21 -8
- package/lib/Object3d.d.ts +1 -1
- package/lib/assets/LabelWorker.worker-C24YLEkW.js.map +1 -0
- package/lib/assets/PlainSegmentWorker.worker-DJHXd0bF.js.map +1 -0
- package/lib/assets/TerrainWorker.worker-BwueoQpg.js.map +1 -0
- package/lib/camera/Camera.d.ts +57 -8
- package/lib/camera/Frustum.d.ts +37 -1
- package/lib/camera/PlanetCamera.d.ts +29 -4
- package/lib/control/DebugInfo.d.ts +1 -0
- package/lib/control/FramebufferPreview.d.ts +18 -2
- package/lib/control/FreeNavigation.d.ts +253 -0
- package/lib/control/LayerSwitcher.d.ts +18 -0
- package/lib/control/Lighting.d.ts +3 -0
- package/lib/control/Navigation.d.ts +18 -1
- package/lib/control/ShowFps.d.ts +15 -3
- package/lib/control/Sun.d.ts +59 -0
- package/lib/control/depthCamera/DepthCamera.d.ts +132 -0
- package/lib/control/depthCamera/DepthCameraHandler.d.ts +25 -0
- package/lib/control/depthCamera/depth_camera.d.ts +2 -0
- package/lib/control/entityEditor/CameraEditorView.d.ts +60 -0
- package/lib/control/entityEditor/EntityEditor.d.ts +2 -1
- package/lib/control/entityEditor/EntityEditorDialog.d.ts +15 -47
- package/lib/control/entityEditor/EntityEditorScene.d.ts +16 -0
- package/lib/control/entityEditor/EntityEditorView.d.ts +68 -0
- package/lib/control/entityEditor/ProjectorEditorView.d.ts +31 -0
- package/lib/control/entityEditor/RotateEntity.d.ts +5 -1
- package/lib/control/index.d.ts +3 -3
- package/lib/control/timeline/TimelineControl.d.ts +86 -0
- package/lib/control/timeline/TimelineModel.d.ts +46 -1
- package/lib/control/timeline/TimelineView.d.ts +55 -2
- package/lib/entity/Entity.d.ts +18 -0
- package/lib/entity/EntityCollection.d.ts +71 -13
- package/lib/entity/billboard/BaseBillboardHandler.d.ts +16 -0
- package/lib/entity/geoObject/GeoObjectHandler.d.ts +3 -0
- package/lib/entity/geoObject/InstanceData.d.ts +6 -0
- package/lib/entity/geometry/Geometry.d.ts +18 -0
- package/lib/entity/geometry/GeometryHandler.d.ts +1 -0
- package/lib/entity/label/Label.d.ts +8 -6
- package/lib/entity/pointCloud/PointCloud.d.ts +1 -0
- package/lib/entity/pointCloud/PointCloudHandler.d.ts +5 -0
- package/lib/entity/polyline/Polyline.d.ts +15 -0
- package/lib/entity/polyline/PolylineBatchRenderer.d.ts +1 -0
- package/lib/entity/polyline/PolylineHandler.d.ts +5 -0
- package/lib/entity/ray/Ray.d.ts +2 -0
- package/lib/entity/ray/RayHandler.d.ts +1 -0
- package/lib/index.d.ts +20 -3
- package/lib/input/KeyboardHandler.d.ts +5 -1
- package/lib/layer/BaseTileMaterialLayer.d.ts +36 -0
- package/lib/layer/CanvasTiles.d.ts +8 -12
- package/lib/layer/Layer.d.ts +8 -1
- package/lib/layer/Vector.d.ts +74 -18
- package/lib/layer/XYZ.d.ts +5 -21
- package/lib/math/Line2.d.ts +9 -0
- package/lib/math.d.ts +8 -0
- package/lib/og.css +2 -1
- package/lib/og.es.js +1 -1
- package/lib/og.es.js.map +1 -1
- package/lib/quadTree/EntityCollectionsTreeStrategy.d.ts +3 -0
- package/lib/quadTree/QuadTreeStrategy.d.ts +18 -1
- package/lib/quadTree/earth/EarthEntityCollectionsTreeStrategy.d.ts +3 -0
- package/lib/quadTree/equi/EquiEntityCollectionsTreeStrategy.d.ts +3 -0
- package/lib/renderer/PhongDeferredShading.d.ts +2 -0
- package/lib/renderer/Renderer.d.ts +89 -6
- package/lib/renderer/RendererEvents.d.ts +2 -0
- package/lib/renderer/cascadeShadows/CascadeShadowManager.d.ts +34 -0
- package/lib/renderer/cascadeShadows/CascadeShadowMap.d.ts +110 -0
- package/lib/renderer/cascadeShadows/cascade_shadow_depth.d.ts +2 -0
- package/lib/renderer/projectors/Projector.d.ts +67 -0
- package/lib/renderer/projectors/ProjectorManager.d.ts +86 -0
- package/lib/renderer/projectors/ProjectorsPass.d.ts +37 -0
- package/lib/renderer/shadows/ShadowManager.d.ts +41 -0
- package/lib/renderer/shadows/ShadowMap.d.ts +21 -0
- package/lib/renderer/textureUnits.d.ts +6 -0
- package/lib/scene/Planet.d.ts +80 -8
- package/lib/scene/Scene.d.ts +1 -8
- package/lib/scene/SkyBox.d.ts +2 -1
- package/lib/segment/Segment.d.ts +18 -1
- package/lib/shaders/common/uniforms.d.ts +29 -0
- package/lib/shaders/geo_object/geo_object.d.ts +1 -0
- package/lib/shaders/projectorsPass/projectorsPass.d.ts +2 -0
- package/lib/shaders/tone_mapping/toneMapping.d.ts +1 -1
- package/lib/shaders/varianceBlur.d.ts +2 -0
- package/lib/terrain/EmptyTerrain.d.ts +43 -2
- package/lib/terrain/GlobusRgbTerrain.d.ts +1 -0
- package/lib/terrain/MapterhornTerrain.d.ts +11 -0
- package/lib/terrain/RgbTerrain.d.ts +11 -0
- package/lib/terrain/index.d.ts +6 -2
- package/lib/ui/Button.d.ts +1 -0
- package/lib/ui/Checkbox.d.ts +1 -0
- package/lib/ui/Color.d.ts +6 -2
- package/lib/ui/Dialog.d.ts +46 -1
- package/lib/ui/Dock.d.ts +151 -0
- package/lib/ui/Input.d.ts +14 -1
- package/lib/ui/Slider.d.ts +1 -0
- package/lib/ui/TitleBarView.d.ts +21 -0
- package/lib/ui/index.d.ts +2 -0
- package/lib/utils/FontAtlas.d.ts +5 -3
- package/lib/utils/GeoImageCreator.d.ts +7 -0
- package/lib/utils/Loader.d.ts +6 -0
- package/lib/utils/NormalMapCreator.d.ts +6 -0
- package/lib/utils/TerrainWorker.d.ts +1 -0
- package/lib/utils/VectorTileCreator.d.ts +6 -0
- package/lib/utils/cameraFootprint.d.ts +72 -0
- package/lib/utils/gltf/types.d.ts +5 -4
- package/lib/utils/shadowCameraFit.d.ts +175 -0
- package/lib/utils/shared.d.ts +11 -0
- package/lib/webgl/BaseFramebuffer.d.ts +28 -0
- package/lib/webgl/Framebuffer.d.ts +5 -7
- package/lib/webgl/Handler.d.ts +28 -0
- package/package.json +11 -9
- package/lib/assets/LabelWorker.worker-DYd7xn3M.js.map +0 -1
- package/lib/assets/PlainSegmentWorker.worker-JsKldq-e.js.map +0 -1
- package/lib/assets/TerrainWorker.worker-CqUJvMOv.js.map +0 -1
- package/lib/control/CameraFrameComposer.d.ts +0 -19
- package/lib/control/CameraFrameHandler.d.ts +0 -26
- package/lib/control/cameraDepthHandler/CameraDepthHandler.d.ts +0 -42
- package/lib/control/cameraDepthHandler/camera_depth.d.ts +0 -2
- package/lib/tsconfig.tsbuildinfo +0 -1
package/lib/utils/shared.d.ts
CHANGED
|
@@ -57,6 +57,7 @@ export declare function htmlColorToRgb(htmlColor: string): Vec3;
|
|
|
57
57
|
export declare function stringTemplate(template: string, params?: any): string;
|
|
58
58
|
/**
|
|
59
59
|
* Replace template substrings between '${...}' tokens.
|
|
60
|
+
* Also supports escaped '\${...}' tokens emitted by GLSL bundlers.
|
|
60
61
|
* @param {string} template - String with templates in "${" and "}"
|
|
61
62
|
* @param {Object} params - Template named object with subsrtings.
|
|
62
63
|
* @returns {string} -
|
|
@@ -77,6 +78,16 @@ export declare function print2d(id: string, text: string, x: number, y: number):
|
|
|
77
78
|
export declare function isNumber(value: any): boolean;
|
|
78
79
|
export declare function defaultString(str?: string, def?: string): string;
|
|
79
80
|
export declare function createVec2(v?: number | Vec2 | NumberArray2 | null, def?: Vec2): Vec2;
|
|
81
|
+
export declare const SCALE_BY_DISTANCE_1_TO_1: NumberArray4;
|
|
82
|
+
/**
|
|
83
|
+
* Normalizes `[near, far, vanish, scale]`, defaulting `scale` to `1`.
|
|
84
|
+
* `near <= 0` disables world scaling. It is set to `far` so the shader scale remains `1`.
|
|
85
|
+
* If `far <= 0`, both use a small epsilon to avoid division by zero without affecting fading.
|
|
86
|
+
* @param {NumberArray3 | NumberArray4} [v] - Source parameters.
|
|
87
|
+
* @param {NumberArray4} def - Default parameters.
|
|
88
|
+
* @returns {NumberArray4} Normalized parameters.
|
|
89
|
+
*/
|
|
90
|
+
export declare function createScaleByDistance(v: NumberArray3 | NumberArray4 | undefined, def: NumberArray4): NumberArray4;
|
|
80
91
|
export declare function createVec3(v?: number | Vec3 | Vec2 | NumberArray3 | NumberArray2 | null, def?: Vec3): Vec3;
|
|
81
92
|
export declare function createVec4(v?: Vec4 | NumberArray4 | null, def?: Vec4): Vec4;
|
|
82
93
|
export declare function createColorRGBA(c?: string | NumberArray4 | Vec4 | null, def?: Vec4): Vec4;
|
|
@@ -47,6 +47,34 @@ export declare class BaseFramebuffer {
|
|
|
47
47
|
*/
|
|
48
48
|
isComplete(): boolean;
|
|
49
49
|
checkStatus(): number;
|
|
50
|
+
/**
|
|
51
|
+
* Checks active framebuffer completeness and logs readable status on failure.
|
|
52
|
+
* @public
|
|
53
|
+
* @param {string} [message] - Warning message prefix.
|
|
54
|
+
* @returns {boolean} `true` when active framebuffer is complete.
|
|
55
|
+
*/
|
|
56
|
+
validateComplete(message?: string): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Binds a 2D texture to the active framebuffer color attachment.
|
|
59
|
+
* @public
|
|
60
|
+
* @param {WebGLTexture} texture - Output texture.
|
|
61
|
+
* @param {number} [glAttachment=COLOR_ATTACHMENT0] - GL color attachment.
|
|
62
|
+
*/
|
|
63
|
+
bindOutputTexture(texture: WebGLTexture, glAttachment?: number): void;
|
|
64
|
+
/**
|
|
65
|
+
* Binds a texture array layer to the active framebuffer color attachment.
|
|
66
|
+
* Activate framebuffer before calling this method.
|
|
67
|
+
* @public
|
|
68
|
+
* @param {WebGLTexture | null} texture - Output texture array.
|
|
69
|
+
* @param {number} layer - Array layer index.
|
|
70
|
+
* @param {number} [colorAttachmentIndex=0] - Color attachment index.
|
|
71
|
+
* @param {number} [level=0] - Mipmap level.
|
|
72
|
+
*/
|
|
73
|
+
bindOutputTextureLayer(texture: WebGLTexture | null, layer: number, colorAttachmentIndex?: number, level?: number): void;
|
|
74
|
+
/**
|
|
75
|
+
* Converts framebuffer status enum to readable text.
|
|
76
|
+
*/
|
|
77
|
+
statusToText(status: number): string;
|
|
50
78
|
/**
|
|
51
79
|
* Activate framebuffer frame to draw.
|
|
52
80
|
* @public
|
|
@@ -73,15 +73,13 @@ export declare class Framebuffer extends BaseFramebuffer {
|
|
|
73
73
|
* }],
|
|
74
74
|
**/
|
|
75
75
|
readPixelBuffersAsync: (callback?: (buf: this) => void) => void;
|
|
76
|
-
getPixelBufferData(targetIndex?: number): TypedArray | null;
|
|
77
|
-
protected _createPixelBuffer(target: ITarget): void;
|
|
78
76
|
/**
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
* @param {WebGLTexture} texture - Output texture.
|
|
82
|
-
* @param {number} [glAttachment=0] - color attachment index.
|
|
77
|
+
* Synchronously reads all configured async pixel buffers for the current framebuffer state.
|
|
78
|
+
* Use when the same-frame CPU readback is required.
|
|
83
79
|
*/
|
|
84
|
-
|
|
80
|
+
readPixelBuffers(): void;
|
|
81
|
+
getPixelBufferData(targetIndex?: number): TypedArray | null;
|
|
82
|
+
protected _createPixelBuffer(target: ITarget): void;
|
|
85
83
|
/**
|
|
86
84
|
* Gets pixel RGBA color from framebuffer by coordinates.
|
|
87
85
|
* @public
|
package/lib/webgl/Handler.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export interface IHandlerParameters {
|
|
|
32
32
|
};
|
|
33
33
|
extensions?: string[];
|
|
34
34
|
autoActivate?: boolean;
|
|
35
|
+
idleMode?: boolean;
|
|
35
36
|
}
|
|
36
37
|
export interface Texture3DParams {
|
|
37
38
|
nx: string;
|
|
@@ -161,8 +162,22 @@ declare class Handler {
|
|
|
161
162
|
protected _requestAnimationFrameId: number;
|
|
162
163
|
protected _clipControlZeroToOne: boolean;
|
|
163
164
|
clipControl: ((origin: number, depth: number) => void) | undefined;
|
|
165
|
+
protected _idleMode: boolean;
|
|
166
|
+
needRedraw: boolean;
|
|
164
167
|
protected _getMipmapLevels(width: number, height: number): number;
|
|
165
168
|
constructor(canvasTarget: string | HTMLCanvasElement | undefined, params?: IHandlerParameters);
|
|
169
|
+
/**
|
|
170
|
+
* Idle mode skips a frame rendering when nothing has been changed since the previous frame.
|
|
171
|
+
* @public
|
|
172
|
+
*/
|
|
173
|
+
set idleMode(isEnabled: boolean);
|
|
174
|
+
get idleMode(): boolean;
|
|
175
|
+
/**
|
|
176
|
+
* Returns true when the idle mode is on and nothing has requested a frame yet, i.e.
|
|
177
|
+
* the next frame is going to be skipped.
|
|
178
|
+
* @public
|
|
179
|
+
*/
|
|
180
|
+
get isIdle(): boolean;
|
|
166
181
|
set frameDelay(delay: number);
|
|
167
182
|
isInitialized(): boolean;
|
|
168
183
|
protected _createCanvas(): void;
|
|
@@ -198,6 +213,19 @@ declare class Handler {
|
|
|
198
213
|
* @returns {WebGLTexture | null} - Created WebGL texture object.
|
|
199
214
|
*/
|
|
200
215
|
createEmptyTexture2DExt(width?: number, height?: number, filter?: string, internalFormat?: string, param?: string, levels?: number): WebGLTexture | null;
|
|
216
|
+
/**
|
|
217
|
+
* Creates an empty immutable 2D array texture (WebGL2).
|
|
218
|
+
* @public
|
|
219
|
+
* @param {number} [width=1] - Texture width in pixels.
|
|
220
|
+
* @param {number} [height=1] - Texture height in pixels.
|
|
221
|
+
* @param {number} [depth=1] - Number of array layers.
|
|
222
|
+
* @param {string} [filter="NEAREST"] - GL_TEXTURE_MIN_FILTER and GL_TEXTURE_MAG_FILTER value.
|
|
223
|
+
* @param {string} [internalFormat="RGBA8"] - Sized internal format (e.g. "RGBA8", "R32F").
|
|
224
|
+
* @param {string} [param="CLAMP_TO_EDGE"] - GL_TEXTURE_WRAP_S/T value.
|
|
225
|
+
* @param {number} [levels=1] - Number of mipmap levels (immutable storage).
|
|
226
|
+
* @returns {WebGLTexture | null} - Created WebGL texture object.
|
|
227
|
+
*/
|
|
228
|
+
createEmptyTexture2DArrayExt(width?: number, height?: number, depth?: number, filter?: string, internalFormat?: string, param?: string, levels?: number): WebGLTexture | null;
|
|
201
229
|
/**
|
|
202
230
|
* Creates Empty NEAREST filtered texture.
|
|
203
231
|
* @public
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openglobus/og",
|
|
3
|
-
"version": "1.0.0-
|
|
3
|
+
"version": "1.0.0-rc21",
|
|
4
4
|
"description": "[openglobus](https://www.openglobus.org/) is a javascript/typescript library designed to display interactive 3d maps and planets with map tiles, imagery and vector data, markers, and 3D objects. It uses the WebGL technology, open source, and completely free.",
|
|
5
5
|
"main": "lib/og.es.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -50,25 +50,27 @@
|
|
|
50
50
|
"@babel/plugin-proposal-object-rest-spread": "^7.20.7",
|
|
51
51
|
"@babel/preset-env": "^7.26.9",
|
|
52
52
|
"@babel/preset-typescript": "^7.27.0",
|
|
53
|
+
"@eslint/js": "^10.0.1",
|
|
53
54
|
"@eslint-community/eslint-utils": "^4.6.1",
|
|
54
55
|
"@rollup/plugin-terser": "^1.0.0",
|
|
55
56
|
"@types/draco3d": "^1.4.10",
|
|
56
57
|
"@types/node": "^22.15.3",
|
|
57
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
58
|
-
"
|
|
59
|
-
"
|
|
58
|
+
"@typescript-eslint/eslint-plugin": "^8.65.0",
|
|
59
|
+
"@typescript-eslint/parser": "^8.65.0",
|
|
60
|
+
"clean-jsdoc-theme": "^5.1.0",
|
|
61
|
+
"eslint": "^10.8.0",
|
|
60
62
|
"jsdoc": "^4.0.4",
|
|
61
63
|
"jsdoc-babel": "^0.5.0",
|
|
62
64
|
"jsdom": "^26.1.0",
|
|
63
65
|
"local-web-server": "^5.4.0",
|
|
64
|
-
"npm-run-
|
|
66
|
+
"npm-run-all2": "^8.0.4",
|
|
65
67
|
"prettier": "^3.6.2",
|
|
66
68
|
"terser": "^5.39.0",
|
|
67
69
|
"typescript": "^5.8.3",
|
|
68
|
-
"vite": "^
|
|
69
|
-
"vite-plugin-glsl": "^1.
|
|
70
|
-
"vite-plugin-static-copy": "^
|
|
71
|
-
"vitest": "^
|
|
70
|
+
"vite": "^8.0.16",
|
|
71
|
+
"vite-plugin-glsl": "^1.6.0",
|
|
72
|
+
"vite-plugin-static-copy": "^4.1.1",
|
|
73
|
+
"vitest": "^4.1.8"
|
|
72
74
|
},
|
|
73
75
|
"keywords": [
|
|
74
76
|
"map",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LabelWorker.worker-DYd7xn3M.js","sources":["../src/entity/label/LabelWorker.worker.js"],"sourcesContent":["/* eslint-env worker */\n\"use strict\";\n\nfunction concatTypedArrays(dest, index, source) {\n let len = source.length,\n offset = index * len;\n for (let i = 0; i < len; i++) {\n dest[offset + i] = source[i];\n }\n}\n\nfunction srgbToLinear(v) {\n return Math.pow(v, 2.2);\n}\n\nself.onmessage = function (e) {\n var labelData = e.data.labelData,\n id = labelData[0],\n maxLetters = labelData[1],\n isVisible = labelData[2],\n /*3, 4, 5*/ _positionHigh_x = labelData[3],\n _positionHigh_y = labelData[4],\n _positionHigh_z = labelData[5],\n /*6, 7, 8*/ _positionLow_x = labelData[6],\n _positionLow_y = labelData[7],\n _positionLow_z = labelData[8],\n /*9*/ _size = labelData[9],\n /*10, 11*/ _offset_x = labelData[10],\n _offset_y = labelData[11],\n /*12, 13, 14, 15*/ _color_x = labelData[12],\n _color_y = labelData[13],\n _color_z = labelData[14],\n _color_w = labelData[15],\n /*16*/ _rotation = labelData[16],\n /*17, 18, 19*/ _alignedAxis_x = labelData[17],\n _alignedAxis_y = labelData[18],\n _alignedAxis_z = labelData[19],\n /*20*/ _fontIndex = labelData[20],\n /*21*/ _outline = labelData[21],\n /*22, 23, 24, 25*/ _outlineColor_x = labelData[22],\n _outlineColor_y = labelData[23],\n _outlineColor_z = labelData[24],\n _outlineColor_w = labelData[25],\n /*26, 27, 28*/ _pickingColor_x = labelData[26],\n _pickingColor_y = labelData[27],\n _pickingColor_z = labelData[28];\n\n let _vertexArr = new Float32Array(maxLetters * 12),\n _texCoordArr = new Float32Array(maxLetters * 24),\n _gliphParamArr = new Float32Array(maxLetters * 24),\n _positionHighArr = new Float32Array(maxLetters * 18),\n _positionLowArr = new Float32Array(maxLetters * 18),\n _sizeArr = new Float32Array(maxLetters * 6),\n _offsetArr = new Float32Array(maxLetters * 12),\n _rgbaArr = new Float32Array(maxLetters * 24),\n _rotationArr = new Float32Array(maxLetters * 6),\n _alignedAxisArr = new Float32Array(maxLetters * 18),\n _fontIndexArr = new Float32Array(maxLetters * 6),\n _outlineArr = new Float32Array(maxLetters * 6),\n _outlineColorArr = new Float32Array(maxLetters * 24),\n _pickingColorArr = new Float32Array(maxLetters * 18);\n\n for (let i = 0; i < maxLetters; i++) {\n if (isVisible !== 0) {\n concatTypedArrays(_vertexArr, i, [0, 0, 0, -1, 1, -1, 1, -1, 1, 0, 0, 0]);\n } else {\n concatTypedArrays(_vertexArr, i, [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]);\n }\n\n concatTypedArrays(\n _texCoordArr,\n i,\n [0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0, 0, 0, -1, 0]\n );\n concatTypedArrays(_gliphParamArr, i, [1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0]);\n\n var x = _positionHigh_x,\n y = _positionHigh_y,\n z = _positionHigh_z,\n w;\n concatTypedArrays(_positionHighArr, i, [x, y, z, x, y, z, x, y, z, x, y, z, x, y, z, x, y, z]);\n\n x = _positionLow_x;\n y = _positionLow_y;\n z = _positionLow_z;\n concatTypedArrays(_positionLowArr, i, [x, y, z, x, y, z, x, y, z, x, y, z, x, y, z, x, y, z]);\n\n x = _size;\n concatTypedArrays(_sizeArr, i, [x, x, x, x, x, x]);\n\n x = _offset_x;\n y = _offset_y;\n concatTypedArrays(_offsetArr, i, [x, y, x, y, x, y, x, y, x, y, x, y]);\n\n x = srgbToLinear(_color_x);\n y = srgbToLinear(_color_y);\n z = srgbToLinear(_color_z);\n w = _color_w;\n concatTypedArrays(_rgbaArr, i, [x, y, z, w, x, y, z, w, x, y, z, w, x, y, z, w, x, y, z, w, x, y, z, w]);\n\n x = _rotation;\n concatTypedArrays(_rotationArr, i, [x, x, x, x, x, x]);\n\n x = _alignedAxis_x;\n y = _alignedAxis_y;\n z = _alignedAxis_z;\n concatTypedArrays(_alignedAxisArr, i, [x, y, z, x, y, z, x, y, z, x, y, z, x, y, z, x, y, z]);\n\n x = _fontIndex;\n concatTypedArrays(_fontIndexArr, i, [x, x, x, x, x, x]);\n\n x = _outline;\n concatTypedArrays(_outlineArr, i, [x, x, x, x, x, x]);\n\n x = srgbToLinear(_outlineColor_x);\n y = srgbToLinear(_outlineColor_y);\n z = srgbToLinear(_outlineColor_z);\n w = _outlineColor_w;\n concatTypedArrays(_outlineColorArr, i, [\n x,\n y,\n z,\n w,\n x,\n y,\n z,\n w,\n x,\n y,\n z,\n w,\n x,\n y,\n z,\n w,\n x,\n y,\n z,\n w,\n x,\n y,\n z,\n w\n ]);\n\n x = _pickingColor_x / 255;\n y = _pickingColor_y / 255;\n z = _pickingColor_z / 255;\n concatTypedArrays(_pickingColorArr, i, [x, y, z, x, y, z, x, y, z, x, y, z, x, y, z, x, y, z]);\n }\n\n self.postMessage(\n {\n id: id,\n vertexArr: _vertexArr,\n texCoordArr: _texCoordArr,\n gliphParamArr: _gliphParamArr,\n positionHighArr: _positionHighArr,\n positionLowArr: _positionLowArr,\n sizeArr: _sizeArr,\n offsetArr: _offsetArr,\n rgbaArr: _rgbaArr,\n rotationArr: _rotationArr,\n alignedAxisArr: _alignedAxisArr,\n fontIndexArr: _fontIndexArr,\n outlineArr: _outlineArr,\n outlineColorArr: _outlineColorArr,\n pickingColorArr: _pickingColorArr\n },\n [\n _vertexArr.buffer,\n _texCoordArr.buffer,\n _gliphParamArr.buffer,\n _positionHighArr.buffer,\n _positionLowArr.buffer,\n _sizeArr.buffer,\n _offsetArr.buffer,\n _rgbaArr.buffer,\n _rotationArr.buffer,\n _alignedAxisArr.buffer,\n _fontIndexArr.buffer,\n _outlineArr.buffer,\n _outlineColorArr.buffer,\n _pickingColorArr.buffer\n ]\n );\n};\n"],"names":["concatTypedArrays","dest","index","source","len","length","offset","i","srgbToLinear","v","Math","pow","self","onmessage","e","labelData","data","id","maxLetters","isVisible","_positionHigh_x","_positionHigh_y","_positionHigh_z","_positionLow_x","_positionLow_y","_positionLow_z","_size","_offset_x","_offset_y","_color_x","_color_y","_color_z","_color_w","_rotation","_alignedAxis_x","_alignedAxis_y","_alignedAxis_z","_fontIndex","_outline","_outlineColor_x","_outlineColor_y","_outlineColor_z","_outlineColor_w","_pickingColor_x","_pickingColor_y","_pickingColor_z","_vertexArr","Float32Array","_texCoordArr","_gliphParamArr","_positionHighArr","_positionLowArr","_sizeArr","_offsetArr","_rgbaArr","_rotationArr","_alignedAxisArr","_fontIndexArr","_outlineArr","_outlineColorArr","_pickingColorArr","w","x","y","z","postMessage","vertexArr","texCoordArr","gliphParamArr","positionHighArr","positionLowArr","sizeArr","offsetArr","rgbaArr","rotationArr","alignedAxisArr","fontIndexArr","outlineArr","outlineColorArr","pickingColorArr","buffer"],"mappings":"yBAGA,SAASA,EAAkBC,EAAMC,EAAOC,EAAAA,CACpC,IAAIC,EAAMD,EAAOE,OACbC,EAASJ,EAAQE,EACrB,QAASG,EAAI,EAAGA,EAAIH,EAAKG,IACrBN,EAAKK,EAASC,GAAKJ,EAAOI,CAAAA,CAElC,CAEA,SAASC,EAAaC,EAAAA,CAClB,OAAOC,KAAKC,IAAIF,EAAG,GAAA,CACvB,CAEAG,KAAKC,UAAY,SAAUC,EAAAA,CACvB,IAAIC,EAAYD,EAAEE,KAAKD,UACnBE,EAAKF,EAAU,GACfG,EAAaH,EAAU,CAAA,EACvBI,EAAYJ,EAAU,CAAA,EACVK,EAAkBL,EAAU,CAAA,EACxCM,EAAkBN,EAAU,CAAA,EAC5BO,EAAkBP,EAAU,CAAA,EAChBQ,EAAiBR,EAAU,CAAA,EACvCS,EAAiBT,EAAU,CAAA,EAC3BU,EAAiBV,EAAU,GACrBW,EAAQX,EAAU,CAAA,EACbY,EAAYZ,EAAU,EAAA,EACjCa,EAAYb,EAAU,IACHc,EAAWd,EAAU,EAAA,EACxCe,EAAWf,EAAU,EAAA,EACrBgB,EAAWhB,EAAU,EAAA,EACrBiB,EAAWjB,EAAU,EAAA,EACdkB,EAAYlB,EAAU,EAAA,EACdmB,EAAiBnB,EAAU,EAAA,EAC1CoB,EAAiBpB,EAAU,EAAA,EAC3BqB,EAAiBrB,EAAU,IACpBsB,EAAatB,EAAU,EAAA,EACvBuB,EAAWvB,EAAU,EAAA,EACTwB,EAAkBxB,EAAU,EAAA,EAC/CyB,EAAkBzB,EAAU,EAAA,EAC5B0B,EAAkB1B,EAAU,EAAA,EAC5B2B,EAAkB3B,EAAU,EAAA,EACb4B,EAAkB5B,EAAU,EAAA,EAC3C6B,EAAkB7B,EAAU,IAC5B8B,EAAkB9B,EAAU,EAAA,EAEhC,IAAI+B,EAAa,IAAIC,aAA0B,GAAb7B,GAC9B8B,EAAe,IAAID,aAA0B,GAAb7B,GAChC+B,EAAiB,IAAIF,aAA0B,GAAb7B,GAClCgC,EAAmB,IAAIH,aAA0B,GAAb7B,CAAAA,EACpCiC,EAAkB,IAAIJ,aAA0B,GAAb7B,CAAAA,EACnCkC,EAAW,IAAIL,aAA0B,EAAb7B,CAAAA,EAC5BmC,EAAa,IAAIN,aAA0B,GAAb7B,CAAAA,EAC9BoC,EAAW,IAAIP,aAA0B,GAAb7B,CAAAA,EAC5BqC,EAAe,IAAIR,aAA0B,EAAb7B,CAAAA,EAChCsC,EAAkB,IAAIT,aAA0B,GAAb7B,CAAAA,EACnCuC,EAAgB,IAAIV,aAA0B,EAAb7B,CAAAA,EACjCwC,EAAc,IAAIX,aAA0B,EAAb7B,CAAAA,EAC/ByC,EAAmB,IAAIZ,aAA0B,GAAb7B,CAAAA,EACpC0C,EAAmB,IAAIb,aAA0B,GAAb7B,CAAAA,EAExC,QAASX,EAAI,EAAGA,EAAIW,EAAYX,IAAK,CAE7BP,EAAkB8C,EAAYvC,EAD9BY,IAAc,EACmB,CAAC,EAAG,EAAG,EAAA,GAAO,EAAA,GAAO,EAAA,GAAO,EAAG,EAAG,EAAG,CAAA,EAErC,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,IAGvEnB,EACIgD,EACAzC,EACA,CAAC,EAAG,EAAA,GAAO,EAAG,EAAG,EAAA,GAAO,EAAG,EAAG,KAAO,EAAG,EAAG,EAAA,GAAO,EAAG,EAAG,EAAA,GAAO,EAAG,EAAG,EAAA,GAAO,IAEhFP,EAAkBiD,EAAgB1C,EAAG,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAA,CAAA,EAE3G,IAGIsD,EAHAC,EAAI1C,EACJ2C,EAAI1C,EACJ2C,EAAI1C,EAERtB,EAAkBkD,EAAkB3C,EAAG,CAACuD,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,CAAAA,CAAAA,EAK3FhE,EAAkBmD,EAAiB5C,EAAG,CAHtCuD,EAAIvC,EACJwC,EAAIvC,EACJwC,EAAIvC,EAC4CqC,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,CAAAA,CAAAA,EAG1FhE,EAAkBoD,EAAU7C,EAAG,CAD/BuD,EAAIpC,EAC+BoC,EAAGA,EAAGA,EAAGA,EAAGA,IAI/C9D,EAAkBqD,EAAY9C,EAAG,CAFjCuD,EAAInC,EACJoC,EAAInC,EACoCkC,EAAGC,EAAGD,EAAGC,EAAGD,EAAGC,EAAGD,EAAGC,EAAGD,EAAGC,CAAAA,CAAAA,EAMnE/D,EAAkBsD,EAAU/C,EAAG,CAJ/BuD,EAAItD,EAAaqB,CAAAA,EACjBkC,EAAIvD,EAAasB,CAAAA,EACjBkC,EAAIxD,EAAauB,CAAAA,EACjB8B,EAAI7B,EACwC8B,EAAGC,EAAGC,EAAGH,EAAGC,EAAGC,EAAGC,EAAGH,EAAGC,EAAGC,EAAGC,EAAGH,EAAGC,EAAGC,EAAGC,EAAGH,EAAGC,EAAGC,EAAGC,EAAGH,CAAAA,CAAAA,EAGrG7D,EAAkBuD,EAAchD,EAAG,CADnCuD,EAAI7B,EACmC6B,EAAGA,EAAGA,EAAGA,EAAGA,CAAAA,CAAAA,EAKnD9D,EAAkBwD,EAAiBjD,EAAG,CAHtCuD,EAAI5B,EACJ6B,EAAI5B,EACJ6B,EAAI5B,EAC4C0B,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,CAAAA,CAAAA,EAG1FhE,EAAkByD,EAAelD,EAAG,CADpCuD,EAAIzB,EACoCyB,EAAGA,EAAGA,EAAGA,EAAGA,IAGpD9D,EAAkB0D,EAAanD,EAAG,CADlCuD,EAAIxB,EACkCwB,EAAGA,EAAGA,EAAGA,EAAGA,CAAAA,CAAAA,EAMlD9D,EAAkB2D,EAAkBpD,EAAG,CAJvCuD,EAAItD,EAAa+B,CAAAA,EACjBwB,EAAIvD,EAAagC,CAAAA,EACjBwB,EAAIxD,EAAaiC,GACjBoB,EAAInB,EAMAoB,EACAC,EACAC,EACAH,EACAC,EACAC,EACAC,EACAH,EACAC,EACAC,EACAC,EACAH,EACAC,EACAC,EACAC,EACAH,EACAC,EACAC,EACAC,EACAH,CAAAA,CAAAA,EAMJ7D,EAAkB4D,EAAkBrD,EAAG,CAHvCuD,EAAInB,EAAkB,IACtBoB,EAAInB,EAAkB,IACtBoB,EAAInB,EAAkB,IAC2BiB,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,EAAGF,EAAGC,EAAGC,CAAAA,CAAAA,CAC/F,CAEApD,KAAKqD,YACD,CACIhD,GAAIA,EACJiD,UAAWpB,EACXqB,YAAanB,EACboB,cAAenB,EACfoB,gBAAiBnB,EACjBoB,eAAgBnB,EAChBoB,QAASnB,EACToB,UAAWnB,EACXoB,QAASnB,EACToB,YAAanB,EACboB,eAAgBnB,EAChBoB,aAAcnB,EACdoB,WAAYnB,EACZoB,gBAAiBnB,EACjBoB,gBAAiBnB,CAAAA,EAErB,CACId,EAAWkC,OACXhC,EAAagC,OACb/B,EAAe+B,OACf9B,EAAiB8B,OACjB7B,EAAgB6B,OAChB5B,EAAS4B,OACT3B,EAAW2B,OACX1B,EAAS0B,OACTzB,EAAayB,OACbxB,EAAgBwB,OAChBvB,EAAcuB,OACdtB,EAAYsB,OACZrB,EAAiBqB,OACjBpB,EAAiBoB,MAAAA,CAAAA,CAG7B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PlainSegmentWorker.worker-JsKldq-e.js","sources":["../src/utils/PlainSegmentWorker.worker.js"],"sourcesContent":["/* eslint-env worker */\n\"use strict\";\n\nlet model = null;\n\nlet cached_ix = null;\nlet cached_iy = null;\nlet v00 = null;\nlet v01 = null;\nlet v10 = null;\nlet v11 = null;\n//let t = null;\n\nfunction rawval(ix, iy) {\n if (iy < 0) {\n iy = -iy;\n ix += model.width / 2;\n } else if (iy >= model.height) {\n iy = 2 * (model.height - 1) - iy;\n ix += model.width / 2;\n }\n\n if (ix < 0) {\n ix += model.width;\n } else if (ix >= model.width) {\n ix -= model.width;\n }\n\n var k = (iy * model.width + ix) * 2 + model.i;\n\n return (model.rawfile[k] << 8) | model.rawfile[k + 1];\n}\n\nfunction getHeightMSL(lon, lat) {\n if (!model) return 0;\n\n if (lon < 0) lon += 360.0;\n\n var fy = (90 - lat) * model.rlatres;\n var fx = lon * model.rlonres;\n var iy = Math.floor(fy);\n var ix = Math.floor(fx);\n\n fx -= ix;\n fy -= iy;\n\n if (iy === model.height - 1) {\n iy--;\n }\n\n if (cached_ix !== ix || cached_iy !== iy) {\n cached_ix = ix;\n cached_iy = iy;\n\n v00 = rawval(ix, iy);\n v01 = rawval(ix + 1, iy);\n v10 = rawval(ix, iy + 1);\n v11 = rawval(ix + 1, iy + 1);\n }\n\n let h = null;\n\n var a = (1 - fx) * v00 + fx * v01;\n var b = (1 - fx) * v10 + fx * v11;\n\n h = (1 - fy) * a + fy * b;\n\n return model.offset + model.scale * h;\n}\n\nconst HALF_PI = Math.PI * 0.5;\nconst POLE = 20037508.34;\nconst PI_BY_POLE = Math.PI / POLE;\nconst INV_POLE_BY_180 = 180.0 / POLE;\nconst INV_PI_BY_180 = 180.0 / Math.PI;\nconst INV_PI_BY_180_HALF_PI = INV_PI_BY_180 * HALF_PI;\nconst RADIANS = Math.PI / 180.0;\nconst INV_PI_BY_360 = INV_PI_BY_180 * 2.0;\n\nlet E2 = 0.0,\n A = 0.0;\n\nlet _projFunc = null;\n\nconst Vec3 = function (x, y, z) {\n this.x = x;\n this.y = y;\n this.z = z;\n};\n\nvar geodeticToCartesian = function (lon, lat, heightFactor, res) {\n let h = getHeightMSL(lon, lat) * heightFactor;\n\n let latrad = RADIANS * lat,\n lonrad = RADIANS * lon;\n\n let slt = Math.sin(latrad);\n\n let N = A / Math.sqrt(1.0 - E2 * slt * slt);\n let nc = (N + h) * Math.cos(latrad);\n\n res.x = nc * Math.cos(lonrad);\n res.y = nc * Math.sin(lonrad);\n res.z = (N * (1 - E2) + h) * slt;\n};\n\nvar geodeticToCartesianInverse = function (lon, lat, heightFactor, res) {\n geodeticToCartesian(\n lon * INV_POLE_BY_180,\n INV_PI_BY_360 * Math.atan(Math.exp(lat * PI_BY_POLE)) - INV_PI_BY_180_HALF_PI,\n heightFactor,\n res\n );\n};\n\nvar worldPos = new Vec3(0.0, 0.0, 0.0);\nvar rtcPos = new Vec3(0.0, 0.0, 0.0);\nvar _tempHigh = new Vec3(0.0, 0.0, 0.0);\nvar _tempLow = new Vec3(0.0, 0.0, 0.0);\n\nvar doubleToTwoFloats = function (v, high, low) {\n let x = v.x,\n y = v.y,\n z = v.z;\n\n var doubleHigh;\n\n if (x >= 0.0) {\n doubleHigh = Math.floor(x / 65536.0) * 65536.0;\n high.x = Math.fround(doubleHigh);\n low.x = Math.fround(x - doubleHigh);\n } else {\n doubleHigh = Math.floor(-x / 65536.0) * 65536.0;\n high.x = Math.fround(-doubleHigh);\n low.x = Math.fround(x + doubleHigh);\n }\n\n if (y >= 0.0) {\n doubleHigh = Math.floor(y / 65536.0) * 65536.0;\n high.y = Math.fround(doubleHigh);\n low.y = Math.fround(y - doubleHigh);\n } else {\n doubleHigh = Math.floor(-y / 65536.0) * 65536.0;\n high.y = Math.fround(-doubleHigh);\n low.y = Math.fround(y + doubleHigh);\n }\n\n if (z >= 0.0) {\n doubleHigh = Math.floor(z / 65536.0) * 65536.0;\n high.z = Math.fround(doubleHigh);\n low.z = Math.fround(z - doubleHigh);\n } else {\n doubleHigh = Math.floor(-z / 65536.0) * 65536.0;\n high.z = Math.fround(-doubleHigh);\n low.z = Math.fround(z + doubleHigh);\n }\n};\n\nself.onmessage = function (msg) {\n if (msg.data.model) {\n model = msg.data.model;\n model.rawfile = msg.data.rawfile;\n } else if (msg.data.params) {\n let rtc_x = msg.data.params[14];\n let rtc_y = msg.data.params[15];\n let rtc_z = msg.data.params[16];\n\n let xmin = 549755748352.0,\n xmax = -549755748352.0,\n ymin = 549755748352.0,\n ymax = -549755748352.0,\n zmin = 549755748352.0,\n zmax = -549755748352.0;\n\n E2 = msg.data.params[8];\n A = msg.data.params[9];\n\n let gridSize = msg.data.params[2],\n fgs = msg.data.params[3],\n r2_x = msg.data.params[10],\n r2_y = msg.data.params[11],\n r2_z = msg.data.params[12];\n\n let heightFactor = msg.data.params[13];\n\n if (msg.data.params[1] === 0.0) {\n _projFunc = geodeticToCartesianInverse;\n } else {\n _projFunc = geodeticToCartesian;\n }\n\n let maxFgs = Math.max(fgs, gridSize);\n let llStep = (msg.data.params[6] - msg.data.params[4]) / maxFgs;\n let ltStep = (msg.data.params[7] - msg.data.params[5]) / maxFgs;\n\n let esw_lon = msg.data.params[4],\n ene_lat = msg.data.params[7];\n\n let dg = Math.max(fgs / gridSize, 1.0),\n gs = maxFgs + 1;\n\n const gsgs = gs * gs;\n\n const gridSize3 = (gridSize + 1) * (gridSize + 1) * 3;\n\n let plainNormals = new Float32Array(gridSize3);\n\n let plainVertices = new Float64Array(gridSize3);\n let plainVerticesHigh = new Float32Array(gridSize3);\n let plainVerticesLow = new Float32Array(gridSize3);\n let normalMapNormals = new Float32Array(gsgs * 3);\n let normalMapVertices = new Float64Array(gsgs * 3);\n\n let ind = 0,\n nmInd = 0;\n\n for (let k = 0; k < gsgs; k++) {\n let j = k % gs,\n i = ~~(k / gs);\n\n _projFunc(esw_lon + j * llStep, ene_lat - i * ltStep, heightFactor, worldPos);\n\n let nx = worldPos.x * r2_x,\n ny = worldPos.y * r2_y,\n nz = worldPos.z * r2_z;\n let l = 1.0 / Math.sqrt(nx * nx + ny * ny + nz * nz);\n let nxl = nx * l,\n nyl = ny * l,\n nzl = nz * l;\n\n rtcPos.x = worldPos.x - rtc_x;\n rtcPos.y = worldPos.y - rtc_y;\n rtcPos.z = worldPos.z - rtc_z;\n\n normalMapVertices[nmInd] = rtcPos.x;\n normalMapNormals[nmInd++] = nxl;\n\n normalMapVertices[nmInd] = rtcPos.y;\n normalMapNormals[nmInd++] = nyl;\n\n normalMapVertices[nmInd] = rtcPos.z;\n normalMapNormals[nmInd++] = nzl;\n\n if (i % dg === 0 && j % dg === 0) {\n doubleToTwoFloats(rtcPos, _tempHigh, _tempLow);\n\n plainVertices[ind] = rtcPos.x;\n plainVerticesHigh[ind] = _tempHigh.x;\n plainVerticesLow[ind] = _tempLow.x;\n plainNormals[ind++] = nxl;\n\n plainVertices[ind] = rtcPos.y;\n plainVerticesHigh[ind] = _tempHigh.y;\n plainVerticesLow[ind] = _tempLow.y;\n plainNormals[ind++] = nyl;\n\n plainVertices[ind] = rtcPos.z;\n plainVerticesHigh[ind] = _tempHigh.z;\n plainVerticesLow[ind] = _tempLow.z;\n plainNormals[ind++] = nzl;\n\n if (worldPos.x < xmin) xmin = worldPos.x;\n if (worldPos.x > xmax) xmax = worldPos.x;\n if (worldPos.y < ymin) ymin = worldPos.y;\n if (worldPos.y > ymax) ymax = worldPos.y;\n if (worldPos.z < zmin) zmin = worldPos.z;\n if (worldPos.z > zmax) zmax = worldPos.z;\n }\n }\n\n let x = (xmax - xmin) * 0.5,\n y = (ymax - ymin) * 0.5,\n z = (zmax - zmin) * 0.5;\n\n let plainRadius = Math.sqrt(x * x + y * y + z * z);\n\n self.postMessage(\n {\n id: msg.data.params[0],\n plainVertices: plainVertices,\n plainVerticesHigh: plainVerticesHigh,\n plainVerticesLow: plainVerticesLow,\n plainNormals: plainNormals,\n normalMapNormals: normalMapNormals,\n normalMapVertices: normalMapVertices,\n plainRadius: plainRadius,\n relativeCenter: [rtc_x, rtc_y, rtc_z]\n },\n [\n plainVertices.buffer,\n plainVerticesHigh.buffer,\n plainVerticesLow.buffer,\n plainNormals.buffer,\n normalMapNormals.buffer,\n normalMapVertices.buffer\n ]\n );\n }\n};\n"],"names":["model","cached_ix","cached_iy","v00","v01","v10","v11","rawval","ix","iy","width","height","k","i","rawfile","HALF_PI","Math","PI","POLE","PI_BY_POLE","INV_POLE_BY_180","INV_PI_BY_180","INV_PI_BY_180_HALF_PI","RADIANS","INV_PI_BY_360","E2","A","_projFunc","Vec3","x","y","z","this","geodeticToCartesian","lon","lat","heightFactor","res","h","fy","rlatres","fx","rlonres","floor","offset","scale","latrad","lonrad","slt","sin","N","sqrt","nc","cos","geodeticToCartesianInverse","atan","exp","worldPos","rtcPos","_tempHigh","_tempLow","doubleToTwoFloats","v","high","low","doubleHigh","fround","self","onmessage","msg","data","params","rtc_x","rtc_y","rtc_z","xmin","xmax","ymin","ymax","zmin","zmax","gridSize","fgs","r2_x","r2_y","r2_z","maxFgs","max","llStep","ltStep","esw_lon","ene_lat","dg","gs","gsgs","gridSize3","plainNormals","Float32Array","plainVertices","Float64Array","plainVerticesHigh","plainVerticesLow","normalMapNormals","normalMapVertices","ind","nmInd","j","nx","ny","nz","l","nxl","nyl","nzl","plainRadius","postMessage","id","relativeCenter","buffer"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TerrainWorker.worker-CqUJvMOv.js","sources":["../src/utils/TerrainWorker.worker.js"],"sourcesContent":["/* eslint-env worker */\n\"use strict\";\n//\n//Terrain worker\n//\n\nfunction binarySearchFast(arr, x) {\n let start = 0,\n end = arr.length - 1;\n while (start <= end) {\n let k = Math.floor((start + end) * 0.5);\n if (Math.abs(arr[k] - x) < 1e-3) return k;\n else if (arr[k] < x) start = k + 1;\n else end = k - 1;\n }\n return -1;\n}\n\nfunction checkNoDataValue(noDataValues, value) {\n return binarySearchFast(noDataValues, value) !== -1;\n}\n\nvar Vec3 = function (x, y, z) {\n this.x = x;\n this.y = y;\n this.z = z;\n};\n\nvar doubleToTwoFloats = function (v, high, low) {\n let x = v.x,\n y = v.y,\n z = v.z;\n\n var doubleHigh;\n\n if (x >= 0.0) {\n doubleHigh = Math.floor(x / 65536.0) * 65536.0;\n high.x = Math.fround(doubleHigh);\n low.x = Math.fround(x - doubleHigh);\n } else {\n doubleHigh = Math.floor(-x / 65536.0) * 65536.0;\n high.x = Math.fround(-doubleHigh);\n low.x = Math.fround(x + doubleHigh);\n }\n\n if (y >= 0.0) {\n doubleHigh = Math.floor(y / 65536.0) * 65536.0;\n high.y = Math.fround(doubleHigh);\n low.y = Math.fround(y - doubleHigh);\n } else {\n doubleHigh = Math.floor(-y / 65536.0) * 65536.0;\n high.y = Math.fround(-doubleHigh);\n low.y = Math.fround(y + doubleHigh);\n }\n\n if (z >= 0.0) {\n doubleHigh = Math.floor(z / 65536.0) * 65536.0;\n high.z = Math.fround(doubleHigh);\n low.z = Math.fround(z - doubleHigh);\n } else {\n doubleHigh = Math.floor(-z / 65536.0) * 65536.0;\n high.z = Math.fround(-doubleHigh);\n low.z = Math.fround(z + doubleHigh);\n }\n};\n\nVec3.prototype.sub = function (v) {\n return new Vec3(this.x - v.x, this.y - v.y, this.z - v.z);\n};\n\nVec3.prototype.add = function (v) {\n return new Vec3(this.x + v.x, this.y + v.y, this.z + v.z);\n};\n\nVec3.prototype.cross = function (v) {\n return new Vec3(this.y * v.z - this.z * v.y, this.z * v.x - this.x * v.z, this.x * v.y - this.y * v.x);\n};\n\nVec3.prototype.normalize = function () {\n var x = this.x,\n y = this.y,\n z = this.z;\n var length = 1.0 / Math.sqrt(x * x + y * y + z * z);\n this.x = x * length;\n this.y = y * length;\n this.z = z * length;\n return this;\n};\n\nVec3.prototype.distance = function (v) {\n return this.sub(v).length();\n};\n\nVec3.prototype.length = function () {\n return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);\n};\n\nvar blerp = function (x, y, fQ11, fQ21, fQ12, fQ22) {\n return fQ11 * (1.0 - x) * (1.0 - y) + fQ21 * x * (1.0 - y) + fQ12 * (1.0 - x) * y + fQ22 * x * y;\n};\n\nvar _tempVec = new Vec3(0.0, 0.0, 0.0);\nvar _rtcTempVec = new Vec3(0.0, 0.0, 0.0);\n\nvar _tempHigh = new Vec3(0.0, 0.0, 0.0),\n _tempLow = new Vec3(0.0, 0.0, 0.0);\n\nself.onmessage = function (e) {\n var elevations = e.data.elevations,\n this_plainVertices = e.data.this_plainVertices,\n this_plainNormals = e.data.this_plainNormals,\n this_normalMapVertices = e.data.this_normalMapVertices,\n this_normalMapNormals = e.data.this_normalMapNormals,\n heightFactor = e.data.heightFactor,\n gridSize = e.data.gridSize,\n noDataValues = e.data.noDataValues,\n id = e.data.id;\n\n let rtc_x = e.data.relativeCenter[0],\n rtc_y = e.data.relativeCenter[1],\n rtc_z = e.data.relativeCenter[2];\n\n var xmin = 549755748352.0,\n xmax = -549755748352.0,\n ymin = 549755748352.0,\n ymax = -549755748352.0,\n zmin = 549755748352.0,\n zmax = -549755748352.0;\n\n const fileGridSize = Math.sqrt(elevations.length) - 1;\n\n const fileGridSize_one = fileGridSize + 1;\n const fileGridSize_one_x2 = fileGridSize_one * fileGridSize_one;\n const tgs = gridSize;\n const dg = fileGridSize / tgs;\n const gs = tgs + 1;\n const hf = heightFactor;\n\n var vInd = 0,\n noDataInd = 0;\n\n var gsgs3 = gs * gs * 3;\n\n var terrainVertices = new Float64Array(gsgs3),\n terrainVerticesHigh = new Float32Array(gsgs3),\n terrainVerticesLow = new Float32Array(gsgs3),\n noDataVertices = new Uint8Array(gs * gs);\n\n var normalMapNormals, normalMapVertices;\n\n var nv = this_normalMapVertices,\n nn = this_normalMapNormals;\n\n if (fileGridSize >= tgs) {\n normalMapNormals = new Float32Array(fileGridSize_one_x2 * 3);\n normalMapVertices = new Float64Array(fileGridSize_one_x2 * 3);\n\n for (let k = 0; k < fileGridSize_one_x2; k++) {\n var j = k % fileGridSize_one,\n i = ~~(k / fileGridSize_one);\n\n //\n // V0\n //\n var hInd0 = k;\n var vInd0 = hInd0 * 3;\n var currElv = elevations[hInd0];\n if (checkNoDataValue(noDataValues, currElv)) {\n currElv = 0.0;\n }\n var h0 = hf * currElv;\n var v0 = new Vec3(\n rtc_x + nv[vInd0] + h0 * nn[vInd0],\n rtc_y + nv[vInd0 + 1] + h0 * nn[vInd0 + 1],\n rtc_z + nv[vInd0 + 2] + h0 * nn[vInd0 + 2]\n );\n\n normalMapVertices[vInd0] = v0.x - rtc_x;\n normalMapVertices[vInd0 + 1] = v0.y - rtc_y;\n normalMapVertices[vInd0 + 2] = v0.z - rtc_z;\n\n //\n // The vertex goes into screen buffer\n if (i % dg === 0 && j % dg === 0) {\n let currVert = new Vec3(rtc_x + nv[vInd0], rtc_y + nv[vInd0 + 1], rtc_z + nv[vInd0 + 2]);\n let nextVert = new Vec3(rtc_x + nv[vInd0 + 3], rtc_y + nv[vInd0 + 4], rtc_z + nv[vInd0 + 5]);\n\n let nextElv = elevations[hInd0 + 1];\n if (checkNoDataValue(noDataValues, nextElv)) {\n nextElv = 0.0;\n }\n\n let eps = false;\n if (noDataValues.length === 0) {\n let step = currVert.distance(nextVert);\n let deltaElv = Math.abs(currElv - nextElv);\n eps = deltaElv / step > 10.0 || currElv < -5000;\n }\n\n if (eps) {\n noDataVertices[noDataInd] = 1;\n } else {\n noDataVertices[noDataInd] = 0;\n if (v0.x < xmin) xmin = v0.x;\n if (v0.x > xmax) xmax = v0.x;\n if (v0.y < ymin) ymin = v0.y;\n if (v0.y > ymax) ymax = v0.y;\n if (v0.z < zmin) zmin = v0.z;\n if (v0.z > zmax) zmax = v0.z;\n }\n\n let rtc_v0 = new Vec3(v0.x - rtc_x, v0.y - rtc_y, v0.z - rtc_z);\n doubleToTwoFloats(rtc_v0, _tempHigh, _tempLow);\n\n terrainVerticesHigh[vInd] = _tempHigh.x;\n terrainVerticesLow[vInd] = _tempLow.x;\n terrainVertices[vInd++] = rtc_v0.x;\n\n terrainVerticesHigh[vInd] = _tempHigh.y;\n terrainVerticesLow[vInd] = _tempLow.y;\n terrainVertices[vInd++] = rtc_v0.y;\n\n terrainVerticesHigh[vInd] = _tempHigh.z;\n terrainVerticesLow[vInd] = _tempLow.z;\n terrainVertices[vInd++] = rtc_v0.z;\n\n noDataInd++;\n }\n\n if (i !== fileGridSize && j !== fileGridSize) {\n //\n // V1\n //\n var hInd1 = k + 1;\n var vInd1 = hInd1 * 3;\n var elv = elevations[hInd1];\n if (checkNoDataValue(noDataValues, elv)) {\n elv = 0.0;\n }\n var h1 = hf * elv;\n var v1 = new Vec3(\n rtc_x + nv[vInd1] + h1 * nn[vInd1],\n rtc_y + nv[vInd1 + 1] + h1 * nn[vInd1 + 1],\n rtc_z + nv[vInd1 + 2] + h1 * nn[vInd1 + 2]\n );\n\n normalMapVertices[vInd1] = v1.x - rtc_x;\n normalMapVertices[vInd1 + 1] = v1.y - rtc_y;\n normalMapVertices[vInd1 + 2] = v1.z - rtc_z;\n\n //\n // V2\n //\n var hInd2 = k + fileGridSize_one;\n var vInd2 = hInd2 * 3;\n elv = elevations[hInd2];\n if (checkNoDataValue(noDataValues, elv)) {\n elv = 0.0;\n }\n var h2 = hf * elv;\n var v2 = new Vec3(\n rtc_x + nv[vInd2] + h2 * nn[vInd2],\n rtc_y + nv[vInd2 + 1] + h2 * nn[vInd2 + 1],\n rtc_z + nv[vInd2 + 2] + h2 * nn[vInd2 + 2]\n );\n\n normalMapVertices[vInd2] = v2.x - rtc_x;\n normalMapVertices[vInd2 + 1] = v2.y - rtc_y;\n normalMapVertices[vInd2 + 2] = v2.z - rtc_z;\n\n //\n // V3\n //\n var hInd3 = k + fileGridSize_one + 1;\n var vInd3 = hInd3 * 3;\n elv = elevations[hInd3];\n if (checkNoDataValue(noDataValues, elv)) {\n elv = 0.0;\n }\n var h3 = hf * elv;\n var v3 = new Vec3(\n rtc_x + nv[vInd3] + h3 * nn[vInd3],\n rtc_y + nv[vInd3 + 1] + h3 * nn[vInd3 + 1],\n rtc_z + nv[vInd3 + 2] + h3 * nn[vInd3 + 2]\n );\n\n normalMapVertices[vInd3] = v3.x - rtc_x;\n normalMapVertices[vInd3 + 1] = v3.y - rtc_y;\n normalMapVertices[vInd3 + 2] = v3.z - rtc_z;\n\n //\n // Normal\n //\n var e10 = v1.sub(v0),\n e20 = v2.sub(v0),\n e30 = v3.sub(v0);\n\n var sw = e20.cross(e30).normalize();\n var ne = e30.cross(e10).normalize();\n var n0 = ne.add(sw).normalize();\n\n normalMapNormals[vInd0] += n0.x;\n normalMapNormals[vInd0 + 1] += n0.y;\n normalMapNormals[vInd0 + 2] += n0.z;\n\n normalMapNormals[vInd1] += ne.x;\n normalMapNormals[vInd1 + 1] += ne.y;\n normalMapNormals[vInd1 + 2] += ne.z;\n\n normalMapNormals[vInd2] += sw.x;\n normalMapNormals[vInd2 + 1] += sw.y;\n normalMapNormals[vInd2 + 2] += sw.z;\n\n normalMapNormals[vInd3] += n0.x;\n normalMapNormals[vInd3 + 1] += n0.y;\n normalMapNormals[vInd3 + 2] += n0.z;\n }\n }\n } else {\n normalMapNormals = new Float32Array(gsgs3);\n normalMapVertices = new Float64Array(gsgs3);\n\n var oneSize = tgs / fileGridSize;\n var gsgs = gsgs3 / 3;\n var fgsOne = fileGridSize + 1;\n\n for (let i = 0; i < gsgs; i++) {\n let ii = Math.floor(i / gs),\n ij = i % gs;\n\n let qii = ii % oneSize,\n qij = ij % oneSize;\n\n let hlt_ind = Math.floor(ii / oneSize) * fgsOne + Math.floor(ij / oneSize);\n\n if (ij === tgs) {\n hlt_ind -= 1;\n qij = oneSize;\n }\n\n if (ii === tgs) {\n hlt_ind -= fgsOne;\n qii = oneSize;\n }\n\n let hrt_ind = hlt_ind + 1,\n hlb_ind = hlt_ind + fgsOne,\n hrb_ind = hlb_ind + 1;\n\n let h_lt = elevations[hlt_ind],\n h_rt = elevations[hrt_ind],\n h_lb = elevations[hlb_ind],\n h_rb = elevations[hrb_ind];\n\n if (checkNoDataValue(noDataValues, h_lt)) {\n h_lt = 0.0;\n }\n\n if (checkNoDataValue(noDataValues, h_rt)) {\n h_rt = 0.0;\n }\n\n if (checkNoDataValue(noDataValues, h_lb)) {\n h_lb = 0.0;\n }\n\n if (checkNoDataValue(noDataValues, h_rb)) {\n h_rb = 0.0;\n }\n\n let hi = blerp(qij / oneSize, qii / oneSize, h_lt, h_rt, h_lb, h_rb);\n\n let i3 = i * 3;\n\n _rtcTempVec.x = this_plainVertices[i3] + hi * this_plainNormals[i3];\n _rtcTempVec.y = this_plainVertices[i3 + 1] + hi * this_plainNormals[i3 + 1];\n _rtcTempVec.z = this_plainVertices[i3 + 2] + hi * this_plainNormals[i3 + 2];\n\n doubleToTwoFloats(_rtcTempVec, _tempHigh, _tempLow);\n\n terrainVertices[i3] = _rtcTempVec.x;\n terrainVertices[i3 + 1] = _rtcTempVec.y;\n terrainVertices[i3 + 2] = _rtcTempVec.z;\n\n terrainVerticesHigh[i3] = _tempHigh.x;\n terrainVerticesHigh[i3 + 1] = _tempHigh.y;\n terrainVerticesHigh[i3 + 2] = _tempHigh.z;\n\n terrainVerticesLow[i3] = _tempLow.x;\n terrainVerticesLow[i3 + 1] = _tempLow.y;\n terrainVerticesLow[i3 + 2] = _tempLow.z;\n\n _tempVec.x = _rtcTempVec.x + rtc_x;\n _tempVec.y = _rtcTempVec.y + rtc_y;\n _tempVec.z = _rtcTempVec.z + rtc_z;\n\n if (_tempVec.x < xmin) xmin = _tempVec.x;\n if (_tempVec.x > xmax) xmax = _tempVec.x;\n if (_tempVec.y < ymin) ymin = _tempVec.y;\n if (_tempVec.y > ymax) ymax = _tempVec.y;\n if (_tempVec.z < zmin) zmin = _tempVec.z;\n if (_tempVec.z > zmax) zmax = _tempVec.z;\n }\n\n normalMapVertices.set(terrainVertices);\n\n for (let k = 0; k < gsgs; k++) {\n let j = k % gs,\n i = ~~(k / gs);\n\n if (i !== tgs && j !== tgs) {\n let v0ind = k * 3,\n v1ind = v0ind + 3,\n v2ind = v0ind + gs * 3,\n v3ind = v2ind + 3;\n\n let v0 = new Vec3(\n terrainVertices[v0ind] + rtc_x,\n terrainVertices[v0ind + 1] + rtc_y,\n terrainVertices[v0ind + 2] + rtc_z\n ),\n v1 = new Vec3(\n terrainVertices[v1ind] + rtc_x,\n terrainVertices[v1ind + 1] + rtc_y,\n terrainVertices[v1ind + 2] + rtc_z\n ),\n v2 = new Vec3(\n terrainVertices[v2ind] + rtc_x,\n terrainVertices[v2ind + 1] + rtc_y,\n terrainVertices[v2ind + 2] + rtc_z\n ),\n v3 = new Vec3(\n terrainVertices[v3ind] + rtc_x,\n terrainVertices[v3ind + 1] + rtc_y,\n terrainVertices[v3ind + 2] + rtc_z\n );\n\n let e10 = v1.sub(v0).normalize(),\n e20 = v2.sub(v0).normalize(),\n e30 = v3.sub(v0).normalize();\n\n let sw = e20.cross(e30).normalize();\n let ne = e30.cross(e10).normalize();\n let n0 = ne.add(sw).normalize();\n\n normalMapNormals[v0ind] += n0.x;\n normalMapNormals[v0ind + 1] += n0.y;\n normalMapNormals[v0ind + 2] += n0.z;\n\n normalMapNormals[v1ind] += ne.x;\n normalMapNormals[v1ind + 1] += ne.y;\n normalMapNormals[v1ind + 2] += ne.z;\n\n normalMapNormals[v2ind] += sw.x;\n normalMapNormals[v2ind + 1] += sw.y;\n normalMapNormals[v2ind + 2] += sw.z;\n\n normalMapNormals[v3ind] += n0.x;\n normalMapNormals[v3ind + 1] += n0.y;\n normalMapNormals[v3ind + 2] += n0.z;\n }\n }\n }\n\n self.postMessage(\n {\n id: id,\n normalMapNormals: normalMapNormals,\n normalMapVertices: normalMapVertices,\n terrainVertices: terrainVertices,\n terrainVerticesHigh: terrainVerticesHigh,\n terrainVerticesLow: terrainVerticesLow,\n noDataVertices: noDataVertices,\n bounds: [xmin, ymin, zmin, xmax, ymax, zmax],\n relativeCenter: e.data.relativeCenter\n },\n [\n normalMapNormals.buffer,\n normalMapVertices.buffer,\n terrainVertices.buffer,\n terrainVerticesHigh.buffer,\n terrainVerticesLow.buffer,\n noDataVertices.buffer\n ]\n );\n};\n"],"names":["checkNoDataValue","noDataValues","value","arr","x","start","end","length","k","Math","floor","abs","Vec3","y","z","this","doubleToTwoFloats","v","high","low","doubleHigh","fround","prototype","sub","add","cross","normalize","sqrt","distance","_tempVec","_rtcTempVec","_tempHigh","_tempLow","self","onmessage","e","elevations","data","this_plainVertices","this_plainNormals","this_normalMapVertices","this_normalMapNormals","heightFactor","gridSize","id","rtc_x","relativeCenter","rtc_y","rtc_z","xmin","xmax","ymin","ymax","zmin","zmax","fileGridSize","fileGridSize_one","fileGridSize_one_x2","tgs","dg","gs","hf","normalMapNormals","normalMapVertices","vInd","noDataInd","gsgs3","terrainVertices","Float64Array","terrainVerticesHigh","Float32Array","terrainVerticesLow","noDataVertices","Uint8Array","nv","nn","j","i","hInd0","vInd0","currElv","h0","v0","currVert","nextVert","nextElv","eps","step","rtc_v0","hInd1","vInd1","elv","h1","v1","hInd2","vInd2","h2","v2","hInd3","vInd3","h3","v3","e10","e20","e30","sw","ne","n0","oneSize","gsgs","fgsOne","ii","ij","qii","qij","hlt_ind","hrt_ind","hlb_ind","hrb_ind","h_lt","h_rt","h_lb","h_rb","hi","i3","set","v0ind","v1ind","v2ind","v3ind","postMessage","bounds","buffer"],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Control, IControlParams } from "./Control";
|
|
2
|
-
import { CameraFrameHandler } from "./CameraFrameHandler";
|
|
3
|
-
import { EntityCollection } from "../entity";
|
|
4
|
-
import { Scene } from "../scene/Scene";
|
|
5
|
-
export interface ICameraFrameComposerParams extends IControlParams {
|
|
6
|
-
frameHandlers?: CameraFrameHandler[];
|
|
7
|
-
}
|
|
8
|
-
export declare class CameraFrameComposer extends Control {
|
|
9
|
-
readonly _frameHandlers: CameraFrameHandler[];
|
|
10
|
-
protected _cameraLayer: EntityCollection;
|
|
11
|
-
protected _cameraScene: Scene;
|
|
12
|
-
constructor(params?: ICameraFrameComposerParams);
|
|
13
|
-
get frameHandlers(): CameraFrameHandler[];
|
|
14
|
-
add(handler: CameraFrameHandler): void;
|
|
15
|
-
oninit(): void;
|
|
16
|
-
activate(): void;
|
|
17
|
-
deactivate(): void;
|
|
18
|
-
protected _onPostdraw: () => void;
|
|
19
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { Camera } from "../camera/Camera";
|
|
2
|
-
import { Framebuffer } from "../webgl/Framebuffer";
|
|
3
|
-
import { Entity } from "../entity/Entity";
|
|
4
|
-
import { Vec3 } from "../math/Vec3";
|
|
5
|
-
import { CameraFrameComposer } from "./CameraFrameComposer";
|
|
6
|
-
export type FrameHandlerFunc = (frameHandler: CameraFrameHandler) => void;
|
|
7
|
-
export interface ICameraFrameHadler {
|
|
8
|
-
camera: Camera;
|
|
9
|
-
frameBuffer: Framebuffer;
|
|
10
|
-
frameHandler: FrameHandlerFunc;
|
|
11
|
-
showFrustum?: boolean;
|
|
12
|
-
}
|
|
13
|
-
export declare class CameraFrameHandler {
|
|
14
|
-
readonly camera: Camera;
|
|
15
|
-
readonly frameBuffer: Framebuffer;
|
|
16
|
-
frameHandler: FrameHandlerFunc | null;
|
|
17
|
-
protected _composer: CameraFrameComposer | null;
|
|
18
|
-
protected _composerIndex: number;
|
|
19
|
-
readonly cameraEntity: Entity | null;
|
|
20
|
-
showFrustum: boolean;
|
|
21
|
-
constructor(params: ICameraFrameHadler);
|
|
22
|
-
get frustumScale(): Vec3;
|
|
23
|
-
addTo(composer: CameraFrameComposer): void;
|
|
24
|
-
remove(): void;
|
|
25
|
-
frame(): void;
|
|
26
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { CameraFrameComposer } from "../CameraFrameComposer";
|
|
2
|
-
import { CameraFrameHandler } from "../CameraFrameHandler";
|
|
3
|
-
import { Camera } from "../../camera/Camera";
|
|
4
|
-
import { Framebuffer } from "../../webgl";
|
|
5
|
-
import { Control, IControlParams } from "../Control";
|
|
6
|
-
import { Vec3 } from "../../math/Vec3";
|
|
7
|
-
import { LonLat } from "../../LonLat";
|
|
8
|
-
import { Vector } from "../../layer/Vector";
|
|
9
|
-
import { Entity } from "../../entity/Entity";
|
|
10
|
-
import { QuadTreeStrategy } from "../../quadTree";
|
|
11
|
-
interface IPerimeterSegmentsData {
|
|
12
|
-
segments: LonLat[][];
|
|
13
|
-
isClosed: boolean;
|
|
14
|
-
}
|
|
15
|
-
export interface ICameraDepthHandlerParams extends IControlParams {
|
|
16
|
-
showFrustum?: boolean;
|
|
17
|
-
showFootprint?: boolean;
|
|
18
|
-
}
|
|
19
|
-
export declare class CameraDepthHandler extends Control {
|
|
20
|
-
protected _frameHandler: CameraFrameHandler | null;
|
|
21
|
-
protected _frameComposer: CameraFrameComposer;
|
|
22
|
-
readonly cameraFootprintLayer: Vector;
|
|
23
|
-
protected readonly _cameraFootprintEntity: Entity;
|
|
24
|
-
protected _cameraFootprintSegmentPointCounts: number[] | null;
|
|
25
|
-
protected _cameraFootprintClosedState: boolean | null;
|
|
26
|
-
protected _quadTreeStrategy: QuadTreeStrategy | null;
|
|
27
|
-
protected _showFrustum: boolean;
|
|
28
|
-
protected _showFootprint: boolean;
|
|
29
|
-
constructor(params: ICameraDepthHandlerParams);
|
|
30
|
-
protected _createCamera(): Camera;
|
|
31
|
-
get camera(): Camera | undefined;
|
|
32
|
-
oninit(): void;
|
|
33
|
-
get framebuffer(): Framebuffer | undefined;
|
|
34
|
-
protected _depthHandlerCallback: (frameHandler: CameraFrameHandler) => void;
|
|
35
|
-
protected _renderFootprint(frameHandler: CameraFrameHandler): void;
|
|
36
|
-
protected _collectPerimeterLonLats(width: number, height: number): IPerimeterSegmentsData;
|
|
37
|
-
getCartesianFromPixelTerrain(x: number, y: number): Vec3 | undefined;
|
|
38
|
-
getLonLatFromPixelTerrain(x: number, y: number): LonLat | undefined;
|
|
39
|
-
activate(): void;
|
|
40
|
-
deactivate(): void;
|
|
41
|
-
}
|
|
42
|
-
export {};
|
package/lib/tsconfig.tsbuildinfo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"root":["../src/Clock.ts","../src/Deferred.ts","../src/Events.ts","../src/Extent.ts","../src/Globe.ts","../src/ImageCanvas.ts","../src/Lock.ts","../src/LonLat.ts","../src/Object3d.ts","../src/Popup.ts","../src/QueueArray.ts","../src/Rectangle.ts","../src/Stack.ts","../src/cons.ts","../src/index.ts","../src/math.ts","../src/mercator.ts","../src/shadeModeConstants.ts","../src/astro/astro.ts","../src/astro/earth.ts","../src/astro/jd.ts","../src/astro/orbit.ts","../src/astro/rotation.ts","../src/bv/Box.ts","../src/bv/Sphere.ts","../src/bv/index.ts","../src/camera/Camera.ts","../src/camera/Frustum.ts","../src/camera/PlanetCamera.ts","../src/camera/index.ts","../src/control/CameraFrameComposer.ts","../src/control/CameraFrameHandler.ts","../src/control/CameraLock.ts","../src/control/CompassButton.ts","../src/control/Control.ts","../src/control/DebugInfo.ts","../src/control/DrawingSwitcher.ts","../src/control/EarthCoordinates.ts","../src/control/FramebufferPreview.ts","../src/control/GeoImageDragControl.ts","../src/control/KeyboardNavigation.ts","../src/control/LayerAnimation.ts","../src/control/LayerSwitcher.ts","../src/control/Lighting.ts","../src/control/Navigation.ts","../src/control/OrthoSwitcher.ts","../src/control/RulerSwitcher.ts","../src/control/ScaleControl.ts","../src/control/SegmentBoundVisualization.ts","../src/control/ShowFps.ts","../src/control/SimpleNavigation.ts","../src/control/SimpleSkyBackground.ts","../src/control/SimpleTouchNavigation.ts","../src/control/Sun.ts","../src/control/ToggleWireframe.ts","../src/control/TouchNavigation.ts","../src/control/index.ts","../src/control/atmosphere/Atmosphere.ts","../src/control/atmosphere/AtmosphereConfig.ts","../src/control/cameraDepthHandler/CameraDepthHandler.ts","../src/control/cameraDepthHandler/camera_depth.ts","../src/control/drawing/DrawingControl.ts","../src/control/drawing/LineStringDrawingScene.ts","../src/control/drawing/PolygonDrawingScene.ts","../src/control/elevationProfile/ElevationProfile.ts","../src/control/elevationProfile/ElevationProfileButtonsView.ts","../src/control/elevationProfile/ElevationProfileControl.ts","../src/control/elevationProfile/ElevationProfileLegend.ts","../src/control/elevationProfile/ElevationProfileScene.ts","../src/control/elevationProfile/ElevationProfileView.ts","../src/control/elevationProfile/PointListDialog.ts","../src/control/entityEditor/ArrowEntity.ts","../src/control/entityEditor/AxisTrackEntity.ts","../src/control/entityEditor/EntityEditor.ts","../src/control/entityEditor/EntityEditorDialog.ts","../src/control/entityEditor/EntityEditorScene.ts","../src/control/entityEditor/MoveAxisEntity.ts","../src/control/entityEditor/MovePlaneEntity.ts","../src/control/entityEditor/RotateEntity.ts","../src/control/entityEditor/colors.ts","../src/control/entityTree/EntityTree.ts","../src/control/entityTree/EntityTreeView.ts","../src/control/heightRuler/HeightRuler.ts","../src/control/heightRuler/HeightRulerScene.ts","../src/control/heightRuler/HeightRulerSwitcher.ts","../src/control/object3dManager/Object3dCollection.ts","../src/control/object3dManager/Object3dCollectionView.ts","../src/control/object3dManager/Object3dItemView.ts","../src/control/object3dManager/Object3dManager.ts","../src/control/object3dManager/Object3dManagerDialog.ts","../src/control/ruler/Ruler.ts","../src/control/ruler/RulerScene.ts","../src/control/selection/Selection.ts","../src/control/selection/SelectionScene.ts","../src/control/timeline/TimelineControl.ts","../src/control/timeline/TimelineModel.ts","../src/control/timeline/TimelineView.ts","../src/control/timeline/timelineUtils.ts","../src/control/visibleExtent/Segment.js","../src/control/visibleExtent/VisibleExtent.js","../src/control/visibleExtent/segment.ts","../src/ellipsoid/Ellipsoid.ts","../src/ellipsoid/index.ts","../src/ellipsoid/mars.ts","../src/ellipsoid/moon.ts","../src/ellipsoid/wgs84.ts","../src/entity/Entity.ts","../src/entity/EntityCollection.ts","../src/entity/index.ts","../src/entity/billboard/BaseBillboard.ts","../src/entity/billboard/BaseBillboardHandler.ts","../src/entity/billboard/Billboard.ts","../src/entity/billboard/BillboardHandler.ts","../src/entity/geoObject/GeoObject.ts","../src/entity/geoObject/GeoObjectHandler.ts","../src/entity/geoObject/InstanceData.ts","../src/entity/geometry/Geometry.ts","../src/entity/geometry/GeometryHandler.ts","../src/entity/label/Label.ts","../src/entity/label/LabelHandler.ts","../src/entity/label/LabelWorker.ts","../src/entity/label/LabelWorker.worker.js","../src/entity/pointCloud/PointCloud.ts","../src/entity/pointCloud/PointCloudHandler.ts","../src/entity/polyline/Polyline.ts","../src/entity/polyline/PolylineBatchRenderer.ts","../src/entity/polyline/PolylineHandler.ts","../src/entity/ray/Ray.ts","../src/entity/ray/RayHandler.ts","../src/entity/strip/Strip.ts","../src/entity/strip/StripHandler.ts","../src/input/KeyboardHandler.ts","../src/input/MouseHandler.ts","../src/input/PointerHandler.ts","../src/input/input.ts","../src/layer/BaseGeoImage.ts","../src/layer/Bing.ts","../src/layer/CanvasTiles.ts","../src/layer/GeoImage.ts","../src/layer/GeoTexture2d.ts","../src/layer/GeoVideo.ts","../src/layer/KML.ts","../src/layer/Layer.ts","../src/layer/Material.ts","../src/layer/OpenStreetMap.ts","../src/layer/Vector.ts","../src/layer/WMS.ts","../src/layer/XYZ.ts","../src/layer/index.ts","../src/math/Line2.ts","../src/math/Line3.ts","../src/math/Mat3.ts","../src/math/Mat4.ts","../src/math/Plane.ts","../src/math/Quat.ts","../src/math/Ray.ts","../src/math/Vec2.ts","../src/math/Vec3.ts","../src/math/Vec4.ts","../src/math/coder.ts","../src/math/index.ts","../src/proj/EPSG3857.ts","../src/proj/EPSG4326.ts","../src/proj/Proj.ts","../src/proj/equi.ts","../src/quadTree/EntityCollectionNode.ts","../src/quadTree/EntityCollectionsTreeStrategy.ts","../src/quadTree/Node.ts","../src/quadTree/QuadTreeStrategy.ts","../src/quadTree/index.ts","../src/quadTree/quadTree.ts","../src/quadTree/EPSG4326/EPSG4326QuadTreeStrategy.ts","../src/quadTree/earth/EarthEntityCollectionNodeLonLat.ts","../src/quadTree/earth/EarthEntityCollectionsTreeStrategy.ts","../src/quadTree/earth/EarthQuadTreeStrategy.ts","../src/quadTree/equi/EquiEntityCollectionNodeLonLat.ts","../src/quadTree/equi/EquiEntityCollectionsTreeStrategy.ts","../src/quadTree/equi/EquiQuadTreeStrategy.ts","../src/quadTree/wgs84/Wgs84QuadTreeStrategy.ts","../src/renderer/AtmosphereDeferredShading.ts","../src/renderer/IDeferredShadingPass.ts","../src/renderer/ITransparencyPass.ts","../src/renderer/PhongDeferredShading.ts","../src/renderer/Renderer.ts","../src/renderer/RendererEvents.ts","../src/renderer/WOITPass.ts","../src/scene/AltitudeNearPlaneStrategy.ts","../src/scene/Axes.ts","../src/scene/Planet.ts","../src/scene/Scene.ts","../src/scene/SkyBox.ts","../src/scene/index.ts","../src/segment/Segment.ts","../src/segment/SegmentLonLat.ts","../src/segment/SegmentLonLatEqui.ts","../src/segment/Slice.ts","../src/segment/segmentHelper.ts","../src/shaders/applyDeferredDepth.ts","../src/shaders/depth.ts","../src/shaders/pointCloud.ts","../src/shaders/screenFrame.ts","../src/shaders/skybox.ts","../src/shaders/weightedOITResolve.ts","../src/shaders/atmos/atmos.ts","../src/shaders/billboard/billboard.ts","../src/shaders/deferredShading/deferredShading.ts","../src/shaders/deferredShading/deferredShadingAtmos.ts","../src/shaders/geo_object/geo_object.ts","../src/shaders/label/label.ts","../src/shaders/polyline/polyline.ts","../src/shaders/ray/ray.ts","../src/shaders/segment/segment.ts","../src/shaders/strip/strip.ts","../src/shaders/tone_mapping/toneMapping.ts","../src/terrain/BilTerrain.ts","../src/terrain/EmptyTerrain.ts","../src/terrain/Geoid.ts","../src/terrain/GlobusRgbTerrain.ts","../src/terrain/GlobusTerrain.ts","../src/terrain/RgbTerrain.ts","../src/terrain/index.ts","../src/ui/Button.ts","../src/ui/ButtonGroup.ts","../src/ui/Checkbox.ts","../src/ui/Color.ts","../src/ui/Dialog.ts","../src/ui/Input.ts","../src/ui/Slider.ts","../src/ui/ToggleButton.ts","../src/ui/View.ts","../src/ui/icons.ts","../src/ui/index.ts","../src/utils/BaseWorker.ts","../src/utils/FontAtlas.ts","../src/utils/GeoImageCreator.ts","../src/utils/ImagesCacheManager.ts","../src/utils/Loader.ts","../src/utils/NormalMapCreator.ts","../src/utils/PlainSegmentWorker.ts","../src/utils/PlainSegmentWorker.worker.js","../src/utils/TerrainWorker.ts","../src/utils/TerrainWorker.worker.js","../src/utils/TextureAtlas.ts","../src/utils/TextureResourceManager.ts","../src/utils/VectorTileCreator.ts","../src/utils/colorSpace.ts","../src/utils/colorTable.ts","../src/utils/earcut.ts","../src/utils/easing.ts","../src/utils/objParser.ts","../src/utils/shared.ts","../src/utils/textureResourceMeta.ts","../src/utils/units.ts","../src/utils/gltf/glbParser.ts","../src/utils/gltf/gltfParser.ts","../src/utils/gltf/types.ts","../src/webgl/BaseFramebuffer.ts","../src/webgl/Framebuffer.ts","../src/webgl/Handler.ts","../src/webgl/Multisample.ts","../src/webgl/ShaderProgram.ts","../src/webgl/index.ts","../src/webgl/types.ts","../src/webgl/variableHandlers.ts"],"version":"5.8.3"}
|