我最近上传了一个Revit模型到Forge平台。该模型定义了一个测量点(N/S: 0, E/W: 0),一个基本项目点(N/S: 149443, E/W: 371248, Angle to True North: 41.43°))和一个模型房间。模型室包含一个具有坐标(N/S: 149326, E/W: 380492)的元素。
我试图弄清楚这些点在模型中如何被转换和翻译后上传到Forge平台。
我使用此函数(viewerApp.getCurrentViewer().model.getData().bbox)在Forge中获取模型的边界框,并发现以下内容:
min: (X: 1229.5841064453125, Y: 471.1938171386719, Z: -0.5249344110488892),和
max: (X: 1284.9295654296875, Y: 527.90869140625, Z: 13.123359680175781)
此外,我还作了以下初步假设:
(0, 0, 0)点。此外,查看器使用模型的调查点或项目基点作为源。但是,包围框的信息(与X & Y的范围分别为1229-1284 & 471-527 )似乎不包含在测量点(元素的X & Y在149326 & 380492上相对于测量点),或者在项目基点上的元素的X & Y (关于项目基点的-117 & 9444元素的X & Y)中定义的元素的坐标。
此外,关于this问题,可能是模型坐标可能被这个命令(viewerApp.getCurrentViewer().model.getData().globalOffset)获得的全局偏移量所抵消。但是,当我运行此命令时,将返回(0, 0, 0)。假设偏移量在某种程度上是正确的,那么Northing/ unit到Forge's X/Y的单位标度似乎与我的假设不同。
我想问,我以上所作的假设中,哪一部分是错误的?
我使用Forge v6,模型派生API v2,以及使用Node.JS作为Forge的服务器
发布于 2018-08-16 13:04:56
如果我理解得对,似乎您使用项目坐标放置Revit模型,但是只提取了项目地址属性。
正如您在other answer上提到的,模型以原点为中心,globalOffset表示此值。
您可能需要调整包围框与单位的模型,我建议检查this answer。
https://stackoverflow.com/questions/51873847
复制相似问题