我想要的是 :
我正在使用方向传感器来获取方位角值(角度)。我也从用户那里获取起点并画一个圆圈。现在我想在用户前进的点上绘制下一个像素,考虑到一步等于 30 像素。
当用户开始行走时,我想在屏幕上插入的平面图图像上绘制用户当前位置的圆圈。由于某些原因,我无法将 GPS 用于此解决方案。
以下是我正在执行的步骤:
- 从方向传感器获取当前用户方向的角度。
- 用户将触摸屏幕以在图像上绘制起点。
- 当用户开始行走时,它将在图像上相对于用户的真实世界方向绘制点,如上图所示。仅给定起点(pixelX,pixelY)和用户的起始角度以及他刚刚面对的当前角度,我怎么能肯定地实现这一点。
到目前为止我们所取得的成就:我们可以在 4 个角度(即 0、90,180 和 270)上绘制直线,只需对当前像素添加和减去像素即可。
newAzimuth 是当前用户方向的角度
if (newAzimuth >= 45 && newAzimuth <= 135) {
startX = startX + oneStepPixelsWidth;
mScreenRotationTextView.setText("You turned (Right)");
} else if (newAzimuth > 135 && newAzimuth <= 225) {
mScreenRotationTextVniew.setText("You turned (Back)");
startY = startY + oneStepPixelsHeight;
} else if (newAzimuth > 225 && newAzimuth <= 315) {
mScreenRotationTextView.setText("You turned (Left)");
startX = startX - oneStepPixelsWidth;
} else if (newAzimuth > 315 || newAzimuth < 45) {
mScreenRotationTextView.setText("You turned (Front)");
startY = startY - oneStepPixelsHeight;
}

