AutoSetup(
Layer: IMapLayer;
DataAdapter:Object;
Values: Array;
Count: Integer;
Linear: Boolean);
Layer. The layer containing indicator.
DataAdapter. The data source, according to which scale is set up.
Values. Array of real numbers used for scale tick mark values.
Count. Number of scale tick marks.
Linear. The parameter that determines setup type.
The AutoSetup method executes the scale autoset.
Available values of the Linear parameter:
True. Linear setup method.
False. Setup method dividing ranges into equal intervals.
Executing the example requires a form with the following components: the Button component named Button1, the MapBox component named MapBox1, and the UiMap component named UiMap1. UiMap1 is a data source for MapBox1. A map should be connected to the UiMap1 component. The VisualDataAdapter class that creates a dynamic data source should also be implemented. The class example is contained in the IMapVisual.DataAdapter property description.
The example is a handler of the OnClick event for the Button1 component.
Add links to the ExtCtrls, Forms, and Map system assemblies.
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;
After executing the example the bar indicator, which height is determined using the scale, is added to the Regions layer. The scale autoset is executed.
See also: