[英]Cannot remove default buttons from autodesk-forge viewer panel (Autodesk.Viewing.Private.GuiViewer3D)
我想删除度量、文本格式和属性按钮。 见图片。 我只能删除“toolbar-settingsTool”,但不能删除以上三个按钮。
onExtensionLoaded = (e) => {
if (e.extensionId === 'Autodesk.DefaultTools.NavTools') {
// Remove settings tools
const settingsTools = viewer.toolbar.getControl('settingsTools');
settingsTools.removeControl('toolbar-settingsTool');
//settingsTools.removeControl('toolbar-fullscreenTool');
// Remove settings tools
const navTools = viewer.toolbar.getControl('navTools');
navTools.removeControl('toolbar-propertiesTool');
// Remove model tools
const modelTools = viewer.toolbar.getControl('modelTools');
modelTools.removeControl('toolbar-modelStructureTool');
}
}
viewer.addEventListener( Autodesk.Viewing.EXTENSION_LOADED_EVENT, this.onExtensionLoaded);
你能帮我么? 谢谢你。
这是我的代码。
一些工具栏在加载相应的扩展时被初始化,例如测量('Autodesk.Measure')。 如果您仍然需要在工作流中使用这些功能,但只需将按钮放到自己的工具栏上,或者没有按钮,则需要检查相应的扩展是否支持仅删除按钮。 例如,在“Autodesk.Measure”扩展中,它具有方法measureToolbarButton.removeFromParent ,通过该方法,默认按钮将被删除,而测量功能仍然存在。 代码可以是:
ext = NOP_VIEWER.getExtension('Autodesk.Measure')
ext.measurementToolbarButton.removeFromParent()
当您需要通过自己的按钮切换到测量模式时,调用以下方法:
NOP_VIEWER.setActiveNavigationTool('measure')
如果您根本不需要这些功能,只需卸载扩展程序。 默认按钮也将被删除。
谢谢梁晓东。 这样可行。 我能够使用以下代码删除度量和属性图标:
onExtensionLoaded = (e) => {
// Remove "Settings" icon
if (e.extensionId === 'Autodesk.DefaultTools.NavTools') {
// Remove settings tools
const settingsTools = viewer.toolbar.getControl('settingsTools');
settingsTools.removeControl('toolbar-settingsTool');
//settingsTools.removeControl('toolbar-fullscreenTool');
}
// Remove measurement icon
else if (e.extensionId === 'Autodesk.Measure') {
var ext = viewer.getExtension('Autodesk.Measure');
ext.measurementToolbarButton.removeFromParent();
}
// Remove "Text" icon
else if (e.extensionId === 'Autodesk.Hyperlink') {
var ext = viewer.getExtension('Autodesk.Hyperlink');
ext.tool.removeFromParent();
}
// Remove properties icon
else if (e.extensionId === 'Autodesk.PropertiesManager') {
var ext = viewer.getExtension('Autodesk.PropertiesManager');
ext._toolbarButton.removeFromParent();
}
}
有没有办法删除“选择文本”(T)图标? 以下代码不起作用:
var ext = viewer.getExtension('Autodesk.Hyperlink');
ext.tool.removeFromParent();
谢谢你。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.