AutoSetup(
Layer: IMapLayer;
DataAdapter: Object;
Image: IGxImage;
ColCount: Integer;
RowCount: Integer;
Count: Integer);
Layer. The layer containing indicator.
DataAdapter. The data source that determines the icon.
Image. Image with icons for scale values.
ColCount. The number of columns in the image with icons.
RowCount. The number of rows in the image with icons.
Count. Number of scale tick marks.
The AutoSetup method executes the scale autoset.
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 file system should contain the C:\Icons.gif file with scale icons.
The example is a handler of the OnClick event for the Button1 component.
Add links to the Drawing, ExtCtrls, Forms, and Map system assemblies.
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;
After executing the example the icon indicator is added to the Regions layer. The indicator scale is set automatically:
![]()
The icons are obtained from the "C:\Icons.gif" file:
.
See also: