添加 Autodesk forge 扩展
Posted
技术标签:
【中文标题】添加 Autodesk forge 扩展【英文标题】:Adding a Autodesk forge extension 【发布时间】:2020-08-03 21:59:16 【问题描述】:您好,我正在尝试在查看器中添加 forge 扩展,但我不知道我错过了什么。
我关注了这篇文章:https://forge.autodesk.com/blog/loading-external-extensions-forge-viewer
这是我的代码:
<body>
<div id="MyViewerDiv"></div>
<script>
var myViewerDiv = document.getElementById('MyViewerDiv');
var viewer = new Autodesk.Viewing.Private.GuiViewer3D(myViewerDiv);
var options =
'env' : 'Local',
'document' : './modelV4/hahahah/4/output.svf',
;
Autodesk.Viewing.Initializer(options, function()
viewer.start(options.document, options);
);
Autodesk.Viewing.theExtensionManager.registerExternalExtension(
'MyExternal.Extension.Id',
'http://localhost:3000/js/external.js')
viewer.addEventListener(
Autodesk.Viewing.GEOMETRY_LOADED_EVENT, () =>
viewer.loadExtension('MyExternal.Extension.Id').then(
function(externalExtension)
externalExtension.sayHello('Bob')
)
)
</script>
</body>
这是我的道路:
【问题讨论】:
【参考方案1】:对于更新版本的查看器,该文章中描述的方法不再有效 - 您需要直接传递扩展类/函数而不是扩展脚本的链接:
/**
* Registers a new extension with the given id.
*
* @param string extensionId - The string id of the extension.
* @param Extension extension - The Extension-derived class representing the extension.
* @returns boolean - True if the extension was successfully registered.
* @alias Autodesk.Viewing.ExtensionManager#registerExtension
*/
function registerExtension(extensionId, extension)
按照本教程here 开始...
如果您想将扩展代码包装在另一个脚本中,只需在查看器库之后使用脚本标记加载它...:
<script src='https://developer.api.autodesk.com/modelderivative/v2/viewers/viewer3D.min.js'></script>
<script src='path/to/your/extension.js'></script>
【讨论】:
以上是关于添加 Autodesk forge 扩展的主要内容,如果未能解决你的问题,请参考以下文章