如果我像这样从纬度和经度计算 X 和 Y 轴:
private static final int EARTH_RADIUS = 6371;
private static final double FOCAL_LENGTH = 500;
latitude = latitude * Math.PI / 180;
longitude = longitude * Math.PI / 180;
double x = EARTH_RADIUS * Math.sin(latitude) * Math.cos(longitude);
double y = EARTH_RADIUS * Math.sin(latitude) * Math.sin(longitude);
double z = EARTH_RADIUS * Math.cos(latitude);
double projectedX = x * FOCAL_LENGTH / (FOCAL_LENGTH + z);
double projectedY = y * FOCAL_LENGTH / (FOCAL_LENGTH + z);
我将如何确保在屏幕内绘制 X 和 Y 点?即,屏幕是否代表世界的 2d 视图,这样您将永远无法从屏幕上画出一个点?
纬度和经度是范围从 -90 到 90 和 -180 到 180 的值。
我不想使用谷歌服务 - 没有 MapView 或任何与谷歌地图相关的东西......
任何帮助,将不胜感激!