exponenta event banner

Аннотирование веб-карты с информацией об измерениях

В этом примере показано, как использовать карту для получения информации о географическом элементе. Для иллюстрации в этом примере измеряется длина общего резервуара и добавляются некоторые маркеры и наложение линий, которые действуют как аннотации на карте.

Откройте веб-карту с центром на резервуаре Гросс к западу от Боулдера, штат Колорадо. Используйте тонированную топографическую карту USGS, чтобы получить уровень топографической детализации, необходимый для этого измерения.

webmap('usgsshadedtopographicmap') 
lat = 39.9428; 
lon = -105.3691; 
zoom = 14; 
wmcenter(lat,lon,zoom) 

Определите две точки на противоположных концах озера и получите широту и долготу этих точек. Чтобы получить эту информацию на веб-карте, наведите указатель мыши на местоположение на карте. В правом верхнем углу окна отображаются географические координаты точки.

Сохранение информации о широте и долготе в векторе геошейпа.

lat1 = 39.93504;
lon1 = -105.38069;
lat2 = 39.95226;
lon2 = -105.35892;
s = geoshape([lat1 lat2],[lon1 lon2])
s = 

 1×1 geoshape vector with properties:

 Collection properties:
     Geometry: 'line'
     Metadata: [1×1 struct]
 Vertex properties:
     Latitude: [39.9350 39.9523]
    Longitude: [-105.3807 -105.3589]

Рассчитайте расстояние между двумя точками, чтобы получить длину резервуара. Используйте distance функция, которая вычисляет расстояние между точками сферы или эллипсоида.

d = distance(s.Latitude(1),s.Longitude(1),s.Latitude(2), ...
    s.Longitude(2),wgs84Ellipsoid)
d =

   2.6678e+03

Отображение линии между двумя точками. Включить информацию о длине озера в информационный шарик строки. Сохраните расстояние и информацию о единицах измерения в виде двух динамических полей, добавленных к вектору геошейпа.

s.Distance = round(d);
s.Units = 'meters';

wmline(s,'Color','red','FeatureName','Length of Gross Reservoir', ...
    'Overlayname','Transect');

См. также

| | | | | | |

Связанные темы