斯潘8
斯潘4
你好,
这将类似于我以前的问题,但它现在更加结构化,我有更多的例子。
我正在进行从dgn到citygml的转换,并在转换包含屋顶上部结构的建筑屋顶多边形时遇到问题,也就是说,如果有一个或多个较高或较低的元素从主屋顶平面流出,并且有些屋顶多边形是输入microstation dgn中的甜甜圈,需要是输出citygml中的甜甜圈(输入dgn中是甜甜圈的蓝色多边形必须是输出citygml中的甜甜圈多边形)。
我输入的是MicroStation DGN格式的三维建筑模型,其中包含正确的屋顶模型,即更正上部结构的甜甜圈多边形。
然而,在FME中将DGN转换成citygml时,我发现了两个问题:(1)DGN读数不支持3D甜甜圈,即3D分组孔和(2)Donutbuilder变压器-不完全支持3D数据,即没有从“在同一表面上”的多边形构建圆环多边形的选项。
(1)在FME读取DGN中发布-它没有读取并且没有正确保存此类3D甜甜圈,无论“展开未命名(分组孔单元:否或是”)。它通过填充输入圆环多边形中的孔来分解输入圆环多边形,使其不再是圆环多边形,并创建位于输入圆环多边形表面上的孔多边形。因此甜甜圈需要在FME中重建。
(2)FME Donutbuilder的问题在于不完全支持3D数据,即它不使用“位于同一表面的多边形”为三维数据构建环形多边形。它具有“连接Z模式参数”和第一个风,最后胜利等。–对于三维数据,非选项工作正常。上面图像中的蓝色多边形与二维匹配(相同)–我只需要从与其他蓝色或黄色多边形位于同一表面的蓝色多边形构建一个圆环。
由于Donutbuilder没有这样的选择,输出是随机的,即正确或不正确,因为无法告诉DonutBuilder使用位于同一曲面上的多边形,因此需要顶部或底部的多边形(蓝色多边形)来构建圆环。例如:
请参阅示例FME工作区和数据。
如何在FME中找到与任何其他多边形(在设定的公差范围内)位于同一表面上的多边形?或
如何找到与其他多边形不在同一曲面上的多边形(在设定的公差范围内)
对于给定的问题还有其他解决方案吗?
非常感谢您的帮助!
玛格达
?2019安全亚搏在线软件公司|合法的