如何通过Forge Model Derivative API跳过SVF转换获取模型元数据
答复
不支持直接传入Revit原文件URN调用元数据、属性查询接口,你调用失败是正常表现:Revit原生格式是封装的二进制文件,未经过Model Derivative服务解析生成结构化元数据索引的前提下,接口没有办法提取到对应层级、属性数据。
针对你要缩短大文件属性获取整体耗时的核心诉求,可落地的方案按效率优先级排列:
- 优先复用BIM360/ACC的内置转换结果
所有上传到BIM360/ACC的Revit文件,平台为了支撑自带的在线预览、属性查看功能,会在文件上传后自动在后台触发Model Derivative转换,完全不需要你手动调用/modelderivative/v2/designdata/job接口重复提交SVF转换任务。你可以直接拿文件的URN调用转换状态查询接口,确认平台自动转换完成后,直接调元数据、属性接口即可,能完全省掉自行提交转换的等待时间。 - 提交仅元数据转换任务,跳过几何生成步骤
如果遇到刚上传的文件、平台自动转换还未完成的场景,不要提交SVF格式转换,改用无几何的元数据专用转换模式:提交转换任务时将输出格式设为json,在高级参数里关闭几何生成开关,这种模式下服务只会解析Revit的对象层级、属性信息,不会生成视图、网格面片等几何资源,大文件的转换耗时比SVF转换少70%以上,转换完成后即可正常调用属性查询接口。
转换请求的核心参数参考:{ "input": { "urn": "文件对应的Base64编码URN" }, "output": { "formats": [ { "type": "json", "advanced": { "generateGeometry": false } } ] } } - 按需拉取属性,避免请求全量数据
如果你只需要部分指定对象的属性,不要调用全量属性拉取接口,改用批量对象属性查询接口,传入目标对象的ID列表即可,接口响应速度比拉取全模型属性快数倍,也能减少你后续处理数据的开销。 - 必要转换场景下做流程优化
如果业务同时需要SVF/SVF2几何资源,提交转换时优先选择SVF2格式,转换效率比初代SVF高30%左右;同时配置webhook回调接收转换完成通知,不要用定时轮询的方式等结果,减少无效等待。
内容的提问来源于stack exchange,提问作者Madhusudan patil
相关产品推荐
相关产品推荐

