# 文件转换

文件上传成功后,就可以对文件进行轻量化处理了,一方面会解析其中的数据便于用户调取及使用;另一方面压缩源文件的大小,使得浏览时尽可能地降低资源上的开销。

开发者需要等待文件模型状态变为转换成功后方可查看及应用模型。

转换时间主要根据文件大小和类型的差异决定,此外同一时间内文件转换的请求较多时,会存在排队现象,请耐心等待。转换成功后,控制台页面会自动刷新。

文件转换这一步骤可以通过控制台或调用服务端API两种方式来实现。

# 方法一:通过控制台发起文件转换

控制台 (opens new window)的“上传转换”页面中,选择已上传完成的文件,点击“发起转换”按钮。在对文件发起转换时,可以根据模型的使用需求,预先设置相关的配置。

控制台在文件转换页面提供了常用的转换配置参数,其显示内容会根据所要转换的文件后缀的不同而有所调整。 6

# 主文件名

当你需要转换的模型附带了自定义的材质贴图,则需要将材质文件与模型压缩为zip文件并上传。在发起转换时,需要指定主文件名,即模型文件的完整名称(即文件名与后缀名)。

# 通用

# 加载模式

BIMFACE提供了两种加载模式供开发者使用。

  • 全量加载:引擎会在加载全量的模型数据后再展示模型,之后的模型浏览操作将不会再额外加载模型几何数据,整体浏览体验较好,但模型前期的加载时间则会偏长。

  • 流式加载:模型数据以瓦片形式组织,浏览时仅加载视锥范围内的数据,随着相机范围及构件远近的变化进行数据的加载、卸载。流式加载会大幅提升模型加载的速度及浏览性能,GIS场景下仅支持流式加载。

需要注意的是,若想要在GIS场景中添加对应文件资源,则必须选择“流式加载”模式,否则无法添加。

GIS相关的数据格式(如osgb、shp、las等)仅提供流式加载模式,在转换这些类型的数据时将不会提供加载模式的选择。

# 显示效果

针对rvt、rfa等格式的模型,BIMFACE支持以着色模式或真实模式进行转换,其中真实模式即以贴图作为材质来显示。

# 模型分类

你可以设置待转换模型的类型,例如单栋建筑、建筑群等,类型的选择会有助于提升转换效果。

文件转换配置-通用选项卡

# 高级选项-信息

在控制台进行文件转换时还支持一些进阶功能的设置,点击“高级选项”即可展开对应设置项。

# 二维视图

该功能针对rvt文件生效。勾选该功能后,可将rvt文件中的平面、立面、剖面视图导出为图片,并通过Model Viewer模块中的DrawingHelper类 (opens new window)来进行调用,实现二维视图与三维模型的结合应用。

# 导出明细表

该功能针对rvt文件生效。勾选该功能后,可将rvt文件中的明细表文件导出,并通过Model Viewer模块中BimModel (opens new window)类下的getScheduleList(callback)方法获取到完整的明细表列表。

文件转换配置-信息选项卡

# 高级选项-自定义参数

# 视图设置

针对rvt文件可设置待转换的视图,BIMFACE默认解析的是{3D}或{三维}视图,你也可以选择自定义视图并输入期望解析的视图名称。

# 构件树层级设置

针对rvt文件可设置构件树的层级,BIMFACE默认按照模型自带构件树信息进行解析,你也可以选择自定义,指定构件属性作为objectData,并根据objectData组织构件树。

文件转换配置-自定义选项卡

# 高级选项-坐标

该项配置仅支持流式加载模式,且仅在添加模型至GIS场景中时生效。配置了坐标信息的模型在添加至场景中时,将自动进行模型位置校准。

若模型的坐标信息不明确,也可不对该项进行配置。未配置坐标信息的模型,可在场景发布系统中通过手动调整的方式进行位置校准。

坐标配置支持两种空间参考方式,即地理坐标系与投影坐标系。

# 地理坐标

地理坐标是以一个标准参考椭球体模拟地球,再通过经纬度+高程对地球上的任一点进行准确定位的。

如图所示,P点的经度为过该点的大地子午面与起始子午面之间的二面角L,纬度为过该点的法线与赤道面的夹角B,高程则为P点沿法线到参考椭球面的距离H。

经纬度

不同椭球体对应不同的地理坐标系,目前BIMFACE转化时的地理坐标配置支持CGCS-2000坐标系(2000国家大地坐标系)。

