【发布时间】:2021-10-30 23:17:34
【问题描述】:
所以我想复制this 教程。我得到了与 IconMarkupExtension.js 完全相同的代码。但是我没有在查看器上看到标记,但是自定义扩展被添加到带有图标的工具栏。我想知道这是否与我正在使用的模型有关,但不确定。
我的查看者代码
if (viewer != null) {
var thisviewer= viewer;
if (thisviewer) {
thisviewer.tearDown();
thisviewer.finish();
thisviewer= null;
$("#forgeViewer").empty();
}
}
var options = {
env: 'AutodeskProduction',
api: 'derivativeV2',
getAccessToken: function(onTokenReady) {
var token = accessToken;
var timeInSeconds = 3600;
onTokenReady(token, timeInSeconds);
}
};
var documentId = "urn:" + urn;
Autodesk.Viewing.Initializer(options, function() {
var htmlDiv = document.getElementById('forgeViewer');
viewer = new Autodesk.Viewing.GuiViewer3D(htmlDiv);
var startedCode = viewer.start();
if (startedCode > 0) {
console.error('Failed to create a Viewer: WebGL not supported.');
return;
}
Autodesk.Viewing.Document.load(documentId, onDocumentLoadSuccess, onDocumentLoadFailure);
});
扩展加载
viewer.loadExtension('IconMarkupExtension', {
button: {
icon: 'fa-thermometer-half',
tooltip: 'Show The Temperature'
},
icons: [
{ dbId: 69, label: '300°C', css: 'temperatureHigh fas fa-thermometer-full'},
{ dbId: 70, label: '300°C', css: 'temperatureHigh fas fa-thermometer-full'},
{ dbId: 71, label: '300°C', css: 'temperatureHigh fas fa-thermometer-full'}
],
onClick: (id) => {
console.log(' ======================= IconMarkupExtension onClick id: ' + id);
viewer.select(id);
viewer.utilities.fitToView();
switch (id){
case 69:
alert('Sensor offline');
}
}
})
这是我正在使用的the 模型。
我正在使用查看器版本 V7*
谢谢
编辑:
即使我选择了一个特定的对象也是一样的。
标签和值根据我添加的模型 ID 正确显示。
这和我的模型有关吗?
【问题讨论】:
-
控制台有消息吗?您还可以检查当前 dbIds 的可用性(viewer.isolate() 方法可以提供帮助)
-
嗨@JoãoMartins,控制台上没有消息。是的,我在隔离/选择之前打印了 dbid,以便 ID 可用。
-
你有没有为 fontawesome 添加脚本来加载 fa fa ??
-
嗨@RonakShethia,是的,我已经包含了脚本,也尝试了本地和公共 css
-
@JoãoMartins 对这种情况有什么想法吗?或者你可以推荐其他人检查吗?谢谢
标签: autodesk-forge autodesk-viewer autodesk