查看: 2099|回复: 2

请教:可视域分析的解决方案

[复制链接]

该用户从未签到

发表于 2010-5-18 08:52:38 | 显示全部楼层 |阅读模式
大家好,我想做一个可视域分析的功能。功能具体描述是这样的:



在场景中选定任意一点,作为视点的位置(任意假设的视点,并不是当前相机位置)。以该视点为中心,以视点所在高度的水平面为平面,以某一半径作为最大可视距离形成在该水平面内形成一个圆,判断在这个圆形区域内,哪些部分是可见的,并把可见和不可见的区域范围用不同的颜色渲染,以示区别。



本人考虑一个方法是采用场景求交算法:以假设视点为起点,每隔一定间隔弧度在该圆上取一点作为终点,将由这样的起点和终点构成的线段与场景进行求交,获取线段与场景的第一个交点。将视点和第一个交点之间的线段绘制为绿线,表示可见;将第一个交点和终点的线段绘制为绿线,表示不可见。



当角度间隔足够小时,可以近似模拟出整个圆内的可视情况。



目前这个方案还没有用OSG去实现,具体可不可行,效率如何也不可知。这里想请教大家,在OSG中有什么更好的方法能够实现上面描述的功能。或者大家对于可视域分析的功能有什么好的意见或建议也可以提出来,并且最好是能说明实现的大致思路。



谢谢。

该用户从未签到

发表于 2010-5-18 08:57:32 | 显示全部楼层
这是比较基本的GIS分析了,我这里做过,没有什么特别要注意的,也没有什么“不可行”的,只要您自己觉得效果满意就可以了

该用户从未签到

 楼主| 发表于 2010-5-18 15:56:11 | 显示全部楼层
谢谢Array,我今天试验了一下,基本原理和我上面描述的一样,将获得的多个求交计算的首交点记录下来,以这些交点为顶点绘制多边形,能实现初步的可视区域的判断。再继续优化。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表