在Revit图纸中标记区域对象 [英] Marking The Area objects in Sheets of Revit
本文介绍了在Revit图纸中标记区域对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已尝试通过Forge API从Revit文件的工作表(3D提交)获取区域对象。使用此链接GET /modelderivative/v2/designdata/{urn}/metadata/{guid of sheet}/properties
区域信息不存在,即使我已在工作表中添加了区域。
我的目标是在2D/图纸(3D提交)中标记区域。我如何才能做到这一点?
面积,我的意思是这样>>marking The Area in 2D
推荐答案
区域对象看起来类似于RevitRoom或RevitZoom。如果您的缩放或房间在查看器上是可以点击的,那么您可以通过Get Properties接口获取其属性。以下是我用来存档您想要的内容的几个步骤,您可以比较您是否遗漏了什么。
检查房间/面积元素在您的Revit图纸中是否有效。房间/区域应用墙或
Room Separation
/Area Boundary
围起来。将配置良好的RVT上传到Forge进行翻译。
翻译完成后,通过Forge Viewer加载工作表视图(在本例中称为
A102 - Plans
),并确保视图中的房间/面积元素可点击。通过
viewer.getSelection()
取回所选房间/面积的objectId
。例如objectId of the selected room/area in this view is
4089`。调用GET :urn/metadata接口获取Sheet的
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" } ] } }
- 调用GET :urn/metadata/:guid接口获取该视图实例树,查看是否有我们想要的id为的房间/区域。例如,接口返回中名为
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]" } ] }
- 调用GET :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" } } } ] } }
希望这会有帮助~
这篇关于在Revit图纸中标记区域对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文