在 Autodesk Forge Viewer 中自定义绘图工具会引发错误

Customizing Drawing tool in Autodesk Forge Viewer throws error

我正在使用 Autodesk Forge Viewer API 在网页上渲染 AutoCAD 绘图文件。它工作得很好。 然后我按照下面的教程在查看器上提供 markup/annotation 支持。

https://developer.api.autodesk.com/viewingservice/v1/viewers/docs/tutorial-feature_markup.html

虽然我能够让不同的绘图工具按预期工作,但自定义标记的颜色会引发错误。

vm.onColorChange = function (e) {

        var styleAttributes = ['stroke-color'];
        var nsu = Autodesk.Viewing.Extensions.Markups.Core.Utils;
        var styleObject = nsu.createStyle(styleAttributes, vm.markupsExtension.viewer);

        var selectedColor = $('#sel-colors').val();
        styleObject['stroke-color'] = selectedColor;

        vm.markupsExtension.setStyle(styleObject);
    };

当我在开发人员工具上调试代码时,'Markups.js' 中的下面一行抛出错误 'getStrokeWidth' 未定义。

我正在使用 Forge 查看器版本 6。使用最新版本的查看器自定义绘图工具是否有任何更改,或者教程是否仍然适用于当前版本。

传递给 Markups.Core.Utils.createStyle 的第二个参数应该是当前活动的标记工具对象,而不是查看器本身:

var markupExt = Viewer.getExtension("Autodesk.Viewing.Markups ore");
var styleObj = Autodesk.Viewing.Extensions.Markups.Core.Utils.createStyle([...], markupExt)

教程的那一点不正确,很快就会得到纠正。