如何检索 Forge Viewer 对象树?

2023-12-05

我的目标是根据我在 Revit 中创建的线条向查看器添加新的几何图形,以突出显示房间,就像他们在此处所做的那样Link

但我不知道如何访问这些线路 ID。 我知道它们在 Revit 中是什么(元素 id),但不知道它们如何映射为 dbid。

按照此博客文章

我想访问扩展中的 objectTree 来找出答案,但它总是返回为未定义。

var tree;
//old way - viewer is your viewer object - undefined
viewer.getObjectTree(function (objTree) {
 tree = objTree;
});

//2.5 - 未定义

  var instanceTree = viewer.model.getData().instanceTree;
  var rootId = this.rootId = instanceTree.getRootId();

//- 不明确的

  var objectTree = viewer.getObjectTree();

谁能告诉我它是否仍然适用于他们我正在使用 API 的 v2 来将 rvt 转换为 svf 和viewer3D.js 的 2.9

注意如果我调用它,我可以看到 dbid 列表

var model = viewer.impl.model;
var data = model.getData();
var fragId2dbIdArray = data.fragments.fragId2dbId ;

但无法映射回 Revit element_id


As of version 2.9 this is still working. Here's my console: Console log

您可以尝试以下几件事:

  1. Is viewer不明确的?抓取时您是否处于正确的范围内viewer?
  2. 必须先加载文档,然后才能获取实例树。当文档加载时,会发生一个名为Autodesk.Viewing.GEOMETRY_LOADED_EVENT将被解雇,然后您可以开始操作实例树。

只需这样做:

viewer.addEventListener(Autodesk.Viewing.GEOMETRY_LOADED_EVENT, function () {
var instanceTree = viewer.model.getData().instanceTree;
});

对于更结构化的代码,请遵循本指南添加扩展名。

