我正在处理要在我的程序中使用的一般旋转功能。我使用 atan2(y, x) 函数来获取角度。由于原点位于我的 Nexus S 的左上角,我实际上使用 atan2(-y, x) 在 atan2 中获得正确的结果。否则我会得到错误的旋转方向。例如,从 P0(5,1) 移动到 P1(1, 5) 在我的 android 中是顺时针方向,在正常象限中是逆时针方向。
我的假设是原点在所有 Android 设备的左上角。是否正确?
最佳答案
是的,原点总是在屏幕空间的左上角。这是有历史原因的,因为屏幕空间计算是在电视机用作屏幕时开始的。电视的光栅枪是从左上角开始的,所以接受了这个作为原点。
该规则有一些值得注意的异常(exception)(尽管不适用于 android 设备)- cocoa 界面似乎起源于左下角。
关于android - 左上角所有安卓设备的屏幕上都是原点吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13082315/