diff --git a/src/components/engine/index.ts b/src/components/engine/index.ts index 2512cd7..5dd903c 100644 --- a/src/components/engine/index.ts +++ b/src/components/engine/index.ts @@ -819,6 +819,17 @@ export class Engine implements IBimComponent { } } + /** + * 取消半透明 + */ + public unTranslucentModel(): void { + if (!this._isInitialized || !this.engine?.modelToolModule) { + console.warn('[Engine] Cannot cancel translucent: engine not initialized.'); + return; + } + this.engine.modelToolModule.unTranslucentModel(); + } + /** * 隔离选中构件(隐藏其他) */ diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index 0540037..75edcb9 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -37,6 +37,7 @@ export const enUS: TranslationDictionary = { componentDetail: 'Component Detail', hideSelected: 'Hide Selected', transparentSelected: 'Transparent Selected', + cancelTranslucent: 'Cancel Translucent', isolateSelected: 'Isolate Selected', hideOthers: 'Hide Others', transparentOthers: 'Transparent Others', diff --git a/src/locales/types.ts b/src/locales/types.ts index 34d9644..030add8 100644 --- a/src/locales/types.ts +++ b/src/locales/types.ts @@ -56,6 +56,7 @@ export interface TranslationDictionary { componentDetail: string; hideSelected: string; transparentSelected: string; + cancelTranslucent: string; isolateSelected: string; hideOthers: string; transparentOthers: string; diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 2f61d7c..1df1916 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -37,6 +37,7 @@ export const zhCN: TranslationDictionary = { componentDetail: '构件详情', hideSelected: '隐藏选中构件', transparentSelected: '半透明选中构件', + cancelTranslucent: '取消半透明', isolateSelected: '隔离选中构件', hideOthers: '其他构件隐藏', transparentOthers: '其他构件半透明', diff --git a/src/managers/engine-manager.ts b/src/managers/engine-manager.ts index 0c7a1d2..1ac3762 100644 --- a/src/managers/engine-manager.ts +++ b/src/managers/engine-manager.ts @@ -93,12 +93,24 @@ export class EngineManager extends BaseManager { } }); - // 4. 隔离选中构件(带子菜单) + // 4. 取消半透明 + items.push({ + id: 'cancelTranslucent', + label: 'menu.cancelTranslucent', + group: 'component', + order: 4, + onClick: () => { + this.unTranslucentModel(); + this.rightKey?.hide(); + } + }); + + // 5. 隔离选中构件(带子菜单) items.push({ id: 'isolateSelected', label: 'menu.isolateSelected', group: 'component', - order: 4, + order: 5, divider: true, children: [ { @@ -120,12 +132,12 @@ export class EngineManager extends BaseManager { ] }); - // 5. 快速选择(带子菜单) + // 6. 快速选择(带子菜单) items.push({ id: 'quickSelect', label: 'menu.quickSelect', group: 'component', - order: 5, + order: 6, children: [ { id: 'selectSameType', @@ -154,12 +166,12 @@ export class EngineManager extends BaseManager { ] }); - // 6. 剖切盒适应 + // 7. 剖切盒适应 items.push({ id: 'fitSectionBox', label: 'menu.fitSectionBox', group: 'component', - order: 6, + order: 7, onClick: () => { this.fitSectionBoxToModel(); this.rightKey?.hide(); @@ -167,12 +179,12 @@ export class EngineManager extends BaseManager { }); } - // 7. 显示全部(始终显示) + // 8. 显示全部(始终显示) items.push({ id: 'showAll', label: 'menu.showAll', group: 'component', - order: 7, + order: 8, onClick: () => { this.showAllModels(); this.rightKey?.hide(); @@ -541,6 +553,13 @@ export class EngineManager extends BaseManager { this.engineInstance?.translucentSelectedModels(); } + /** + * 取消半透明 + */ + public unTranslucentModel(): void { + this.engineInstance?.unTranslucentModel(); + } + /** * 隔离选中构件(隐藏其他) */