无法通过toolbar的removeControl删除【测量】或【第一人漫游】等按钮

缺省情况下,Forge Viewer提供一些常用按钮,包括【缩放】,【平移】,【旋转】,【炸开】,【测量】,【第一人漫游】,【刨切】等。
有些朋友看到这篇博客,通过获取toolbar句柄,然后删除对应的DOM元素。
https://forge.autodesk.com/cl...

对于【缩放】,【平移】,【旋转】,【炸开】等,此法成功删除按钮,但对于【测量】,【第一人漫游】等,发现没有起作用。

阅读 2.6k
1 个回答

这是因为【缩放】等按钮是在viewer主文件中初始化和加载,而其它的是在对应的extension中处理,所以,单纯的操作DOM元素是不行的。需要卸载那个Extension,viewer.unloadExtension('Autodesk.FirstPerson')。但这样功能又没有了。

所以建议不要只是通过删除来解决,而是可以在初始化viewer的时候,用Autodesk.Viewing.Viewer3D,而不要Autodesk.Viewing.Private.GuiViewer3D。

    viewerApp.registerViewer(viewerApp.k3D, Autodesk.Viewing.Viewer3D);

这样,viewer缺省不带任何工具条。你可以自己创建按钮,对于【缩放】等功能,直接切换:

  Viewer.setActiveNavigationTool('pan')

而对于【测量】,【第一人漫游】等,先加载相关的extension,然后类似的,当你的按钮按下的时候,切换到对应模式

  Viewer.setActiveNavigationTool('firstperson')

如果你并不需要对应功能,那就如前所述,直接卸载extension

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进