В этом примере показано, как использовать encodem функция с точками seed, найденными с помощью getseeds функционируйте, чтобы заполнить несколько многоугольников после того, как они будут с координатной сеткой. Пример извлекает данные для Индианы и ее окружающих состояний, и затем удаляет нежелательные области этих многоугольников с помощью maptrimp .
Извлеките данные для Индианы и ее соседей путем передачи их имен в массиве ячеек к shaperead.
pcs = {'Indiana', 'Michigan', 'Ohio', 'Kentucky', 'Illinois'};
centralUS = shaperead('usastatelo.shp',...
'UseGeoCoords', true,...
'Selector',{@(name)any(strcmpi(name,pcs),2), 'Name'});
meLat = [centralUS.Lat];
meLon = [centralUS.Lon];Растеризируйте обрезанные многоугольники в разрешении с 1 минутой дуги (60 ячеек на степень), также дав вектор ссылки.
[meGrid, meRefVec] = vec2mtx(meLat, meLon, 60);
Настройте фигуру карты и отобразите бинарную сетку, которую вы только создали.
figure axesm eqdcyl geoshow(meLat, meLon, 'Color', 'black');

Используйте getseeds функционируйте, чтобы выбрать пять точек seed, один в каждых из основ Индианы, Мичигана, Огайо, Кентукки и Иллинойса. getseeds функционируйте изменяет курсор в крест нитей. Вы выбираете точки seed путем расположения курсора в государственной границе и щелчка мышью. getseeds функция возвращает управление в командную строку после того, как вы выберете пять мест в окне рисунка.
[row,col,val] = getseeds(meGrid, meRefVec, 5, [3 4 5 6 7]);
Заполните каждое состояние уникальным значением, произведя новую сетку, с помощью encodem функция.
meGrid5 = encodem(meGrid, [row col val], 1);
Отобразите meGrid5 видеть результат.
clma meshm(meGrid5, meRefVec)
