【发布时间】:2011-08-18 18:49:26
【问题描述】:
现在,我正在尝试创建一个简单的应用程序,当您在屏幕上移动时,您的手指触摸的地方会出现一个正方形。我想使用opengl-es来做到这一点。我对它相当陌生,现在我坚持将触摸事件报告的窗口坐标映射到opengl-es拥有的笛卡尔平面坐标系。现在,为了获得 x 和 y 翻译,我正在使用:
final int x = (e.getX()-(getWidth()/2))/(getWidth()/2) * SOME_SCALING_FACTOR;
final int y = ((getHeight()/2)-e.getY())/(getHeight()/2) * SOME_SCALING_FACTOR;
这背后的逻辑是我认为笛卡尔平面以屏幕为中心,所以我试图以这种方式重新映射我的触摸事件坐标。但是,我的结果非常不准确。 我应该这样做吗?
【问题讨论】:
-
你能补充一下你的投影(相机)是如何设置的吗?