在Web開發中,經常需要用到平面坐標系和經緯度的轉化,Java提供了一些方便使用的函數來完成這一轉化。
平面坐標系是指二維空間中點的坐標,常用的是笛卡爾坐標系,其坐標系圖如下:
(y) ^ | | | |__________>(x)
而經緯度,則是用來描述地球表面上的點,常用的經緯度坐標系圖如下:
N | | W ----|--->E | | S
Java提供了將經緯度轉化為平面坐標系的方法,代碼如下:
public static Point2D.Double LatLngToPoint(double lat, double lng) { double x = (lng + 180) * (EarthRadius * Math.PI / 180) * Math.cos(lat * Math.PI / 180); double y = (EarthRadius * Math.PI / 180) * Math.sin(lat * Math.PI / 180); return new Point2D.Double(x, y); }
其中,EarthRadius為地球半徑,通常取6371km。
如果需要將平面坐標系轉化為經緯度,則可以使用如下代碼:
public static LatLng PointToLatLng(Point2D.Double point) { double x = point.x; double y = point.y; double lng = x / (EarthRadius * Math.PI / 180) / Math.cos(y / (EarthRadius * Math.PI / 180)); double lat = y / (EarthRadius * Math.PI / 180); return new LatLng(lat, lng); }
這些函數可以方便地在Web開發中使用,比如在地圖顯示中,需要將經緯度轉化為2D平面坐標系,以便顯示在屏幕上。
上一篇ajax 多次請求返回值
下一篇php 7.1.9安裝