在 Revit 图纸中标记区域对象
Posted
技术标签:
【中文标题】在 Revit 图纸中标记区域对象【英文标题】:Marking The Area objects in Sheets of Revit 【发布时间】:2018-11-13 08:28:58 【问题描述】:我已尝试通过 Forge API从 Revit 文件的 Sheets (3D Submission) 获取 Area 对象>。使用此链接GET /modelderivative/v2/designdata/urn/metadata/guid of sheet/properties
区域信息 不存在,即使我在 sheets 中添加了 区域。
我的目标是在 2D / Sheets (3D Submission) 中标记 Area。我该怎么做?
区域,我的意思是这样>>marking The Area in 2D
【问题讨论】:
你想要什么样的区域对象?我刚刚使用 Revit Room 进行了测试,效果和我预期的一样好。 我已经编辑了我的问题@EasonKang先生 这看起来像 Revit Room 或 Revit Zoom。如果您的缩放或房间在查看器上是可点击的,那么您可以通过此 API 获取其属性,就像我从 Forge Zendesk 回复您一样。 我把获取房间/面积的面积参数值的步骤放在下面,请大家试一试。 【参考方案1】:区域对象看起来像 Revit Room 或 Revit Zoom。如果您的缩放或房间在查看器上是可点击的,那么您可以通过 API Get Properties 获取其属性。以下是我用来归档你想要的东西的几个步骤,你可以比较是否有遗漏的东西。
检查房间/区域元素在您的 Revit 工作表中是否有效。房间/区域应由墙壁或Room Separation
/Area Boundary
围起来。
确保包含您的房间/区域的工作表包含在 Revit Publish Setting
的集合中
将配置良好的 RVT 上传到 Forge 进行翻译。
翻译完成后,通过 Forge Viewer 加载工作表视图(在本例中称为 A102 - Plans
),并确保视图中的房间/区域元素是可点击的。
通过viewer.getSelection()
检索选定房间/区域的objectId
。以objectId of the selected room/area in this view is
4089` 为例。
调用 API GET :urn/metadata 以获取工作表的 guid
。例如,现在是abdacd31-f94c-e84f-9a58-4663e281d894
。
"data": "type": "metadata", "metadata": [ "name": "3D", "role": "3d", "guid": "6bfb4886-f2ee-9ccb-8db0-c5c170220c40" , "name": "A102 - Plans", "role": "2d", "guid": "abdacd31-f94c-e84f-9a58-4663e281d894" ]
-
调用APIGET :urn/metadata/:guid获取该视图的实例树,并检查是否有我们想要的id的房间/区域。例如在 API 响应中,房间名为
Kitchen & Dining 101 [857279]
,ID 为 4089
。
"objectid": 4084, "name": "Rooms", "objects": [ "objectid": 4085, "name": "Bath 203 [857200]" , "objectid": 4086, "name": "Bath 205 [857203]" , "objectid": 4087, "name": "Bedroom 202 [857206]" , "objectid": 4088, "name": "Entry Hall 201 [857209]" , "objectid": 4089, "name": "Kitchen & Dining 101 [857279]" ]
-
以这种方式调用APIGET :urn/metadata/:guid/properties来检索房间/区域的属性。比如
/modelderivative/v2/YOUR_RVT_URN/metadata/abdacd31-f94c-e84f-9a58-4663e281d894/properties?objectid=4089
,它的响应如下图,那么你会看到你想要的区域显示在响应中。
"data": "type": "properties", "collection": [ "objectid": 4089, "name": "Kitchen & Dining 101 [857279]", "externalId": "e6ac360b-aaed-4c3b-a130-36b4c2ac9d13-000d1467", "properties": "Constraints": "Base Offset": "0.000 mm", "Level": "Level 1", "Limit Offset": "6500.000 mm", "Upper Limit": "Level 1" , "Dimensions": "Area": "26.971 m^2", "Computation Height": "0.000 mm", "Perimeter": "29060.000 mm", "Unbounded Height": "6500.000 mm", "Volume": "118.317 m^3" , "Identity Data": "Base Finish": "", "Ceiling Finish": "", "Comments": "", "Department": "", "Floor Finish": "", "Image": "", "Name": "Kitchen & Dining", "Number": "101", "Occupancy": "", "Occupant": "", "Wall Finish": "" , "Phasing": "Phase": "Working Drawings" ]
希望对你有帮助~
【讨论】:
好的,问题出在可点击房间/区域。非常感谢您的帮助 要使房间可点击,请确保您已设置Color Schemes以上是关于在 Revit 图纸中标记区域对象的主要内容,如果未能解决你的问题,请参考以下文章