NMGen中存在的一些问题

Setting Smoothing Threshold Too High

 

smootingThreshold设置的太高会导致生成的regions畸形,进而导致三角化和轮廓匹配失败。

 

在生成region的时候如果没有border,平滑的border区域会被生成为一个畸形的region。

 

但是,我们没有必要设置这个值大于2

 

 

Triangulation Failure Due to Vertical Region Overlap

由于在垂直方向上region的重叠导致的三角化失败

 

有些情况下我们会发现,一个region可以以某一种方式形成这样一个情况:在垂直的轴上面与自己重叠了。

那么在这种情况下三角化会失败。而这个有可能是代码缺陷导致的。

这种情况出现的概率很低

解决办法:增加border足够大以避免出现重叠。

 

例子:

解决:增加足够宽的边:

 

 

Seams Form When Regions Connect at a Vertical Corner

在垂直的角落region连接的时候产生缝隙

 

If two regions connect at a location with a high change in height, and one of the regions wraps the corner of the other region, a seam can form resulting in malformed mesh connections between the regions.

如果两个region的连接处有很大的高度上的差别,而其中一个region包围这另一个region的一个角,两个region链接的地方可能会产生缝隙,导致畸形的连接。

这个是算法设计的问题。

 

只有可能出现在简化的几何体,比如一个楼梯没有设计墙,如下图。真实的地图几何体不太可能存在这个情况。

 

解决方法:增加足够大的border以令regions远离垂直差很大的区域。

 

下例: 

在下坡底部旁边的地方,两个region接触的地方,一个缝隙形成了。

红色region包围着棕色的region并且包围的点有非常大的高度差。

解决: 

增加一个border以让region与斜坡分开。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值