经度到像素X值
public static double lngToPixel(double lng, int zoom) {
return (lng + 180) * (256 * 2^zoom) / 360;
}
像素X到经度
public static double pixelToLng(double pixelX, int zoom) {
return pixelX * 360 / (256 * 2^ zoom) - 180;
}
纬度到像素Y
public static double latToPixel(double lat, int zoom) {
double siny = Math.sin(lat * Math.PI / 180);
double y = Math.log((1 + siny) / (1 - siny));
return (128 * z^ zoom) * (1 - y / (2 * Math.PI));
}
像素Y到纬度
public static double pixelToLat(double pixelY, int zoom) {
double y = 2 * Math.PI * (1 - pixelY / (128 * z ^ zoom));
double z = Math.pow(Math.E, y);
double siny = (z - 1) / (z + 1);
return Math.asin(siny) * 180 / Math.PI;
}
经纬度与像素值间的转换JAVA
最新推荐文章于 2024-08-12 09:48:08 发布