第8页
斯潘4
本教程演示了从IFC到CityXML的基本转换,详细程度较低:IFC LOD100到CityXML LOD2。
IFC-LOD2标准城市.fmw(已完成工作区,无数据)
下载数据(数据可从Vectorworks下载)
1) 下载数据
在开始之前,请先使用DC Riverside Building LOD 100 IFC文件进行此练习下载数据,它来自Vectorworks网站.
2) 读取源IFC
在空白工作区中添加行业基础类STEP文件(IFC)读者转到画布并浏览到DC_Riverside_Bldg-LOD_100.ifc数据集。我们需要读取IfcSpace几何体类型,因此在reader参数中,将readifcspace几何体设置为Yes。单击“确定”添加读卡器。
IFC读取器参数;将“读取IfcSpace几何图形”更改为“是”
在“选择要素类型”对话框中,仅选择“IfcSlab”和“IfcSpaces”。这是创建简单的lod2Solid几何体所需的两个层。IfcSlab表示楼层和屋顶,IfcSpace表示这些楼层之间的空间。
3) 创建单个网格
IFC要素需要合并到表示建筑的单个要素中。添加三角测量仪转换到画布并将其连接到IfcSlab和IfcSpace要素类型。在参数中,确保“聚合处理”设置为“取消聚合”。该变换器将输入几何体分解为每个展平组件的网格。当我们稍后运行这个工作区时,一些特性将被拒绝,因此为了确保工作区继续运行,我们需要设置拒绝的特性处理。右键单击三角架上的
现在已经为每个组件创建了网格,我们需要将它们合并在一起,以便可以使用单个网格。添加网状合并将转换器连接到画布,并将其连接到三角架上的TINSurface输出端口。这将59个单独的网格合并为一个网格。
使用三角架和网格合并创建单个网格
4) 设置属性和特征
CityGML有特定的属性命名标准,以便文件可读。谢天谢地,有一个自定义的转换器来创建这些属性。添加城市几何仪自定义转换到画布。在参数中,将CityGML Lod Name设置为lod2Solid,将Feature Role设置为cityObjectMember。可以使用AttributeCreator和GeometryPropertySetter创建这些属性,但使用此自定义转换器可以防止键入错误,因为这些属性值区分大小写。
将CityGML Lod Name设置为lod2Solid,将Feature Role设置为cityObjectMember
我们还想创建其他不需要遵循严格标准的属性。添加属性创建者将变压器连接到画布并将其连接到CityGMLGeometrySetter。在参数中设置以下属性:
要创建的属性 | 属性值 |
城市详细信息 | 2 |
gml\U标识 | gml@UUID公司() |
gml\U名称 | 华盛顿河畔大厦 |
创建citygml\u level\u of \u detail、gml\u id和gml\u name属性
5) 缩放和设置坐标
IFC模型中没有存储坐标系信息,但有可用的建筑KML文件。如果您想探索KML模型,可以从VectorWorks网站下载。
我们需要缩放模型,因为它目前的单位是毫米。添加定标器转换到画布并将其连接到AttributeCreator。在“参数”中,将“X”、“Y”和“Z”的比例因子设置为0.001,将其缩放为米。
接下来,添加一个局部协调系统在画布上,设置以下内容:
原点坐标系 | 第84页 |
原点X | -76.986560155564575 |
原点Y | 38.876070469421258 |
在LocalCoordinateSystemSetter中设置原点X和Y
最后,将数据重新投影到所需的坐标系中。为此,请添加CSMAP重投影把变压器放到画布上。在“参数”中,将目标坐标系设置为EPSG:2248和然后将垂直处理更改为相对于椭球体或地心的高度。
6) 写入CityGML
添加市政府写入画布并将数据集命名为Riverside\u LOD2城市.gml. 将要素类型定义设置为“自动”,然后将其连接到CsmapReprojector。在“要素类型参数”中,将要素类型名称设置为“Building”。
运行工作区并检查输出。请注意,如果您的工作区终止于三角剖分器,请确保在步骤3中将“拒绝的特征处理”设置为“继续”。
已完成的工作区
在FME数据检查器中查看的输出CityGML
数据属性
河滨大厦示范工程资料制作单位尼美舒克矢量工厂.
©2020安全亚搏在线软件公司|法律