我正在尝试使用 Autodesk.Viewing.Viewer3D(无头查看器)显示上下文菜单。
当我使用 Autodesk.Viewing.Private.GuiViewer3D 作为我的查看器类型时,我可以轻松显示上下文菜单,但我不想使用这种查看器类型,因为它有一个工具栏,我不想它为该查看器显示。我无法使用建议的 css 方法 here,因为我还希望在同一应用程序的不同查看器中使用工具栏。
我尝试使用 Autodesk.Viewing.Viewer3D(无头查看器)初始化上下文菜单如下所示:
var contextMenu = new Autodesk.Viewing.UI.ObjectContextMenu(viewer);
viewer.setContextMenu(contextMenu);
viewer.registerContextMenuCallback('CustomContextMenuItems', function (menu, status) {
if (status.hasSelected) {
if(menu === null){menu=[];}
while (menu.length > 0) {
menu.pop();
}
menu.push({
title: 'Do Something',
target: function () {
console.log("Doing something")
}
});
}
});
答案 0 :(得分:1)
上下文菜单旨在与 GuiViewer3D
一起使用。它很可能依赖于它的一些 HTML 或 CSS 设置,这就是它导致 Viewer3D
出现问题的原因。如果您需要这种级别的 GUI 自定义,我建议您实现一个单独的、简单的上下文菜单,而不是弯曲内置菜单。