使用D3将NZTM2000坐标变换为WGS84

Using D3 to transform NZTM2000 coordinates to WGS84

本文关键字:变换 WGS84 坐标 NZTM2000 D3 使用      更新时间:2023-09-26

我一直在尝试将新西兰使用的横向墨卡托投影(http://www.linz.govt.nz/data/geodetic-system/datums-projections-and-heights/projections/new-zealand-transverse-mercator-2000)的一些NZTM2000转换为WSG84纬度/经度坐标,但没有成功。

NZTM2000规格说明TM配置有以下参数:

  • 原点纬度:°00' 00" South
  • 原点经度/中心子午线:173°00' 00" East
  • 假北:10,000,000米北
  • 错误方位:160万米东
  • 中央子午线尺度因子:0.9996

我尝试在S3中使用它们:

var projection = d3.geo.transverseMercator()
    .rotate([origin_lat, origin_lng])
    .scale(scale_factor)
    .center([false_northing, false_esting])

(在其他方式中)。

我使用一个已知WGS84值的小数据子集:

NZTM2000                WSG84
---------------------   -------------------------------
Norting     Easting     Latitude        Longitude
5771280.5   1900560.5   38 09 22.691 S  176 25 48.538 E
5771280.5   1900570.5   38 09 22.679 S  176 25 48.948 E
5771280.5   1900571.5   38 09 22.678 S  176 25 48.989 E
5771280.5   1900572.5   38 09 22.677 S  176 25 49.030 E

帮忙吗?

Thank you so much

我终于找到了LINZ网站的解决方案。他们已经在http://www.linz.govt.nz/data/geodetic-services/download-geodetic-software#nztm2000上用C语言编写了算法。

然后又有人在https://github.com/leighghunt/nztm/blob/master/nztm/nztm.cs上把它移植到c#。

我将这个最新版本移植到JavaScript中,它运行得很好。

如果你想要我的版本就给我发短信。

=========你能在github上分享Javascript版本吗?我真的需要它