Можно получить доступ и управлять геоданными с координатной сеткой с помощью или географических или внутренних растровых координат. Используйте файл russia.mat
, чтобы исследовать это. Север, юг, восток и западные пределы сопоставленной области могут быть определены можно следующим образом:
russia = load('russia','map','refvec'); R = refvecToGeoRasterReference(russia.refvec, size(russia.map)); R.LatitudeLimits R.LongitudeLimits
ans = 35 80 ans = 15 190
Отобразите карту России:
figure('Color','white') worldmap(R.LatitudeLimits,R.LongitudeLimits) cmap = jet(4); geoshow(russia.map,cmap,R)
Метод map.rasterref.GeographicCellsReference.intrinsicToGeographic
может использоваться, чтобы получить географические координаты в центре данной ячейки сетки. Например, рассмотрите ячейку в строке 23, столбце 79. Во внутренних растровых координатах центр этой ячейки расположен в:
xIntrinsic = 79; yIntrinsic = 23;
Это соответствует следующему местоположению в долготе широты, полученной с помощью метода intrinsicToGeographic
:
[lat, lon] = intrinsicToGeographic(R, xIntrinsic, yIntrinsic)
Ваш вывод появляется как это:
lat = 39.5000 lon = 30.7000
Метод geographicToIntrinsic
делает реверс, преобразовывающий от долготы широты до внутренних X и Y:
[xIntrinsic, yIntrinsic] = geographicToIntrinsic(R, lat, lon)
Ваш вывод появляется можно следующим образом:
xIntrinsic = 79 yIntrinsic = 23