簡體   English   中英

轉換緯度/經度為MGRS

[英]Convert Lat/Lon to MGRS

有誰知道我在哪里可以找到將緯度/經度位置轉換為軍事網格參考系統(MGRS)的代碼庫? 如果可能,我正在尋找C#實現。

我們最終使用了GeoTrans,並從代碼中創建了一個DLL,並使用PInvoke調用了這些函數。 如果有人想知道(最小解決方案),我們從源中刪除了以下內容:

  • 極地
  • 轉錄
  • UPS
  • utm
  • 管理者

我們使用的PInvoke簽名:

[DllImport("mgrs.dll")]
public static extern int Convert_Geodetic_To_MGRS(
   double Latitude,
   double Longitude,
   int Precision, // 1 to 5, we used 4 (10 square meters)
   StringBuilder MGRS);

對應於mgrs.h中的此功能:

MGRSDLL_API long __stdcall Convert_Geodetic_To_MGRS(
   double Latitude,
   double Longitude,
   long Precision,
   char* MGRS);

您可以使用GDAL的C#包裝器將經/緯度轉換為UTM。 然后,您只需要為MGRS適當地設置值的格式,因為它只是具有不同數字格式的UTM。

在js上找到它是否有幫助...

https://github.com/codice/usng.js

用法-

var converter = new usngs.Converter();
alert(converter.LLtoMGRS(33.754032, -98.451233, 9));

CoordinateSharp可作為Nuget包提供,並且可以做到這一點。

Coordinate c = new Coordinate(40.57682, -70.75678);
c.MGRS.ToString(); // Outputs 19T CE 51307 93264

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM