Чтобы спроектировать или не спроектировать расположенные с равными интервалами растровые данные, которые сопоставлены с географическим или объектом ссылки карты, необходимо сначала создать координатную сетку, которая совпадает с размером растра. Используйте различные функции создания сетки, в зависимости от которого пути вы проектируете. Когда вы проектируете координаты долготы широты к координатам x-y, создаете сетку с помощью meshgrat
функция. Когда вы не проектируете координаты x-y к координатам долготы широты, создаете сетку с помощью meshgrid
и intrinsicToWorld
функции.
После преобразования растровых данных можно отобразиться, это на карте с помощью визуализации функционирует такой как mapshow
и geoshow
Использование mapshow
для спроектированных координат x-y и geoshow
для неспроектированных координат долготы широты.
Данные о проекте, которые сопоставлены с географическим объектом растровой привязки, сначала создайте сетку координат долготы широты для каждой точки в растре. Затем спроектируйте географические координаты к координатам карты x-y.
Например, импортируйте растровые данные о вертикальном изменении как массив и географический объект ссылки ячеек. Получите координаты долготы широты для каждой точки в растре при помощи meshgrat
функция.
[Z,R] = readgeoraster('n39_w106_3arc_v2.dt1');
[lat,lon] = meshgrat(Z,R);
Теперь, когда у вас есть своя сетка, выберите проекцию карты, чтобы использовать при проектировании координат. В данном примере создайте projcrs
объект для зоны UTM 13 в северном полушарии. Затем спроектируйте координаты долготы широты к координатам x-y.
p = projcrs(32613); [x,y] = projfwd(p,lat,lon);
Отобразите спроектированный растр как поверхность путем вызова mapshow
и определение координат x-y и массива вертикального изменения. Добавьте подписи по осям и примените палитру, подходящую для данных о вертикальном изменении.
figure mapshow(x,y,Z,'DisplayType','surface') xlabel('x (meters)') ylabel('y (meters)') demcmap(Z)
Если географический CRS координат долготы широты не совпадает с географическим CRS спроектированного CRS, то спроектированные координаты могут быть неточными. Можно найти географический CRS projcrs
возразите или географический объект растровой привязки путем запроса их GeographicCRS
свойства.
p.GeographicCRS.Name
ans = "WGS 84"
R.GeographicCRS.Name
ans = "WGS 84"
Файл DTED, используемый в этом примере, является любезностью Геологической службы США.
Данные о непроекте, которые сопоставлены с объектом растровой привязки карты, сначала создайте сетку координат x-y для каждой точки в растре. Затем не спроектируйте координаты карты x-y к географическим координатам.
Например, импортируйте изображение Бостона как массив и объект ссылки ячеек карты. Получите информацию о проекции карты как projcrs
объект путем запроса ProjectedCRS
свойство ссылочного объекта.
[Z,R] = readgeoraster('boston.tif');
p = R.ProjectedCRS;
Создайте координатную сетку путем получения координат x-y для каждой точки в растре. Для этого сначала создайте сетку внутренних координат, которая совпадает с размером растра при помощи meshgrid
функция. Внутренние y-координаты увеличиваются от строки до строки, и внутренние x-координаты увеличиваются от столбца до столбца. Затем преобразуйте внутренние координаты к координатам x-y при помощи intrinsicToWorld
функция.
s = size(Z); [xIntrinsic,yIntrinsic] = meshgrid(1:s(2),1:s(1)); [x,y] = intrinsicToWorld(R,xIntrinsic,yIntrinsic);
Не спроектируйте координаты x-y к координатам долготы широты при помощи projinv
функция и определение projcrs
объектная и координатная сетка.
[lat,lon] = projinv(p,x,y);
Отобразите неспроектированное изображение путем вызова geoshow
и определение координат долготы широты и матрицы изображений. По умолчанию, geoshow
координаты отображений с помощью Топкого места Пластиныe проекция. Затем добавьте подписи по осям.
figure geoshow(lat,lon,Z) xlabel('Longitude (degrees)') ylabel('Latitude (degrees)')
intrinsicToWorld
| meshgrat
| meshgrid
| projfwd
| projinv