span8
span4
FME AR (FME增强现实)是一款可用于移动设备的应用程序;iOS和Android都有。增强现实本质上是将信息添加到您的现实世界视图中(而不是创建一个完全人工环境的虚拟现实)。FME的AR应用程序是由一种名为的数据格式驱动的fmear。
本文介绍如何从2D CAD绘图创建fmear格式数据集。同样的技术也可用于从2D GIS数据(如建筑足迹地图)创建fmear数据。用于将2D转换为3D的初级变压器是挤出机。
遵循以下步骤,作为如何从2D CAD模型创建FMEAR数据集的示例,并在FMEAR应用程序中可视化输出…
1.启动FME工作台,生成一个从Bentley MicroStation Design (V8)格式到FMEAR的工作空间。使用附加文件作为源数据集:
当提示选择功能类型时,除了“Default”之外,都要选择。
2.添加两个挤出变压器。一个连接到墙壁数据流,另一个连接到窗口数据流。设置参数使墙体垂直挤压10个单元,窗户垂直挤压4个单元:
这就把物体从地板上挤出来,变成了3D效果。
3.窗户的底部通常不在地面上。因此,在Windows数据流中添加一个偏移量转换器。设置参数使窗口垂直偏移3个单位:
4.保存工作区,然后运行翻译。
在你的设备上,打开FME AR应用。选择数据集的位置(或将其添加到设备中)并在应用程序中打开它。将你的设备对准一个平面,FMEAR模型就会出现。打开和关闭图层,直到你得到一个良好的显示:
(访问这个页面如果你需要如何使用FMEAR应用程序的信息)
5.建筑模型现在是fmear格式,可以在FME AR应用程序中使用。然而,它是相当基本的,可以做一些改进;例如,在墙上打洞代表窗户。
要处理这样的窗口,需要使用CSGBuilder转换器。这个转换器只处理成对的特性,因此每段墙体必须与最多一个窗口配对。同一面墙上的第二个窗口将被忽略。
幸运的是,源模型中的墙壁已经被切割成碎片来满足这个需求:
所以,首先添加一个计数器变压器,并设置它给每个窗口一个唯一的ID:
现在添加一个NeighborFinder。这个转换器将识别穿过墙壁部分的窗口(如果有的话)的ID。挤压墙的特征是基础,挤压/偏移/计数窗口是候选:
设置参数仅查找一个邻居,且仅在0.1个单元内。确保设置了合并属性选项。这将标记每个墙壁功能与匹配的窗口:
如果您现在运行工作区,您可以在FME数据检查器中检查这个转换器的结果,以证明每个带有窗口的墙壁现在都有一个WindowID属性。
6.添加一个CSGBuilder转换器。将NeighborFinder:匹配的功能(带有窗口的墙壁)连接到a输入端口。从Counter:Output (windows)到B输入端口进行第二次连接:
检查parameters对话框并将Group By parameter设置为WindowID:
这将把有匹配的身份证号码的窗口打穿墙壁。运行工作区(如果您愿意)并在FME数据检查器中检查CSGBuilder输出。
7.该任务的最后一部分是将正确的特性连接到正确的FMEAR特性类型。
现在保存并重新运行工作区。在FME AR应用程序中检查输出。它可能看起来没有任何不同,但关闭窗口层和有洞的墙壁功能:
8.另一个改进是在地板和边界上增加了背景。首先添加一个新的阅读器(reader > Add reader on the menubar),然后添加一个PNG格式的阅读器来读取3DBuildingBackdrop1.png:
9.添加一个替代器和一个外观转换器。将连接从地板(阅读器)功能类型移动,并将其连接到FaceReplacer,然后从那里连接到外观设置器:几何输入端口。将新的PNG阅读器功能类型连接到外观设置器:外观输入端口:
检查外观排字机参数。将纹理映射类型参数设置为从上看:
10.通过选择它们并按Ctrl+E来禁用边界特性类型(这样它们就不会妨碍房子的背景)。现在保存并运行工作区。在FME AR app中查看结果。
如果没有明显的背景,那是因为外观应用在地板的错误一侧。为了解决这个问题,在外观排字器:输出和地板特征类型之间添加一个输入端变压器:
检查定心参数。默认值应该是罚款:
重新运行工作区。这一次你应该看到一个CAD绘图作为建筑模型的背景:
11.如果你愿意,重复步骤8-10,这次对边界特征类型应用3DBuildingBackdrop2.png。这次你可能不需要Orienter;但是你应该考虑添加一个偏移量,将边界偏移-0.1个单位,并确保它位于CAD背景下:
结果应该是这样的:
©2019安全亚搏在线软件公司法律