經緯度是地理坐標系統的兩個基本組成部分,用於在地球表面定位點。經度是東西方向的度量,以本初子午線(0°經度)為基準,向東至180°,向西至-180°;緯度是南北方向的度量,以赤道(0°緯度)為基準,向北至90°(北極),向南至-90°(南極)。
經緯度轉換成平面坐標的公式為:x=R*cos(latitude)*cos(longitude);y=R*cos(latitude)*sin(longitude),其中R為地球半徑,假設為6371km。例如,將經度為30.2672,緯度為-97.7431的坐標轉換為平面坐標,假設地球半徑為6371km,則可以通過代碼實現:const lat = -97.7431 * Math.PI / 180;const lng = 30.2672 * Math.PI / 180;const R = 6371;const x = R * Math.cos(lat) * Math.cos(lng);const y = R * Math.cos(lat) * Math.sin(lng);console.log(x, y)。
平面坐標轉換成經緯度的公式為:latitude=asin(y/R);longitude=atan2(x,y),其中asin函式的值為弧度制,需要將其轉化為角度制;atan2函式的值為角度制。經度的範圍是-180到180度,緯度的範圍是-90到90度。例如,假設已知坐標(2565.6721748380895, 4291.611282443771),將其轉換為經度為30.2672,緯度為-97.7431的坐標:const x = 2565.6721748380895;const y = 4291.611282443771;const R = 6371;const lat = Math.asin(y / R) * 180 / Math.PI;const lng = Math.atan2(x, y) * 180 / Math.PI;console.log(lat, lng)。