首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

问一个openGL反馈(选择)模式的有关问题

2012-09-22 
问一个openGL反馈(选择)模式的问题我用opengl的反馈模式碰到一个问题,百思不得其解,或许是我的需求不符合o

问一个openGL反馈(选择)模式的问题


我用opengl的反馈模式碰到一个问题,百思不得其解,或许是我的需求不符合opengl的设计?
在这个图中,黄色的是一个矩形,矩形内部有一个直线,红色的框是选择区域
这种情况下,选择模式返回2个实体,1个是黄色的矩形,一个是黑色直线,然后分别获得它们2个的较小的深度值(反馈出来的)
但这时由于视角的问题,在红色框里黄色的矩形的深度范围要小于直线,那么优先选到矩形,但我这需要优先选到直线,因为直线在矩形内部,如果这样无法选到它,那就很难选择到它了(不可能将直线单独放入到选择区中)

这样的情况该如何处理

[解决办法]
先画矩形,直线绘制矩形平面上的话,应该是先选到直线才对,方便给出代码吗?
[解决办法]
我觉得你应该遍历红色举行中所有的像素深度,只要有一个的深度对应黑线,那么就选择黑线,这相当于手动给与黑线更高的选择优先级。
[解决办法]
你的图挂了……看不见
[解决办法]
选择黑线,你不用点中黑线吗,还是点他周围那点区域,不选中就是没选择黑线啊
若是选中黑线,黑线与他"身边"的黄色比较z轴还是要高的,再转90度到背面了,正好反过来
[解决办法]
gl_select好象是返回一个数组的,你判断里面是否有直线就可以了
[解决办法]

探讨

引用:

我觉得你应该遍历红色举行中所有的像素深度,只要有一个的深度对应黑线,那么就选择黑线,这相当于手动给与黑线更高的选择优先级。


如何判断某个像素对应黑线呢?

热点排行