我正在处理的应用程序需要 4 像素的条形高度和全屏尺寸宽度。我需要能够选择这个 4px 条并移动它。我也不能改变这个栏的大小,它的高度必须是 4px。
如果我不使用 OpenGL 创建对象,这将不是什么大问题。OpenGL 显然没有自己的选择功能,所以我需要自己编程。
最初经过研究,我构建了一个颜色选择器来识别对象。我的颜色选择器是如何工作的x
,y
我的手指触摸返回的touchesBegan:
是我从 OpenGL 视图的屏幕截图中抓取的像素。问题在于手指的位置根本不精确。如果我用鼠标,它就完美了……
我决定可能循环通过选定的缓冲区x
,y
但不幸的是,当 OpenGL 视图的屏幕截图存储在内存中并且缓冲区返回我的对象颜色的几种阴影时,图像会发生抗锯齿。我可以做一个比较颜色查找,看看它是否在颜色范围内,但这似乎过于复杂,因为我已经做了多少。另外,通过缓冲区骑自行车并不快。
我也想过也许只是记住我的线条在屏幕上的位置,如果我的手指靠近那个位置,就知道那是我想要选择并移动它的那个位置。
这个应用程序的未来最多可以有 4 行,就像这样,我想要更安全的东西,而不是只知道它在内存中的位置。
有什么更好的方法来处理小对象的选择?