明确了CGCS-2000坐标系后,就需要输入校准基点、经纬度、高程来对模型位置进行准确描述。校准基点是指模型自身坐标系下的某一点,例如(0,0,0)代表模型建模原点;经纬度与高程则是校准基点对应的地理坐标,例如经纬度(116.39136,39.904964),高程0m,就代表将模型的原点放置在该经纬度处(即北京天安门)。

如图所示,最终配置出来模型原点对应的经纬度即为(116.39136,39.904964),加载该模型至GIS场景中时,模型原点会自动放置在北京天安门处。

地理坐标配置

# 投影方式

投影坐标是由地理坐标+投影方式构成的空间参考系。投影坐标系通过投影方式将三维地球表面空间投射到二维地图平面,从而基于x、y、z对地球上的任一点进行准确定位。

目前BIMFACE支持的地理坐标为CGCS-2000,支持的投影方式包括高斯克吕格3度带标准投影与高斯克吕格3度带自定义投影。

如图所示,高斯克吕格3度带投影是指以一个椭圆柱与地球椭球体上某一经线(中央子午线)相切,椭圆柱的中心轴与赤道平面重合,将地球椭球体上距中央子午线左右分别1.5°的区域投影到椭球圆柱面上。即单个投影带跨越3度经度,投影坐标系以中央子午线和赤道的交点作为坐标原点,赤道与中央子午线的投影分别作为横纵轴。

GK投影

# 标准投影坐标系

标准的高斯克吕格3度带投影从东经1.5°经线开始,每跨3°经线为一个投影带,各投影带为独立投影坐标系,对应的投影坐标原点也各不相同。全球共120个投影带,即东经1.5°至4.5°为第1带,中央经线为东经3°;东经4.5°至7.5°为第2带,中央经线为东经6°。其中,我国领土跨越22个投影带,即24带至45带,主要集中在25带至45带。

GK投影带

明确了某一3度带投影坐标系后,就需要输入偏移值、旋转值来对模型位置进行准确描述。偏移值是指模型建模原点到投影坐标系原点的偏移量,旋转值则是模型的旋转角度。

需要注意的是,在标准高斯克吕格3度带投影中,为了避免横坐标出现负值,统一规定将纵轴向西偏移500km,即坐标系中所有点的横坐标值加500000m。同时,高斯克吕格3度带投影存在两种不同描述定义,例如第25带投影坐标系,中央子午线为东经75°,其中一种描述为“3-degree Gauss-Kruger zone 25”,定义统一在横坐标值前再加上带号“25”;另一种描述为“3-degree GaussKruger CM 75E”,则不在横坐标前加带号。

例如选定高斯克吕格3度带投影第25带,经纬度为(75,0)的点(即该投影带中央子午线与赤道的交点),在“3-degree Gauss-Kruger zone 25”中的偏移值为(25500000,0,0),在“3-degree GaussKruger CM 75E”中的偏移值为(500000,0,0)。

如图所示,最终配置出来模型原点对应的经纬度即为(75,0),加载该模型至GIS场景中时,模型原点会自动放置在经度75°,纬度0°处。

GK标准投影配置

# 自定义投影系

高斯克吕格投影存在一定的投影变形,除中央子午线无变形外,离中央子午线越远,变形越大。在一些实际项目中,当模型所处的位置在某一标准高斯克吕格投影带的边缘时,为了避免出现较大变形,会通过自定义中央子午线的方式来减小变形的影响。目前BIMFACE支持高斯克吕格3度带自定义投影。

高斯克吕格3度带自定义投影原理与标准3度带投影坐标系一样,区别在于中央子午线可以自定义任意经度。例如模型原点对应经纬度为(76.4,0),处于标准高斯克吕格3度带投影第25带的边缘,为了避免较大变形,可以自定义3度带投影的中央经线(即中央子午线)为东经76.4°,该自定义投影带跨越东经74.9°至77.9°。同时为了避免横坐标出现负值,也可以设置纵轴西移值。若纵轴西移值设置为500000m,则横坐标值统一加500000;若纵轴西移值设置为0m,则横坐标值不做变化。

明确了高斯克吕格3度带自定义投影相关定义参数后,就可以输入偏移值、旋转值来对模型位置进行准确描述。如图所示,最终配置出来模型原点对应的经纬度即为(76.4,0),加载该模型至GIS场景中时,模型原点会自动放置在经度76.4°,纬度0°处。

GK自定义投影配置

# 方法二:通过服务端API发起上传文件

发起文件转换的API:查看详情 (opens new window)