s3m-three 0.4.22 → 0.4.24
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/analysis/clipping.d.ts +63 -0
- package/dist/analysis/clipping.d.ts.map +1 -0
- package/dist/analysis/clipping.js +69 -0
- package/dist/analysis/clipping.js.map +1 -0
- package/dist/analysis/depth.d.ts +55 -0
- package/dist/analysis/depth.d.ts.map +1 -0
- package/dist/analysis/depth.js +99 -0
- package/dist/analysis/depth.js.map +1 -0
- package/dist/analysis/index.d.ts +21 -0
- package/dist/analysis/index.d.ts.map +1 -0
- package/dist/analysis/index.js +17 -0
- package/dist/analysis/index.js.map +1 -0
- package/dist/analysis/lineOfSight.d.ts +60 -0
- package/dist/analysis/lineOfSight.d.ts.map +1 -0
- package/dist/analysis/lineOfSight.js +56 -0
- package/dist/analysis/lineOfSight.js.map +1 -0
- package/dist/analysis/measure.d.ts +56 -0
- package/dist/analysis/measure.d.ts.map +1 -0
- package/dist/analysis/measure.js +95 -0
- package/dist/analysis/measure.js.map +1 -0
- package/dist/analysis/skyline.d.ts +55 -0
- package/dist/analysis/skyline.d.ts.map +1 -0
- package/dist/analysis/skyline.js +78 -0
- package/dist/analysis/skyline.js.map +1 -0
- package/dist/analysis/viewshed.d.ts +48 -0
- package/dist/analysis/viewshed.d.ts.map +1 -0
- package/dist/analysis/viewshed.js +115 -0
- package/dist/analysis/viewshed.js.map +1 -0
- package/dist/browser/s3m-three.iife.ext-three.js +52 -35
- package/dist/browser/s3m-three.iife.js +47 -30
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/render/DatasetManager.d.ts +13 -0
- package/dist/render/DatasetManager.d.ts.map +1 -1
- package/dist/render/DatasetManager.js +20 -0
- package/dist/render/DatasetManager.js.map +1 -1
- package/dist/render/GeometryBuilder.d.ts +11 -0
- package/dist/render/GeometryBuilder.d.ts.map +1 -1
- package/dist/render/GeometryBuilder.js +2 -1
- package/dist/render/GeometryBuilder.js.map +1 -1
- package/dist/render/S3MViewer.d.ts +159 -5
- package/dist/render/S3MViewer.d.ts.map +1 -1
- package/dist/render/S3MViewer.js +331 -13
- package/dist/render/S3MViewer.js.map +1 -1
- package/dist/render/StyleMaterial.d.ts +10 -1
- package/dist/render/StyleMaterial.d.ts.map +1 -1
- package/dist/render/StyleMaterial.js +9 -1
- package/dist/render/StyleMaterial.js.map +1 -1
- package/dist/render/TextureFactory.d.ts +23 -1
- package/dist/render/TextureFactory.d.ts.map +1 -1
- package/dist/render/TextureFactory.js +32 -8
- package/dist/render/TextureFactory.js.map +1 -1
- package/dist/render/analysis/DepthPass.d.ts +78 -0
- package/dist/render/analysis/DepthPass.d.ts.map +1 -0
- package/dist/render/analysis/DepthPass.js +209 -0
- package/dist/render/analysis/DepthPass.js.map +1 -0
- package/dist/render/viewer/LightRig.d.ts +21 -7
- package/dist/render/viewer/LightRig.d.ts.map +1 -1
- package/dist/render/viewer/LightRig.js +11 -13
- package/dist/render/viewer/LightRig.js.map +1 -1
- package/dist/render/viewer/PickService.d.ts +15 -0
- package/dist/render/viewer/PickService.d.ts.map +1 -1
- package/dist/render/viewer/PickService.js +41 -0
- package/dist/render/viewer/PickService.js.map +1 -1
- package/dist/render/viewer/types.d.ts +12 -0
- package/dist/render/viewer/types.d.ts.map +1 -1
- package/dist/render/viewer/types.js.map +1 -1
- package/dist/tileset/S3MTileset.d.ts +19 -0
- package/dist/tileset/S3MTileset.d.ts.map +1 -1
- package/dist/tileset/S3MTileset.js +16 -0
- package/dist/tileset/S3MTileset.js.map +1 -1
- package/docs/API.md +124 -3
- package/package.json +1 -1
- package/src/analysis/clipping.ts +135 -0
- package/src/analysis/depth.ts +126 -0
- package/src/analysis/index.ts +47 -0
- package/src/analysis/lineOfSight.ts +110 -0
- package/src/analysis/measure.ts +119 -0
- package/src/analysis/skyline.ts +125 -0
- package/src/analysis/viewshed.ts +160 -0
- package/src/index.ts +5 -0
- package/src/render/DatasetManager.ts +21 -0
- package/src/render/GeometryBuilder.ts +13 -1
- package/src/render/S3MViewer.ts +401 -14
- package/src/render/StyleMaterial.ts +16 -2
- package/src/render/TextureFactory.ts +50 -8
- package/src/render/analysis/DepthPass.ts +278 -0
- package/src/render/viewer/LightRig.ts +23 -13
- package/src/render/viewer/PickService.ts +47 -0
- package/src/render/viewer/types.ts +12 -0
- package/src/tileset/S3MTileset.ts +24 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"S3MViewer.d.ts","sourceRoot":"","sources":["../../src/render/S3MViewer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"S3MViewer.d.ts","sourceRoot":"","sources":["../../src/render/S3MViewer.ts"],"names":[],"mappings":"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"}
|
package/dist/render/S3MViewer.js
CHANGED
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
import * as THREE from 'three';
|
|
24
24
|
import { usableGeoBounds } from '../tileset/S3MTileset.js';
|
|
25
25
|
import { setSplatViewport } from './GeometryBuilder.js';
|
|
26
|
-
import { setMaxAnisotropy, setCompressedTexturesSupported, setTextureOffThreadDecode, setMaxTextureSize as setTextureSizeCap } from './TextureFactory.js';
|
|
27
|
-
import { getMaterialQuality, normalizeMaterialQuality } from './StyleMaterial.js';
|
|
26
|
+
import { setMaxAnisotropy, setCompressedTexturesSupported, setTextureOffThreadDecode, setMaxTextureSize as setTextureSizeCap, applyAnisotropyCap } from './TextureFactory.js';
|
|
27
|
+
import { getMaterialQuality, normalizeMaterialQuality, getColorPipeline, normalizeColorPipeline } from './StyleMaterial.js';
|
|
28
28
|
import { LightRig } from './viewer/LightRig.js';
|
|
29
29
|
import { HeightIndex } from './viewer/HeightIndex.js';
|
|
30
30
|
import { SplatLayer } from './viewer/SplatLayer.js';
|
|
@@ -36,10 +36,14 @@ import { STYLE, STYLE_LABELS, SELECT_MODE, DEFAULT_STYLE, createSharedUniforms,
|
|
|
36
36
|
import { applyPointCloudStyle, isOwnedPointCloudMaterial } from './PointCloudMaterial.js';
|
|
37
37
|
import { Picker } from './Picker.js';
|
|
38
38
|
import { Animator } from '../anim/Animator.js';
|
|
39
|
+
import { buildClipPlanes, lineOfSight as computeLineOfSight, measureSegment, polygonArea, polygonAreaHorizontal, polygonPerimeter, polylineLength, polylineLengthHorizontal, } from '../analysis/index.js';
|
|
40
|
+
import { skylineFromDepth } from '../analysis/skyline.js';
|
|
41
|
+
import { computeViewshed, makeCubeDistanceSampler } from '../analysis/viewshed.js';
|
|
42
|
+
import { captureRadialCube, captureSkylineDepth } from './analysis/DepthPass.js';
|
|
39
43
|
import { Path } from '../anim/Path.js';
|
|
40
44
|
import { GPUPathManager } from './GPUPathManager.js';
|
|
41
45
|
import { AttributeQuery } from '../core/AttributeQuery.js';
|
|
42
|
-
import { lngLatFromWorld } from './GeoAdapter.js';
|
|
46
|
+
import { lngLatFromWorld, worldFromLngLat } from './GeoAdapter.js';
|
|
43
47
|
import { DatasetManager, } from './DatasetManager.js';
|
|
44
48
|
import { FeatureStyleManager, extractEulerAngles, } from './FeatureStyleManager.js';
|
|
45
49
|
import { GroundManager, } from './GroundManager.js';
|
|
@@ -91,6 +95,17 @@ const STYLE_SCALAR_KEYS = [
|
|
|
91
95
|
'edgeHullWidth',
|
|
92
96
|
'outlineWidth',
|
|
93
97
|
];
|
|
98
|
+
/**
|
|
99
|
+
* 标量样式键在「用户还没设过」时的动画起点。
|
|
100
|
+
*
|
|
101
|
+
* 只对 `metalness` / `roughness` 有意义:它们的 uniform 默认是 -1(不覆盖,保持数据
|
|
102
|
+
* 自身的值),从 -1 插值没意义 —— 取数据侧常见值当起点,过渡才不会先跳到 0。
|
|
103
|
+
* 其余键缺省仍是 0(与旧行为一致)。
|
|
104
|
+
*/
|
|
105
|
+
const SCALAR_ANIM_START = {
|
|
106
|
+
metalness: 0, // S3M 数据的 metalness 恒为 0
|
|
107
|
+
roughness: 0.95, // shininess 映射后的常见值,见 GeometryBuilder 的 roughness
|
|
108
|
+
};
|
|
94
109
|
/** 能逐帧插值的颜色键(在线性空间插值,与 shader 消费端一致) */
|
|
95
110
|
const STYLE_COLOR_KEYS = ['colorA', 'colorB', 'colorC', 'selectColor', 'edgeColor'];
|
|
96
111
|
/** 可动画的单体属性 */
|
|
@@ -137,6 +152,19 @@ export class S3MViewer {
|
|
|
137
152
|
* 传了值就只认自己,多图层同页各用各的,互不覆盖。
|
|
138
153
|
*/
|
|
139
154
|
_materialQuality;
|
|
155
|
+
/**
|
|
156
|
+
* 本图层的颜色管线。
|
|
157
|
+
*
|
|
158
|
+
* `undefined` = 没指定,跟随模块级默认(`getColorPipeline()`)。
|
|
159
|
+
* 与 materialQuality 同理:传了值就只认自己,同页多图层互不污染 —— 这条尤其重要,
|
|
160
|
+
* 因为 `lightingPreset: 'supermap'` 会同时改管线、纹理解码方式与各向异性,
|
|
161
|
+
* 以前是三个模块级全局一起被改写。
|
|
162
|
+
*/
|
|
163
|
+
_colorPipeline;
|
|
164
|
+
/** fade-through 编排的代次:中途再切一次,旧编排作废(与 setMode 同一套) */
|
|
165
|
+
_pipelineGen = 0;
|
|
166
|
+
/** 当前裁剪配置;renderer 就绪前后都要能设,所以单独存一份(见 `_applyClipping`) */
|
|
167
|
+
_clip = null;
|
|
140
168
|
/** 单体样式、专题着色与状态纹理管理器 */
|
|
141
169
|
_featureStyleManager;
|
|
142
170
|
/** GPU 路径动画管理器 */
|
|
@@ -255,7 +283,12 @@ export class S3MViewer {
|
|
|
255
283
|
// 图层自身是否半透明:全局透明度改走 uOpacity 后,材质 opacity 不再代表它
|
|
256
284
|
() => this._opacityTransparent);
|
|
257
285
|
this.uniforms = createSharedUniforms();
|
|
258
|
-
//
|
|
286
|
+
// 图层 profile 先落位(显式传了就只认自己),再把 LightRig 挂上来 ——
|
|
287
|
+
// 它构造时会按 lightingPreset 覆盖一次管线,这一步走的是图层级通道,
|
|
288
|
+
// 不再去改模块级全局(以前三个全局一起被改写,同页多图层互相污染)。
|
|
289
|
+
this._colorPipeline = normalizeColorPipeline(options.colorPipeline);
|
|
290
|
+
this._applyRenderProfile({}, true);
|
|
291
|
+
// 光源状态在这里就位:LightRig 构造时会按 lightingPreset 切图层颜色管线,
|
|
259
292
|
// 挂进场景要等 scene 建好(构造函数上面已经建了)。
|
|
260
293
|
this._lights = new LightRig({
|
|
261
294
|
scene: () => this.scene,
|
|
@@ -266,6 +299,8 @@ export class S3MViewer {
|
|
|
266
299
|
// 走公共 triggerRepaint 而不是 _requestRepaint:宿主 / 单测会覆盖前者来观察重绘,
|
|
267
300
|
// 绕过它会让「有没有触发重绘」这件事失去观测点
|
|
268
301
|
repaint: () => this.triggerRepaint(),
|
|
302
|
+
// 构造期(initial)只记状态:那时还没有材质可重建、没有数据集可同步
|
|
303
|
+
applyRenderProfile: (p, initial) => this._applyRenderProfile(p, initial),
|
|
269
304
|
});
|
|
270
305
|
this._lights.addToScene();
|
|
271
306
|
this._heights = new HeightIndex(this.uniforms);
|
|
@@ -386,6 +421,8 @@ export class S3MViewer {
|
|
|
386
421
|
this.renderer = this._createRenderer(canvas, gl);
|
|
387
422
|
setMaxAnisotropy(this.renderer.capabilities.getMaxAnisotropy(), this.options.anisotropyCap ?? Infinity);
|
|
388
423
|
this._syncTextureCapabilities(gl);
|
|
424
|
+
// 裁剪是构造期就能设的(还没 mount 时 `_applyClipping` 会先跳过),这里补挂一次
|
|
425
|
+
this._applyClipping();
|
|
389
426
|
this.scene = new THREE.Scene();
|
|
390
427
|
this.scene.add(this.groundManager.group);
|
|
391
428
|
this._addLights();
|
|
@@ -424,6 +461,8 @@ export class S3MViewer {
|
|
|
424
461
|
this.renderer = this._createRenderer(this.canvas, gl);
|
|
425
462
|
setMaxAnisotropy(this.renderer.capabilities.getMaxAnisotropy(), this.options.anisotropyCap ?? Infinity);
|
|
426
463
|
this._syncTextureCapabilities(gl);
|
|
464
|
+
// 新 renderer 的 clippingPlanes 是空的,裁剪状态要重新挂上去
|
|
465
|
+
this._applyClipping();
|
|
427
466
|
this.picker?.dispose();
|
|
428
467
|
this.picker = new Picker(this.renderer);
|
|
429
468
|
// GPU 描边的 RT / 材质绑定在旧上下文上,整体丢弃,下一帧按需重建
|
|
@@ -1560,7 +1599,11 @@ export class S3MViewer {
|
|
|
1560
1599
|
this.animator.register(`style.${key}`, {
|
|
1561
1600
|
dim: 1,
|
|
1562
1601
|
read: (out) => {
|
|
1563
|
-
|
|
1602
|
+
// 金属度 / 粗糙度没设过时 uniform 是 -1(= 不覆盖,保持数据自身的值),
|
|
1603
|
+
// 动画起点不能取 0:那会让 roughness 从 0.95 先跳到 0 再爬回去。
|
|
1604
|
+
// 这里给的是数据侧的常见值(S3M 的 shininess 映射后 ≈0.95、metalness 恒 0),
|
|
1605
|
+
// 过渡起点因此是连续的。
|
|
1606
|
+
out[0] = Number(this.style[key] ?? SCALAR_ANIM_START[key] ?? 0);
|
|
1564
1607
|
},
|
|
1565
1608
|
write: (v) => {
|
|
1566
1609
|
this.style[key] = v[0];
|
|
@@ -1821,6 +1864,106 @@ export class S3MViewer {
|
|
|
1821
1864
|
get materialQuality() {
|
|
1822
1865
|
return this._materialQuality ?? getMaterialQuality();
|
|
1823
1866
|
}
|
|
1867
|
+
/**
|
|
1868
|
+
* 运行时切换**本图层**的颜色管线(`'linear'` | `'direct'`)。
|
|
1869
|
+
*
|
|
1870
|
+
* `'direct'` = 官方 iClient3D 的 sRGB 直乘管线(配合纹理解码关 sRGB),
|
|
1871
|
+
* 见 `lightingPreset: 'supermap'`。切换牵扯三样东西:材质宏(换 program)、
|
|
1872
|
+
* 纹理 colorSpace(重传,**不重新下载瓦片**)、以及各向异性档位。
|
|
1873
|
+
*
|
|
1874
|
+
* 给 `duration > 0` 时走 fade-through:压暗 → 在同一帧回调里换管线 → 亮回来。
|
|
1875
|
+
* 逐像素混合做不到干净 —— 两条管线的差异有一部分在采样端(硬件 sRGB 解码 vs
|
|
1876
|
+
* 原始字节),要混合就得让贴图恒为原始字节并在片元里手动解码,那会改掉默认路径。
|
|
1877
|
+
*/
|
|
1878
|
+
setColorPipeline(q, opts = {}) {
|
|
1879
|
+
const next = normalizeColorPipeline(q) ?? 'linear';
|
|
1880
|
+
if (next === this.colorPipeline)
|
|
1881
|
+
return Promise.resolve();
|
|
1882
|
+
const d = Math.max(0, opts.duration ?? 0);
|
|
1883
|
+
if (d <= 0) {
|
|
1884
|
+
this._applyRenderProfile({ colorPipeline: next });
|
|
1885
|
+
return Promise.resolve();
|
|
1886
|
+
}
|
|
1887
|
+
const dim = Math.min(1, Math.max(0.05, opts.dim ?? 0.35));
|
|
1888
|
+
const gen = ++this._pipelineGen;
|
|
1889
|
+
return new Promise((resolve) => {
|
|
1890
|
+
this.animator.to('style.fade', dim, {
|
|
1891
|
+
duration: d,
|
|
1892
|
+
easing: 'easeInOutQuad',
|
|
1893
|
+
onComplete: () => {
|
|
1894
|
+
// 中途又切了一次:这次编排作废,收尾交给新的那次
|
|
1895
|
+
if (gen !== this._pipelineGen) {
|
|
1896
|
+
resolve();
|
|
1897
|
+
return;
|
|
1898
|
+
}
|
|
1899
|
+
this._applyRenderProfile({ colorPipeline: next });
|
|
1900
|
+
this.animator.to('style.fade', 1, {
|
|
1901
|
+
duration: d,
|
|
1902
|
+
easing: 'easeInOutQuad',
|
|
1903
|
+
onComplete: resolve,
|
|
1904
|
+
});
|
|
1905
|
+
},
|
|
1906
|
+
});
|
|
1907
|
+
});
|
|
1908
|
+
}
|
|
1909
|
+
/** 当前颜色管线(本图层指定了就用本图层的,否则是模块级默认) */
|
|
1910
|
+
get colorPipeline() {
|
|
1911
|
+
return this._colorPipeline ?? getColorPipeline();
|
|
1912
|
+
}
|
|
1913
|
+
/** 本图层此刻该用的纹理创建参数(图层的渲染 profile 就落在这里) */
|
|
1914
|
+
_textureOptions() {
|
|
1915
|
+
return {
|
|
1916
|
+
// direct 管线的前提是贴图字节值不解码,两者必须一起切
|
|
1917
|
+
srgbDecode: this.colorPipeline !== 'direct',
|
|
1918
|
+
maxSize: this.options.maxTextureSize ?? Infinity,
|
|
1919
|
+
anisotropyCap: this.options.anisotropyCap ?? Infinity,
|
|
1920
|
+
};
|
|
1921
|
+
}
|
|
1922
|
+
/**
|
|
1923
|
+
* 应用图层渲染 profile(颜色管线 / 各向异性上限)。
|
|
1924
|
+
*
|
|
1925
|
+
* `initial` = 构造期:只记状态并推给数据集管理器,不重建材质、不重传纹理
|
|
1926
|
+
* (那时还没有瓦片)。
|
|
1927
|
+
*/
|
|
1928
|
+
_applyRenderProfile(patch, initial = false) {
|
|
1929
|
+
const prev = this.colorPipeline;
|
|
1930
|
+
if (patch.colorPipeline !== undefined) {
|
|
1931
|
+
this._colorPipeline = normalizeColorPipeline(patch.colorPipeline) ?? 'linear';
|
|
1932
|
+
}
|
|
1933
|
+
if (patch.anisotropyCap !== undefined)
|
|
1934
|
+
this.options.anisotropyCap = patch.anisotropyCap;
|
|
1935
|
+
const textureOptions = this._textureOptions();
|
|
1936
|
+
// 之后加载的瓦片按新参数走(已建好的数据集也要跟着换)
|
|
1937
|
+
this._datasetManager.setRenderProfile({ colorPipeline: this.colorPipeline, textureOptions });
|
|
1938
|
+
if (initial)
|
|
1939
|
+
return;
|
|
1940
|
+
// 管线变了才需要换 program;只改各向异性时重建纯属浪费
|
|
1941
|
+
if (this.colorPipeline !== prev)
|
|
1942
|
+
this._rebuildStyledMaterials();
|
|
1943
|
+
this._syncCachedTextures(textureOptions);
|
|
1944
|
+
this._requestRepaint();
|
|
1945
|
+
}
|
|
1946
|
+
/**
|
|
1947
|
+
* 把纹理解码方式 / 各向异性同步到**已上传**的纹理上。
|
|
1948
|
+
*
|
|
1949
|
+
* 两者都不需要重新解码:`colorSpace` 改了 + `needsUpdate` 让 three 重传一次像素,
|
|
1950
|
+
* `anisotropy` 同理。所以切管线不用重拉瓦片,代价只有一次纹理上传。
|
|
1951
|
+
*/
|
|
1952
|
+
_syncCachedTextures(opts) {
|
|
1953
|
+
const want = opts.srgbDecode ? THREE.SRGBColorSpace : THREE.NoColorSpace;
|
|
1954
|
+
for (const entry of this.datasets.values()) {
|
|
1955
|
+
const cache = entry.tileset?.textureCache;
|
|
1956
|
+
if (!cache)
|
|
1957
|
+
continue;
|
|
1958
|
+
for (const tex of cache.values()) {
|
|
1959
|
+
if (tex.colorSpace === want)
|
|
1960
|
+
continue;
|
|
1961
|
+
tex.colorSpace = want;
|
|
1962
|
+
tex.needsUpdate = true;
|
|
1963
|
+
}
|
|
1964
|
+
applyAnisotropyCap(cache.values(), opts.anisotropyCap ?? Infinity);
|
|
1965
|
+
}
|
|
1966
|
+
}
|
|
1824
1967
|
/** 按创建参数原位重建所有 styled 材质(materialQuality 切换用) */
|
|
1825
1968
|
_rebuildStyledMaterials() {
|
|
1826
1969
|
// 逐材质 own uniform 的状态要在重建时搬过去,否则选中高亮 / 瓦片淡入会闪没
|
|
@@ -1842,9 +1985,14 @@ export class S3MViewer {
|
|
|
1842
1985
|
if (!old?.userData?.isStyled || !old.userData?.s3mOpts)
|
|
1843
1986
|
continue;
|
|
1844
1987
|
const opts = old.userData.s3mOpts;
|
|
1845
|
-
//
|
|
1846
|
-
//
|
|
1847
|
-
const fresh = createStyledMaterial({
|
|
1988
|
+
// 显式传本层档位与管线:s3mOpts 里记的是创建时的参数,可能是 undefined(跟随全局),
|
|
1989
|
+
// 重建时必须钉成本层当前值,否则「别处改了全局」会把这一层带跑。
|
|
1990
|
+
const fresh = createStyledMaterial({
|
|
1991
|
+
...opts,
|
|
1992
|
+
uniforms: this.uniforms,
|
|
1993
|
+
materialQuality: this.materialQuality,
|
|
1994
|
+
colorPipeline: this.colorPipeline,
|
|
1995
|
+
});
|
|
1848
1996
|
for (const key of PRESERVED) {
|
|
1849
1997
|
const src = old.userData[key];
|
|
1850
1998
|
const dst = fresh.userData[key];
|
|
@@ -1995,6 +2143,169 @@ export class S3MViewer {
|
|
|
1995
2143
|
getFeatureBounds(smid) {
|
|
1996
2144
|
return this._picks.getFeatureBounds(smid);
|
|
1997
2145
|
}
|
|
2146
|
+
/* -------------------------------------------------------------- 三维空间分析 */
|
|
2147
|
+
/**
|
|
2148
|
+
* 经纬度 + 高程 → 场景 ENU 米制坐标。
|
|
2149
|
+
*
|
|
2150
|
+
* 场景锚点可能还没就绪(没加数据集),此时按世界原点处理 —— 量算 API 会因此
|
|
2151
|
+
* 给出「以原点为基准」的结果,但不会抛错。真实使用里锚点在 addDataset 之后必然存在。
|
|
2152
|
+
*/
|
|
2153
|
+
_sceneFromLngLat(p) {
|
|
2154
|
+
const anchor = this.sceneAnchor;
|
|
2155
|
+
if (!anchor)
|
|
2156
|
+
return [0, 0, 0];
|
|
2157
|
+
const s = anchor.meterInMercator;
|
|
2158
|
+
const w = worldFromLngLat(this.geo, p.lng, p.lat, p.altitude);
|
|
2159
|
+
// 注意 y 取反:three 的 y 向上,墨卡托 y 向下(与 PickService.pickPosition 互逆)
|
|
2160
|
+
return [(w.x - anchor.x) / s, -(w.y - anchor.y) / s, p.altitude - (anchor.altitude ?? 0)];
|
|
2161
|
+
}
|
|
2162
|
+
/**
|
|
2163
|
+
* 经纬度 + 绝对高程 → 场景 ENU 米制坐标。
|
|
2164
|
+
*
|
|
2165
|
+
* 外围要做「分析代理几何」(底图建筑挤出)、或者在 three 里画自定义标注时,
|
|
2166
|
+
* 都得先把经纬度落到这个坐标系里 —— 场景的 ENU 原点在 `sceneAnchor`,
|
|
2167
|
+
* 不是经纬度,所以必须走这个换算。
|
|
2168
|
+
*/
|
|
2169
|
+
lngLatToPoint(p) {
|
|
2170
|
+
return this._sceneFromLngLat(p);
|
|
2171
|
+
}
|
|
2172
|
+
/** 场景 ENU 米制坐标 → 经纬度 + 绝对高程(`pointToLngLat` 的逆) */
|
|
2173
|
+
pointToLngLat(v) {
|
|
2174
|
+
return this._lngLatFromScene(v);
|
|
2175
|
+
}
|
|
2176
|
+
/** 场景 ENU 米制坐标 → 经纬度 + 绝对高程 */
|
|
2177
|
+
_lngLatFromScene(v) {
|
|
2178
|
+
const anchor = this.sceneAnchor;
|
|
2179
|
+
if (!anchor)
|
|
2180
|
+
return { lng: 0, lat: 0, altitude: v[2] };
|
|
2181
|
+
const s = anchor.meterInMercator;
|
|
2182
|
+
const [lng, lat] = lngLatFromWorld(this.geo, v[0] * s + anchor.x, -v[1] * s + anchor.y);
|
|
2183
|
+
return { lng, lat, altitude: v[2] + (anchor.altitude ?? 0) };
|
|
2184
|
+
}
|
|
2185
|
+
/**
|
|
2186
|
+
* 两点量算:三维距离 / 水平距离 / 高差。
|
|
2187
|
+
*
|
|
2188
|
+
* 输入是经纬度 + 绝对高程(`pickPosition` 的返回值直接能用),
|
|
2189
|
+
* 内部换算到 ENU 米再算,所以不会受投影单位影响。
|
|
2190
|
+
*/
|
|
2191
|
+
measureDistance(a, b) {
|
|
2192
|
+
return measureSegment(this._sceneFromLngLat(a), this._sceneFromLngLat(b));
|
|
2193
|
+
}
|
|
2194
|
+
/** 折线长度(三维 + 水平投影两套口径) */
|
|
2195
|
+
measurePolyline(points) {
|
|
2196
|
+
const scene = points.map((p) => this._sceneFromLngLat(p));
|
|
2197
|
+
return { length3D: polylineLength(scene), lengthHorizontal: polylineLengthHorizontal(scene) };
|
|
2198
|
+
}
|
|
2199
|
+
/**
|
|
2200
|
+
* 多边形量算:坡面真实面积 / 水平投影面积 / 周长。
|
|
2201
|
+
*
|
|
2202
|
+
* 建筑面积、用地面积按 `areaHorizontal` 算;坡面覆盖面积按 `area3D`。
|
|
2203
|
+
*/
|
|
2204
|
+
measurePolygon(points) {
|
|
2205
|
+
const scene = points.map((p) => this._sceneFromLngLat(p));
|
|
2206
|
+
return {
|
|
2207
|
+
area3D: polygonArea(scene),
|
|
2208
|
+
areaHorizontal: polygonAreaHorizontal(scene),
|
|
2209
|
+
perimeter: polygonPerimeter(scene),
|
|
2210
|
+
};
|
|
2211
|
+
}
|
|
2212
|
+
/**
|
|
2213
|
+
* 通视分析:两点之间是否被已加载的 S3M 几何挡住。
|
|
2214
|
+
*
|
|
2215
|
+
* 走 CPU 射线求交(`Raycaster` 打全部 pickable mesh),几十万面量级是几十毫秒,
|
|
2216
|
+
* 适合点击式查询;要拖拽时逐帧刷新,得等深度图版本的批量采样。
|
|
2217
|
+
*
|
|
2218
|
+
* 注意范围:**只认 S3M 场景里的几何**。MapLibre 底图地形与 MVT 建筑不在这个场景里,
|
|
2219
|
+
* 它们不参与遮挡(见 `docs/API.md` 的「分析范围」)。
|
|
2220
|
+
*/
|
|
2221
|
+
lineOfSight(a, b, opts = {}) {
|
|
2222
|
+
const from = this._sceneFromLngLat(a);
|
|
2223
|
+
const to = this._sceneFromLngLat(b);
|
|
2224
|
+
return computeLineOfSight(from, to, (origin, dir, maxDistance) => {
|
|
2225
|
+
const hit = this._picks.raycastDistance(origin, dir, maxDistance);
|
|
2226
|
+
if (!hit)
|
|
2227
|
+
return null;
|
|
2228
|
+
return { distance: hit.distance, point: hit.point };
|
|
2229
|
+
}, opts);
|
|
2230
|
+
}
|
|
2231
|
+
/**
|
|
2232
|
+
* 裁剪 / 剖切(平面、Box、十字)。
|
|
2233
|
+
*
|
|
2234
|
+
* 平面列表挂在**本图层的 renderer** 上(每个 `S3MLayer` 一个 `WebGLRenderer`),
|
|
2235
|
+
* 所以天然是图层级:同页别的图层不受影响。传 `null` 取消裁剪。
|
|
2236
|
+
*
|
|
2237
|
+
* 已知边界:只做「切掉」,不做**封口**——剖开后看到的是空壳/背面;
|
|
2238
|
+
* 凹多边形裁剪需要多组半空间并集,three 的 `clippingPlanes` 表达不了(只能凸)。
|
|
2239
|
+
*/
|
|
2240
|
+
setClipping(opt) {
|
|
2241
|
+
this._clip = opt;
|
|
2242
|
+
this._applyClipping();
|
|
2243
|
+
this._requestRepaint();
|
|
2244
|
+
}
|
|
2245
|
+
/** 当前裁剪配置(`null` = 未裁剪) */
|
|
2246
|
+
get clipping() {
|
|
2247
|
+
return this._clip;
|
|
2248
|
+
}
|
|
2249
|
+
_applyClipping() {
|
|
2250
|
+
const r = this.renderer;
|
|
2251
|
+
if (!r)
|
|
2252
|
+
return; // mount 前先记着,`_createRenderer` 之后会补一次
|
|
2253
|
+
if (!this._clip) {
|
|
2254
|
+
r.clippingPlanes = [];
|
|
2255
|
+
return;
|
|
2256
|
+
}
|
|
2257
|
+
r.clippingPlanes = buildClipPlanes(this._clip).map((p) => new THREE.Plane(new THREE.Vector3(p.normal[0], p.normal[1], p.normal[2]), p.constant));
|
|
2258
|
+
}
|
|
2259
|
+
/** 分析用的离屏采集上下文(renderer / scene / camera 都可能在 mount 前为空) */
|
|
2260
|
+
_depthCtx() {
|
|
2261
|
+
return {
|
|
2262
|
+
renderer: () => this.renderer,
|
|
2263
|
+
scene: () => this.scene,
|
|
2264
|
+
camera: () => this.camera,
|
|
2265
|
+
};
|
|
2266
|
+
}
|
|
2267
|
+
/**
|
|
2268
|
+
* 天际线分析:用当前视角渲染一张深度图,按列抽出「方位角 → 仰角」曲线。
|
|
2269
|
+
*
|
|
2270
|
+
* 一次调用 = 一趟额外渲染 + 一次全图回读,**不要每帧调**。
|
|
2271
|
+
* 典型用法是相机停下来(`moveend`)后算一次。
|
|
2272
|
+
*
|
|
2273
|
+
* @param opts.width 采集分辨率(默认 640)。精度由它决定:
|
|
2274
|
+
* 640 宽 ≈ 0.56°/列,1280 宽 ≈ 0.28°/列。
|
|
2275
|
+
*/
|
|
2276
|
+
skyline(opts = {}) {
|
|
2277
|
+
const cap = captureSkylineDepth(this._depthCtx(), opts.width ?? 640, opts.height ?? 360, opts.include);
|
|
2278
|
+
if (!cap)
|
|
2279
|
+
return null;
|
|
2280
|
+
return skylineFromDepth({
|
|
2281
|
+
rgba: cap.rgba,
|
|
2282
|
+
width: cap.width,
|
|
2283
|
+
height: cap.height,
|
|
2284
|
+
inverseViewProj: cap.inverseViewProj,
|
|
2285
|
+
cameraPos: cap.cameraPos,
|
|
2286
|
+
step: opts.step,
|
|
2287
|
+
});
|
|
2288
|
+
}
|
|
2289
|
+
/**
|
|
2290
|
+
* 360° 可视域(地面栅格版):从观察点朝 6 个方向各渲染一次深度,
|
|
2291
|
+
* 再在 CPU 上对地面网格逐格判定可见性。
|
|
2292
|
+
*
|
|
2293
|
+
* 一次调用 = 6 趟额外渲染 + 6 次回读,成本明显高于天际线,
|
|
2294
|
+
* 只在点击/松手时算。返回的 `raster` 可以直接当贴图画在地面上。
|
|
2295
|
+
*/
|
|
2296
|
+
viewshed(opts) {
|
|
2297
|
+
const eye = opts.eyeHeight ?? 1.7;
|
|
2298
|
+
const origin = this._sceneFromLngLat({ ...opts.origin, altitude: opts.origin.altitude + eye });
|
|
2299
|
+
const size = opts.size ?? 128;
|
|
2300
|
+
const faces = captureRadialCube(this._depthCtx(), origin, size, opts.radius, opts.include);
|
|
2301
|
+
if (!faces)
|
|
2302
|
+
return null;
|
|
2303
|
+
return computeViewshed(origin, makeCubeDistanceSampler(faces, size, opts.radius), {
|
|
2304
|
+
radius: opts.radius,
|
|
2305
|
+
grid: opts.grid,
|
|
2306
|
+
groundZ: 0,
|
|
2307
|
+
});
|
|
2308
|
+
}
|
|
1998
2309
|
/** @internal 见 viewer/PickService.ts */
|
|
1999
2310
|
_intersectMeshAtRay(mesh, ray, instanceIndex) {
|
|
2000
2311
|
return this._picks.intersectMeshAtRay(mesh, ray, instanceIndex);
|
|
@@ -2179,16 +2490,19 @@ export class S3MViewer {
|
|
|
2179
2490
|
return this.options.anisotropyCap ?? Infinity;
|
|
2180
2491
|
}
|
|
2181
2492
|
/**
|
|
2182
|
-
*
|
|
2183
|
-
*
|
|
2184
|
-
*
|
|
2493
|
+
* 调整本图层的各向异性过滤上限(默认 Infinity = 取 GPU 最大值)。
|
|
2494
|
+
*
|
|
2495
|
+
* 与 0.4.22 之前不同:已上传的纹理**会立刻跟着变**(改 sampling 参数 + 重传,
|
|
2496
|
+
* 不需要重新解码,也不需要重载瓦片),所以切 `lightingPreset: 'supermap'` 时
|
|
2497
|
+
* 立面清晰度是当场变的,不再等新瓦片。
|
|
2185
2498
|
*/
|
|
2186
2499
|
setAnisotropyCap(cap) {
|
|
2187
2500
|
const next = Number.isFinite(cap) && cap > 0 ? Math.max(1, cap) : Infinity;
|
|
2188
2501
|
this.options.anisotropyCap = next;
|
|
2502
|
+
// 同步模块级默认:直接调 createTexture / buildTileObjects 的老用法仍读它
|
|
2189
2503
|
const gpuMax = this.renderer?.capabilities.getMaxAnisotropy?.() ?? 1;
|
|
2190
2504
|
setMaxAnisotropy(gpuMax, next);
|
|
2191
|
-
this.
|
|
2505
|
+
this._applyRenderProfile({ anisotropyCap: next });
|
|
2192
2506
|
}
|
|
2193
2507
|
/** 当前纹理长边像素上限。Infinity = 不限制 */
|
|
2194
2508
|
get maxTextureSize() {
|
|
@@ -2197,12 +2511,16 @@ export class S3MViewer {
|
|
|
2197
2511
|
/**
|
|
2198
2512
|
* 调整纹理长边像素上限(默认 Infinity = 不限制)。
|
|
2199
2513
|
* 只影响之后解码的纹理;非图集的 RGBA / WebP 产物按 2× 减半逼近上限。
|
|
2200
|
-
*
|
|
2514
|
+
*
|
|
2515
|
+
* 图层级:只改本层,同页其它图层不受影响(同时同步模块级默认,照顾直接调
|
|
2516
|
+
* `createTexture` 的老用法)。已解码的纹理不会重解 —— 那是另一件事。
|
|
2201
2517
|
*/
|
|
2202
2518
|
setMaxTextureSize(n) {
|
|
2203
2519
|
const next = Number.isFinite(n) && n >= 1 ? n : Infinity;
|
|
2204
2520
|
this.options.maxTextureSize = next;
|
|
2205
2521
|
setTextureSizeCap(next);
|
|
2522
|
+
// 只推给数据集,不动材质也不重传纹理(尺寸上限只影响「之后解码」的纹理)
|
|
2523
|
+
this._datasetManager.setRenderProfile({ textureOptions: this._textureOptions() });
|
|
2206
2524
|
this._requestRepaint();
|
|
2207
2525
|
}
|
|
2208
2526
|
/**
|