斯潘8
斯潘4
要确定倾斜屋顶剖面,需要确定建筑多边形轮廓内点的共面性。一个优秀的共面分解和一个用C++编写的函数在这里:
您应该能够使用上面演示的共面函数,并将其应用于建筑轮廓内的每一组三维点,以确定三维表面,但是你需要按照距离的顺序处理它们,然后将它们处理为共面。当我输入这个答案的时候,我想它可能比你想钻研的要复杂得多,所以一个更好的答案可能是:
将每个建筑的点按四舍五入的高度分组,(按四舍五入的高度分组,buildingID),然后为每个圆形高度值生成一个凸面外壳,为每个高度值的凸面外壳生成的每个多边形添加唯一的屋顶标高编号。现在你有了一个像阶梯金字塔的屋顶高度。在多边形上使用泛化器删除一些额外的中线坐标。现在您有了一个更平滑的屋顶轮廓集合。
你可以把这些线(可能会掉一些中间的高度)变成特征线,让廷格纳和你的点云一起使用。使用pointcloudthinner稀释,或者只需将最高多边形的每个角连接到X距离内最低多边形上的最近点(以处理多层屋顶)。
做这一切可能有点过分,可能需要额外的故障来建造豪华的屋顶,但是如果你真的想要高清晰度的屋顶完全美化,这样你就接近了。
?2019安全亚搏在线软件公司|法律