android - 左上角所有安卓设备的屏幕上都是原点吗?

标签 android rotation screen

我正在处理要在我的程序中使用的一般旋转功能。我使用 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/

相关文章:

android - 为什么 AudioManager.isStreamMuted 不可用?

android - 3D旋转-透视

CSS根据宽度/固定像素值旋转

android - 在屏幕锁定时启动 gps

javascript - Mozilla Firefox 程序化屏幕捕获

java - 通过网络发送 Activity 信息

java - jbyteArray 和 jbyte 指针的区别

android - 加载一个 vermagic 不匹配的 android 内核模块

javascript - 使用 three.js 应用相机位置和旋转

angularjs - 如何使用 karma 和 jasmine 测试 screen.width 条件