首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >viewableID和guid有什么区别?

viewableID和guid有什么区别?
EN

Stack Overflow用户
提问于 2018-10-15 20:55:49
回答 1查看 413关注 0票数 0

在伪造查看器中,对于重新转换的文件,在进行气泡搜索时: viewerApp.bubble.search({“type”:“几何学”,“角色”:'3d‘});或viewerApp.getSelectedItem()

我得到一个元素节点,类似于:

代码语言:javascript
复制
children: (2) [a, a]
data: {guid: "a21582db-704b-df51-dd71-dbf8c12bcc1a", type: "geometry", role: "3d", name: "{3D}", viewableID: "6104055e-60d9-4037-9adc-cd38e10fcfba-00139c8e", …}
id: 8
isLeaf: true
parent: a {parent: a, id: 7, data: {…}, isLeaf: false, children: Array(14)}

我有节点的guid和一个viewableID。然后,为了显示一个模型,我可以调用viewerApp.selectItemById(guid/viewableID),它的结尾显示相同的模型。

如果我想指向我目前在查看器中看到的3D视图,以供将来参考(例如,在修改文件更新之后),那么guid或viewableID对它的最佳属性是什么?

谢谢,

EN

回答 1

Stack Overflow用户

发布于 2018-10-20 06:18:03

可视id代表Revit中Revit视图的唯一id,但我无法在可视气泡节点中找到Revit视图和guid之间的关系。我正在向我们的工程团队询问他们是否有洞察力。

viewerApp.selectItemById()用于通过它的guid查询气泡节点,因此不能将可查看的id传递给它。否则,它不会像我的调查那样回报任何东西。

要通过可视id进行归档选择,我建议您使用以下选项:

代码语言:javascript
复制
const bubbles = viewerApp.bubble.search({ 'viewableID': '6104055e-60d9-4037-9adc-cd38e10fcfba-00139c8e' });

viewerApp.selectItemById( bubbles[0].guid );

或者扩展您自己的方法(用v6.2测试):

代码语言:javascript
复制
LMV.BubbleNode.prototype.findByViewableId = function (viewableId) {
    let item = null;

    this.traverse(function (node) {
        if (node.data.viewableID === viewableId) {
            item = node;
            return true;
        }
    });

    return item;
};

LMV.ViewingApplication.prototype.selectItemViewableId = function (viewableId, onItemSelectedCallback, onItemFailedToSelectCallback) {
    let item = this.myDocument.getRoot().findByViewableId(viewableId);
    if (item) {
        return this.selectItem(item, onItemSelectedCallback, onItemFailedToSelectCallback);
    }
    return false;
};

// -- You codes where you create the ViewingApplication instance
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52824656

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档