exponenta event banner

projfwd

Проецировать координаты широты-долготы на координаты карты x-y

Синтаксис

Описание

пример

[x,y] = projfwd(proj,lat,lon) преобразует координаты широты-долготы, указанные lat и lon в x и y отображение координат в спроецированной системе координат, указанной proj. Определить proj использование projcrs объект (начиная с версии R2020b), структура проекции карты или информационная структура GeoTIFF.

Примеры

свернуть все

Спроецируйте координаты широты-долготы на координаты x-y путем задания проекции карты. Затем отобразите спроецированные координаты на карте.

Для этого сначала укажите координаты широты и долготы ориентиров в Бостоне. Укажите координаты в NAD83 географической CRS.

lat = [42.3604 42.3691 42.3469 42.3480 42.3612];
lon = [-71.0580 -71.0710 -71.0623 -71.0968 -71.0941];

Затем импортируйте изображение GeoTIFF Бостона в виде массива и ссылочного объекта ячеек карты. Получение информации о проекции карты путем запроса ProjectedCRS свойства ссылочного объекта. Убедитесь, что географическая CRS, лежащая в основе проектируемой CRS, является NAD83.

[A,R] = readgeoraster('boston.tif');
proj = R.ProjectedCRS;
proj.GeographicCRS.Name
ans = 
"NAD83"

Спроецируйте координаты широты-долготы на координаты x-y с использованием той же проекции CRS, что и изображение GeoTIFF.

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

Отображение изображения GeoTIFF и спроецированных координат на одной карте. Измените обозначение маркера и цвет координат, чтобы они были более видимыми. Затем добавьте метки осей.

mapshow(A,R)
mapshow(x,y,'DisplayType','point','Marker','o', ...
    'MarkerFaceColor','y','MarkerEdgeColor','none')
xlabel('x (survey feet)')
ylabel('y (survey feet)')

Входные аргументы

свернуть все

Проекция карты, заданная как projcrs объект (начиная с R2020b), структура проекции скалярной карты (mstruct) или информационной структурой GeoTIFF. Дополнительные сведения о проекционных структурах карты см. в разделе defaultm. Дополнительные сведения о структурах информации GeoTIFF см. в разделе geotiffinfo.

Типы данных: struct

Геодезические широты, заданные как скалярное значение, вектор, матрица или массив N-D, в единицах градуса. Размер lat и lon должно совпадать.

Типы данных: single | double

Геодезические долготы, заданные как скалярное значение, вектор, матрица или массив N-D, в единицах градуса. Размер lat и lon должно совпадать.

Типы данных: single | double

Выходные аргументы

свернуть все

Спроецированные координаты x, возвращаемые в виде скалярного значения, вектора, матрицы или N-D массива.

Спроецированные координаты y, возвращаемые в виде скалярного значения, вектора, матрицы или N-D массива.

Совет

Если географическая CRS lat и lon не соответствует географической CRS proj, то значения x и y может быть неточным. Когда proj является projcrs объект, вы можете найти его географический CRS, запросив его GeographicCRS собственность. Например, в этом коде показано, как создать projcrs объект из кода 32610 EPSG и найти соответствующий географический CRS.

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

    "WGS 84"
Представлен до R2006a