AutoSetup(
Layer: IMapLayer;
DataAdapter:Object;
Values: Array;
Count: Integer;
Linear: Boolean);
Layer - слой, содержащий показатель.
DataAdapter - источник данных, в соответствии с которым будет производиться настройка шкалы.
Values - массив вещественных чисел для значений делений шкалы.
Count - количество делений шкалы.
Linear - параметр, определяющий тип настройки:
True. Линейный метод настройки.
False. Метод настройки, разбивающий диапазоны на равные интервалы.
Метод AutoSetup осуществляет автоматическую настройку шкалы.
Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с наименованием «Button1», компонента UiMap с наименованием «UiMap1», являющегося источником данных для компонента MapBox. К компоненту UiMap1 должна быть подключена карта. Также должен быть реализован класс VisualDataAdapter, создающий динамический источник данных. Пример данного класса содержится в описании свойства IMapVisual.DataAdapter.
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
Map: IMap;
Layer: IMapLayer;
BarVisual: IMapBarVisual;
Height: IMapVisualNumericProperty;
Scale: IMapNumericScale;
Vals: Array[3] Of Double;
Begin
Map := UiMap1.Map;
Layer := Map.Layers.FindByName("Regions");
BarVisual := Layer.Visuals.AddBarVisual;
BarVisual.DataAdapter := New VisualDataAdapter.Create As IMapDynamicDataAdapter;
Height := BarVisual.Height;
Height.DataAdapter := BarVisual.DataAdapter;
Height.Dependent := True;
Scale := New DxMapNumericScale.Create As IMapNumericScale;
Vals[0] := 2;
Vals[1] := 4;
Vals[2] := 6;
Scale.AutoSetup(Layer, BarVisual.DataAdapter, Vals, 3, True);
Height.Scale := Scale;
End Sub Button1OnClick;
После выполнения примера на слой «Regions» будет добавлен столбиковый показатель, для определения высоты которого используется шкала. Шкала будет настроена автоматически.
См. также: