You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Autodesk Forge能否将RVT导出为含多个3D视图的SVF?

关于RVT转SVF导出多3D视图的实现方法

是可以实现的,默认转换仅输出默认{3D}视图的原因是未在转换作业中指定额外导出视图,具体操作步骤如下:

前提步骤:获取RVT内所有3D视图的GUID

首先调用模型衍生服务的清单查询接口,筛选出所有类型为3D的视图项,记录对应guid字段,后续转换时需要传入这些ID。

REST API 操作方式

提交SVF转换作业时,在请求体的output.formats.advanced参数中配置如下内容即可导出指定多视图:

{
  "input": {
    "urn": "<你的RVT文件Base64 URN>"
  },
  "output": {
    "formats": [
      {
        "type": "svf",
        "views": ["3d"],
        "advanced": {
          "generateMasterViews": true,
          "viewableIds": ["<视图1 GUID>", "<视图2 GUID>", "<其他需要导出的视图GUID>"]
        }
      }
    ]
  }
}

必须将generateMasterViews设为true,多视图导出配置才会生效。

C# 官方类库操作方式

使用Autodesk.Forge官方SDK时,构造转换作业参数的示例如下:

// 构造转换参数
var jobInput = new JobPayloadInput(urn: yourRvtUrn);
var advancedSettings = new JobPayloadItemAdvanced(
    generateMasterViews: true,
    viewableIds: new List<string> {"<视图1 GUID>", "<视图2 GUID>"}
);
var jobFormat = new JobPayloadItem(
    type: JobPayloadItem.TypeEnum.Svf,
    views: new List<JobPayloadItem.ViewsEnum> {JobPayloadItem.ViewsEnum._3d},
    advanced: advancedSettings
);
var jobOutput = new JobPayloadOutput(new List<JobPayloadItem> {jobFormat});
var jobPayload = new JobPayload(jobInput, jobOutput);

// 提交转换作业
var api = new ModelDerivativeClient();
var response = await api.TranslateAsync(jobPayload, accessToken);

结果验证

转换完成后再次查询文件清单,就能看到多个独立的3D视图资源,每个视图都可以单独加载、导出,和Revit内保存的视图参数完全一致。


内容的提问来源于stack exchange,提问作者Sumana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 22:27:04