0

viewer.setThemingColor 对我来说很好,可以将 revit 中某些内容的颜色更改为 svf 文件

但是当我尝试将它用于 DWG 到 SVF 的转换时,它什么也没做。

oViewer.setThemingColor(1604, new THREE.Vector4(0, 1, 1,1));

注意我假设的一件事是鼠标单击进行选择的 dbId 与我需要用于 setThemingColor 的 dbId 相同

任何指针都会有所帮助。

4

1 回答 1

0

那应该可以...您确定您传递的是正确的dbId吗?事实上,它对我有用。

您可以在我的查看器游乐场尝试一下。可能是您的模型存在特定问题,在这种情况下,您可以与我们分享该设计。需要时私下。

这是我的测试代码:

AutodeskNamespace("Autodesk.ADN.Viewing.Extension");

Autodesk.ADN.Viewing.Extension.Basic = function (viewer, options) {

  Autodesk.Viewing.Extension.call(this, viewer, options);

  var _this = this;

  _this.load = function () {

    viewer.addEventListener(Autodesk.Viewing.SELECTION_CHANGED_EVENT, function(e){

      if(e.dbIdArray.length) {
        var dbId = e.dbIdArray[0];
        console.log('DbId: ' + dbId);
        viewer.setThemingColor(dbId, new THREE.Vector4(0, 1, 1,1));
      }
    })

    return true;
  };

  _this.unload = function () {

    return true;
  };
};

Autodesk.ADN.Viewing.Extension.Basic.prototype =
  Object.create(Autodesk.Viewing.Extension.prototype);

Autodesk.ADN.Viewing.Extension.Basic.prototype.constructor =
  Autodesk.ADN.Viewing.Extension.Basic;

Autodesk.Viewing.theExtensionManager.registerExtension(
  "Autodesk.ADN.Viewing.Extension.Basic",
  Autodesk.ADN.Viewing.Extension.Basic);
于 2016-07-25T21:06:45.960 回答