有一个更详细的博客文章要监听哪个事件。不过,它仍然使用旧的方法来获取实例树。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检索 Forge Viewer 对象树? 的相关文章

  • 更改 Forge 中的材料

    目前 我们正在让客户端在页面加载时检索对象状态 这将导致模型中的 待处理 对象变成不同的颜色 然后我们轮询更改以更新着色 首先 当查看器加载时 挂起的对象会着色 然后我们继续轮询以再次检查和更改状态 以使 Forge 以不同的颜色渲染它们并
  • 使用 Autodesk A360 中的 URN 创建查看器应用程序

    我创建了一个查看器应用程序 它使用两条腿身份验证并显示已上传到我自己的存储桶的项目 现在 我希望能够查看已上传到 Autodesk A360 的项目 而不是查看自己存储桶中的项目 为此 我已完成以下步骤 实现了三足认证 项目中的A360账号
  • 如何在 Forge Viewer 中使用properties.db?

    sqlite数据库文件properties db通常是输出中最大的文件https extract autodesk io 它在 Forge Viewer 中有何用途 如果未使用 为什么会在 ZIP 文件中提供它 此示例复制两者的原因是该示例
  • 如何为 Autodesk Forge App 指定多个回调 URL?

    您可以注册多个回调 URL 回调 URL 工具提示中有说明 但没有关于如何输入多个 URL 的示例 正确的分隔符是什么 我试过 n 这是工具提示上的拼写错误 我们将修复它 今天您可以使用 2022 年 9 月更新 此功能现已推出
  • 如何检索 Forge Viewer 对象树?

    我的目标是根据我在 Revit 中创建的线条向查看器添加新的几何图形 以突出显示房间 就像他们在此处所做的那样Link 但我不知道如何访问这些线路 ID 我知道它们在 Revit 中是什么 元素 id 但不知道它们如何映射为 dbid 按照
  • Autodesk Viewer 中出现 webGL 错误

    我收到如下错误 未捕获的类型错误 无法读取 null 的属性 webglFramebuffer 当我转到与附加了 Autodesk Viewer 的页面链接的另一个页面时 我不知道它为什么会来 我在我的网站上使用 angularjs 并且该
  • 如何获取bucket文件的urn

    请告诉我如何获取桶文件的瓮 您可以获取上传到存储桶时响应中包含的 urn 但我想获取已上传到存储桶的文件的 urn 有什么办法吗 您可以使用GET buckets bucketKey objects端点以获取存储桶中所有文件的列表 在响应中
  • Autodesk Forge Data Manager Api 重命名项目

    我尝试使用这个补丁Api https www versti eu TranslateProxy https developer autodesk com en docs data v2 reference http projects pro
  • 如何调整对象大小 - Autodesk Forge Viewer

    我怎样才能改变对象的大小 我需要改变物体的高度 例如 我们需要更改门或窗帘的高度 在此代码中我的对象消失了 let change function const viewer oViewer const model viewer model
  • Forge Viewer 在多模型上下文中选择

    我们的扩展目前利用viewer select 和模型中的dbId 列表 我们的客户希望在同一查看器中看到辅助模型 我们让他们能够在加载第一个模型后加载参考模型 然而 我们遇到了多个模型的问题 观众从其中一个模型中进行选择以外当我们调用vie
  • 如何激活 Autodesk Forge Snapper?

    我正在尝试激活自查看器版本 7 3 以来实施的新 Snapper 扩展 所以我像这样加载扩展 viewer loadExtension Autodesk Snapping 似乎有效 之后 我尝试访问类似的描述方法 但总是收到此错误 getS
  • 如何将带有 mtl 和纹理的 obj 上传到存储桶?

    正如标题所示 如何上传 obj 模型的材质文件和纹理 因为它们是硬编码在 obj 文件中的 我可以上传压缩的目录结构或多个关系正确的文件 因为 obj 的硬编码性质 吗 这是 dotty 试用网站上的带有材质和纹理的 OBJ 模型 http
  • 使用 Autodesk API 下载文档

    我正在尝试从 BIM 360 Docs 下载文档 如果我想下载类型为 type items autodesk bim360 File 我只需要获取bucketID和objectID projects
  • 扩展 Autodesk Forge:将我自己的扩展添加到包后,我的控制面板无法连接到 Revit 模型

    我用过这个包 https github com petrbroz forge iot extensions demo https github com petrbroz forge iot extensions demo 之后 我添加了自己
  • 为什么在创建模型衍生作业时不考虑 Webhook 工作流程?

    当我创建一个作业时 使用一个 webhook 来完成https developer api autodesk com modelderivative v2 designdata job https developer api autodes
  • 如何从 Autodesk Forge API 按项目获取评论和传输?

    我试图找到一种获取评论和传输的方法 但在 BIM360 API 或数据管理 API 中没有找到它 可以获得吗 目前尚未公开 BIM 360 的审核和传输 API 有一个Review API的愿望 ALEX 37150 API 希望 公开文档
  • Autodesk Forge BIM 360 API - 激活服务类型

    我们一直在使用 Forge API 在 BIM 360 中自动设置项目 但似乎无法找到自动激活服务 Field Glue 等 的方法 直觉上 我认为 service types 属性是执行此操作的方法 但服务没有激活 1 service t
  • 从存储桶中删除文件。 Autodesk-forge

    从 wip dm prod 存储桶中删除文件时出现问题 errorCode AUTH 012 但我可以使用 x GET 而不是 x DELETE 下载当前文件 我使用这个教程 gt https developer autodesk com
  • 在 Windows 10 上构建 Autodesk Forge RCDB 失败并出现 node-gyp 错误

    尝试构建 Forge 响应式连接数据库时 我无法在我的 Windows 10 计算机上构建此应用程序 我无法成功运行 npm install 我收到如下错误 我最终尝试使用预先配置的 画布 但它仍然无法让节点应用程序运行 https git
  • 如何复制当前的“家庭类型”并更新其参数

    我们正在使用 Autodesk 的 Forge 或平台服务 更具体地说 Design Automation我们在云中的文件上运行脚本 我们正在研究使用设计自动化将 类型目录 即 txt 文件 导入到打开的 rfa 文件中的方法 一种可能的方

随机推荐