模拟信号遮挡

无线信号被建筑物遮挡后,信号会减弱,那么在三维场景中,如何模拟了?为了简单起见,我们先做如下假设:

  • 无线信号是靠近地面的半球体
  • 建筑物是标准的立方体
  • 信号被遮挡后直接消失

虽然CSG为我们提供了三维模型相加、相减或者相交的功能,但也不能解决遮挡的问题。不过我们可以将立方体相对于信号中心放大,然后再去和信号球体相减,就是我们想要的遮挡效果了。如果只考虑水平面,这个三位空间的问题,就变成了2D问题,类似下图,代码见GitHub

signal_block.png

虽然可以很简单的写个小例子验证思路,不过还是稍微啰嗦了一把,封装了几个类,里面有不少Canvas的API的使用,以后有空再详细介绍。代码就不详细贴了,自己看:

稍微发散一下,这个功能还可以用于模拟摄像头监控范围等领域。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、trigger() trigger()是主动触发,意思就是说不需要做人为操作自己就会触发。 注意trigger...
    李悦之阅读 765评论 0 0
  • Janejsp阅读 186评论 0 0
  • 喜欢宫崎骏的"起风了"! 今天,北京大风,上班的路上,风吹起长发,空中飞扬。 一任大风吹乱发丝,在脸上,在眉间,画...
    11_18阅读 347评论 1 1