主要内容

本页采用了机器翻译。点击此处可查看英文原文。

projinv

x-y 地图坐标转换为纬度-经度坐标

说明

[lat,lon] = projinv(proj,x,y) 将由 xy 指定的地图坐标转换为由 proj 指定的投影坐标参考系中的纬度-经度坐标 latlon。使用 projcrs 对象 (自 R2020b 起)、地图投影结构或 GeoTIFF 信息结构来指定 proj

示例

示例

全部折叠

通过指定 x-y 坐标的投影坐标参考系 (CRS),将 x-y 坐标转换为纬度-经度坐标。然后,在地理坐标区上显示经纬度坐标。

为此,首先导入包含马萨诸塞州康科德市道路 x-y-坐标的 shapefile。获取关于 shapefile 的结构信息。通过访问结构体的 CoordinateReferenceSystem 字段,获取坐标的投影 CRS。

roads = shaperead("concord_roads.shp");
x = [roads.X];
y = [roads.Y];
info = shapeinfo("concord_roads.shp");
proj = info.CoordinateReferenceSystem;

x-y 坐标系转换为经纬度坐标系。

[lat,lon] = projinv(proj,x,y);

在地理坐标区上显示坐标。

figure
geoplot(lat,lon)
hold on
geobasemap streets

本示例中使用的 x-y 坐标的地理坐标参考系为 NAD83。您可以通过查询 GeographicCRS 属性来查找投影 CRS 所基于的地理坐标系。

proj.GeographicCRS.Name
ans = 
"NAD83"

'streets' 底图所采用的地理坐标参考系为 WGS84。NAD83 与 WGS84 相似,但并非完全相同。因此,在高缩放级别下,坐标与底图可能出现错位现象。

输入参数

全部折叠

地图投影,指定为 projcrs 对象 (自 R2020b 起)、标量地图投影结构 (mstruct) 或 GeoTIFF 信息结构。有关地图投影结构的更多信息,请参阅 defaultm。有关 GeoTIFF 信息结构的更多信息,请参阅 geotiffinfo

数据类型: struct

投影后的 x 坐标,指定为标量值、向量、矩阵或 N 维数组。xy 的大小必须匹配。

数据类型: single | double

投影后的 y 坐标,指定为标量值、向量、矩阵或 N 维数组。xy 的大小必须匹配。

数据类型: single | double

输出参量

全部折叠

大地纬度,以标量值、向量、矩阵或 N 维数组形式返回,单位为度。

lat 的地理坐标参考系与 proj 的地理坐标参考系相匹配。如果 projprojcrs 对象,则可通过查询其 GeographicCRS 属性获取其地理坐标系。例如,此代码演示了如何根据 EPSG 代码 32610 创建一个 projcrs 对象,并查找其关联的地理坐标参考系。

proj = projcrs(32610);
proj.GeographicCRS.Name
ans = 

    "WGS 84"

大地经度,以标量值、向量、矩阵或 N 维数组形式返回,单位为度。

lat 的地理坐标参考系与 proj 的地理坐标参考系相匹配。如果 projprojcrs 对象,则可通过查询其 GeographicCRS 属性获取其地理坐标系。例如,此代码演示了如何根据 EPSG 代码 32610 创建一个 projcrs 对象,并查找其关联的地理坐标参考系。

proj = projcrs(32610);
proj.GeographicCRS.Name
ans = 

    "WGS 84"

版本历史记录

在 R2006a 之前推出

全部展开