Autodesk forge 在Autodesk forge中选定的项目内获取不同的三维视图

Autodesk forge 在Autodesk forge中选定的项目内获取不同的三维视图,autodesk-forge,autodesk,Autodesk Forge,Autodesk,我们使用Autodesk Forge中的数据管理API获取集线器、文件夹列表和文件夹中的项目 参考号: 如果我们想显示所选项目(例如,file1.rvt)中存在的所有三维视图(名称和缩略图),如何获取数据?为此,您需要获取要显示视图/缩略图的文件项目版本的清单和元数据。在您的物品负载中,您将找到所有可用的版本。以最新的一个为例,查找其“id”,如下所示: “id”:“urn:adsk.wipprod:fs.file:vf.7aKButAtTo-VRvSJqZl0jg?version=13”,

我们使用Autodesk Forge中的数据管理API获取集线器、文件夹列表和文件夹中的项目

参考号:


如果我们想显示所选项目(例如,file1.rvt)中存在的所有三维视图(名称和缩略图),如何获取数据?

为此,您需要获取要显示视图/缩略图的文件项目版本的清单和元数据。在您的物品负载中,您将找到所有可用的版本。以最新的一个为例,查找其“id”,如下所示:

“id”:“urn:adsk.wipprod:fs.file:vf.7aKButAtTo-VRvSJqZl0jg?version=13”,
将其编码为安全的Base64编码。安全地对ID进行编码很重要,否则您可能会在以后的GET URL路径中使用无效的“=”-“/”字符

dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLjdhS0J1dEF0VG8tVlJ2U0pxWmwwamc_dmVyc2lvbj0xMw
要获取视图,您通常会拉动并获取以下内容:

{
“数据”:{
“类型”:“元数据”,
“元数据”:[
{
“名称”:“三维视图:视图01”,
“角色”:“3d”,
“guid”:“a6128518-dcf0-967b-31a1-3439a375daeb”
},
{
“名称”:“三维视图:视图02”,
“角色”:“3d”,
“guid”:“488e0550-6e79-38b3-9f56-ae8fd21416bb”
},
{
“名称”:“图纸:A00-现场平面图”,
“角色”:“2d”,
“guid”:“beaab4e2-9abc-8ca2-4e65-23df60e4b6a7”
}
]
}
}
有两种缩略图-文件缩略图,通常是上次保存文件时处于活动状态的视图。你可以通过浏览器获取缩略图。但是,如果您想获取所有视图的缩略图,则需要提取并解析JSON响应。你会得到这样的回复(为了让这篇文章更容易阅读,我简化了下面的回复)

您将使用“角色”=“缩略图”搜索子节点。它的父视图将告诉您它附加到哪个视图。这里值得注意的是,您实际上不需要调用/metadata端点,因为只要您知道在哪里阅读,清单中已经有了所有信息。例如,假设我希望获得图纸视图的缩略图分辨率200x200

我将搜索具有“type”==“geometry”&“role”==“2d”的节点,然后在其子节点中搜索具有“role”==“缩略图”&“分辨率”==“200200”的节点。从那个节点,我得到了派生的URN(即“URN”:“URN:adsk.viewing:fs.file:dXJuOm…uZHdmeA/output/e28378ef-7b4a-878f-cb72-26fbb1a28b2e_f2d/thumboil_200.png”),现在我可以使用端点来获得缩略图文件。就这样

注意,父节点具有视图名称,其一个子节点具有“角色”==“图形”&&“mime”:“应用程序/autodesk-f2d”,以及与元数据响应中的条目匹配的属性“guid”。因此,您可以从元数据端点的清单中提取名称和guid视图。(对于三维视图,您需要搜索“mime”:“应用程序/autodesk svf”或“mime”:“应用程序/autodesk-svf2”,具体取决于您将模型转换为的格式)

{
“瓮”:“dXJuOm…uZHdmeA”,
“衍生工具”:[
{
“hasThumbnail”:“true”,
“儿童”:[
{
“角色”:“3d”,
“hasThumbnail”:“true”,
“儿童”:[
{
“角色”:“图形”,
“mime”:“应用程序/autodesk-svf2”,
“guid”:“a6128518-dcf0-967b-31a1-3439a375daeb”,
“类型”:“资源”
},
{
“urn”:“urn:adsk.view:fs.file:dXJuOm…uZHdmeA/output/f0224dd3-8767-45c1-ff99-5c9c881b9fee/0.svf.png01_thumb_400x400.png”,
“角色”:“缩略图”,
“mime”:“image/png”,
“guid”:“630d764b-6e55-4d17-8446-6858454d8158”,
“类型”:“资源”,
“决议”:[400400]
},
{
“urn”:“urn:adsk.view:fs.file:dXJuOm…uZHdmeA/output/f0224dd3-8767-45c1-ff99-5c9c881b9fee/0.svf.png01_thumb_200x200.png”,
“角色”:“缩略图”,
“mime”:“image/png”,
“guid”:“7294c4f7-55ec-41d7-94e5-98c7294d1ae1”,
“类型”:“资源”,
“决议”:[200200]
},
{
“urn”:“urn:adsk.view:fs.file:dXJuOm…uZHdmeA/output/f0224dd3-8767-45c1-ff99-5c9c881b9fee/0.svf.png01_thumb_100x100.png”,
“角色”:“缩略图”,
“mime”:“image/png”,
“guid”:“d1f2f54d-1ce7-49e0-8360-24f212a0cb33”,
“类型”:“资源”,
“决议”:[100100]
},
...
],
“名称”:“三维视图:视图01”,
“guid”:“f0224dd3-8767-45c1-ff99-5c9c881b9fee”,
“进度”:“完成”,
“类型”:“几何体”,
“属性”:{…},
“状态”:“成功”,
“可视ID”:“f0224dd3-8767-45c1-ff99-5c9c881b9fee”
},
{
“角色”:“3d”,
“hasThumbnail”:“true”,
“儿童”:[
{
“角色”:“图形”,
“mime”:“应用程序/autodesk-svf2”,
“guid”:“488e0550-6e79-38b3-9f56-ae8fd21416bb”,
“类型”:“资源”