Latitude: IMapVisualNumericProperty;
Свойство Latitude возвращает параметры широты маркера геолокации.
Для работы с параметрами долготы маркера геолокации используйте свойство IMapMarkerVisual.Longitude.
Для выполнения примера предполагается наличие формы, содержащей компонент MapBox с идентификатором «MapBox1» и компонента UiMap с идентификатором «UiMap1». Компонент «UiMap1» должен содержать подключенную карту и являться источником данных для компонента «MapBox1».
Также в примере используется класс VisualDynamicDataAdapter, описание которого приведено в IMapTimeDynamicDataAdapter.Data.
Добавьте ссылки на системные сборки: Drawing, Metabase.
Sub UserProc;
Var
Map: IMap;
Layer: IMapLayer;
MarkerVis: IMapMarkerVisual;
Color: IMapVisualColorProperty;
ColorCollection: IMapColorCollection;
NumProp: IMapVisualNumericProperty;
ItemsNames: Array[1] Of string;
Begin
// Получаем карту
Map := UiMap1.Map;
// Получаем слой «Regions»
Layer := Map.Layers.FindByName("Regions");
// Добавляем маркер геолокации
MarkerVis := Layer.Visuals.AddMarkerVisual;
MarkerVis.BeginUpdate;
// Задаем источник данных для маркера
MarkerVis.DataAdapter := New VisualDynamicDataAdapter.Create As IMapTimeDynamicDataAdapter;
MarkerVis.Visible := True;
// Задаем цвет маркера
Color := MarkerVis.Color;
Color.Dependent := False;
ColorCollection := Color.Values;
ColorCollection.Count := 1;
ColorCollection.Item(0) := GxColor.FromName("Blue");
// Задаем долготу маркера
NumProp := MarkerVis.Longitude;
NumProp.Dependent := False;
NumProp.Value := 41.850033;
// Задаем широту маркера
NumProp := MarkerVis.Latitude;
NumProp.Dependent := False;
NumProp.Value := -87.6500523;
// Задаем название маркера
ItemsNames[0] := "Маркер геолокации";
MarkerVis.ItemsNames := ItemsNames;
MarkerVis.EndUpdate;
End Sub UserProc;
После выполнения примера на карту будет добавлен маркер геолокации.
См. также: