0

我正在使用适用于 .Net 的 ArcGIS Runtime SDK 的第一个版本 - Xamarin.Forms(此处为 nuget 包)。

我的要求之一是在地图上显示一条基本比例线。目前我还没有找到任何内置功能。这似乎很棘手,因为每个设备都有不同的尺寸,不同的分辨率......关于如何实现这个的任何想法?

4

1 回答 1

2

好几个小时后,我发现该MapView组件有一个UnitsPerPixel完全符合我需要的属性:

我添加了一个固定宽度的小网格(代表比例):

<Grid  HeightRequest="10" WidthRequest="114" x:Name="Legend">
...
</Grid>

然后当视点改变时,我计算这个网格表示的距离:

MapView.ViewpointChanged += (sender, args) =>
{
    ScaleVal.Text = $"{Math.Round(Legend.Width * MapView.UnitsPerPixel, 0)}m";
};

ArcGIS .Net SDK - Xamarin.Forms - 比例线

完整的解决方案在这里

于 2016-12-19T18:50:38.223 回答