From fed4277a7c812ec1fd672a50a479e2b40ff6f2f7 Mon Sep 17 00:00:00 2001 From: ErSan Date: Fri, 14 Nov 2025 23:56:30 +0800 Subject: [PATCH] =?UTF-8?q?fix(SDK):=20=E4=BF=AE=E5=A4=8D=E6=B5=8B?= =?UTF-8?q?=E9=87=8F=E4=B8=8D=E6=98=BE=E7=A4=BA=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/sdk/lib/core/tools/Measure.ts | 7 +++++-- packages/sdk/lib/core/viewer/Viewer.ts | 4 +--- packages/sdk/public/static/images/logo.png | Bin 0 -> 2751 bytes 3 files changed, 6 insertions(+), 5 deletions(-) create mode 100644 packages/sdk/public/static/images/logo.png diff --git a/packages/sdk/lib/core/tools/Measure.ts b/packages/sdk/lib/core/tools/Measure.ts index 9bc4af7..d480b2d 100644 --- a/packages/sdk/lib/core/tools/Measure.ts +++ b/packages/sdk/lib/core/tools/Measure.ts @@ -39,6 +39,8 @@ class Measure extends THREE.EventDispatcher{ depthWrite: false, depthTest: false }); + // 标记点图片 + static MARKER_TEXTURE = new URL(import.meta.env.BASE_URL + 'static/images/logo.png', import.meta.url).href; static MAX_DISTANCE = 500; //当相交物体的距离太远时,忽略它 static OBJ_NAME = "object_for_measure"; static LABEL_NAME = "label_for_measure"; @@ -69,12 +71,13 @@ class Measure extends THREE.EventDispatcher{ super(); this.mode = mode; - this.scene = viewer.sceneHelpers; + this.scene = viewer.scene; this.viewer = viewer; // 初始化group this.measureGroup = new THREE.Group(); this.measureGroup.name = `measure_group`; + this.measureGroup.ignore = true; this.group = new THREE.Group(); @@ -239,7 +242,7 @@ class Measure extends THREE.EventDispatcher{ * 初始化点标记材料 */ initPointMarkerMaterial() { - const markerTexture = new THREE.TextureLoader().load("/static/images/logo/logo.png"); + const markerTexture = new THREE.TextureLoader().load(Measure.MARKER_TEXTURE); this.spriteMaterial = new THREE.SpriteMaterial({ map: markerTexture, depthTest: false, // 深度测试 diff --git a/packages/sdk/lib/core/viewer/Viewer.ts b/packages/sdk/lib/core/viewer/Viewer.ts index 023632a..41cf0f5 100644 --- a/packages/sdk/lib/core/viewer/Viewer.ts +++ b/packages/sdk/lib/core/viewer/Viewer.ts @@ -1103,9 +1103,7 @@ export default class Viewer extends THREE.EventDispatcher { if (this.options.edit?.enabled) this.renderer.render(this.sceneHelpers, this.camera); } - // css2d 在sceneHelpers内 - this.css2DRenderer.render(this.sceneHelpers, App.viewportCamera); - + this.css2DRenderer.render(this.scene, App.viewportCamera); this.css3DRenderer.render(this.scene, App.viewportCamera); this.modules.viewHelper.render(); diff --git a/packages/sdk/public/static/images/logo.png b/packages/sdk/public/static/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0938246c8e0342807dd01904e19284d0f6a69164 GIT binary patch literal 2751 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