AutoSetup(
Layer: IMapLayer;
DataAdapter: Object;
Image: IGxImage;
ColCount: Integer;
RowCount: Integer;
Count: Integer);
Layer - слой, содержащий показатель.
DataAdapter - источник данных, в соответствии с которым будет определяться пиктограмма.
Image - изображение с пиктограммами для значений шкалы.
ColCount - количество столбцов в изображении с пиктограммами.
RowCount - количество строк в изображении с пиктограммами.
Count - количество делений шкалы.
Метод AutoSetup осуществляет автоматическую настройку шкалы.
Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента UiMap с наименованием «UiMap1», являющегося источником данных для компонента MapBox. К компоненту UiMap1 должна быть подключена карта. Также должен быть реализован класс VisualDataAdapter, создающий динамический источник данных. Пример данного класса содержится в описании свойства IMapVisual.DataAdapter. В файловой системе должен присутствовать файл «C:\Icons.gif», содержащий пиктограммы для шкалы.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
Map: IMap;
Layer: IMapLayer;
ImageVisual: IMapImageVisual;
ImageProp: IMapVisualIconProperty;
Scale: IMapIconScale;
Begin
Map := UiMap1.Map;
Layer := Map.Layers.FindByName("Regions");
ImageVisual := Layer.Visuals.AddImageVisual;
ImageVisual.DataAdapter := New VisualDataAdapter.Create As IMapDynamicDataAdapter;
ImageProp := ImageVisual.Image;
ImageProp.DataAdapter := ImageVisual.DataAdapter;
ImageVisual.Height.Value := 2;
ImageVisual.Width.Value := 2;
ImageProp.Dependent := True;
Scale := ImageProp.Scale;
Scale.AutoSetup(Layer, ImageVisual.DataAdapter, GxImage.FromFile("C:\Icons.gif"), 2, 1, 2);
End Sub Button1OnClick;
После выполнения примера на слой «Regions» будет добавлен пиктографический показатель. Шкала для него будет настроена автоматически:
Пиктограммы будут взяты из файла «C:\Icons.gif»: .
См. также: