我正在使用ArcGIS Runtime SDK的第一版.Net - Xamarin.Forms(nuget package here)。
我的一个要求是在地图上显示基本比例线。我暂时还没有找到任何内置功能。 这看起来很棘手,因为每个设备都有不同的大小,不同的分辨率......有关如何实现这个的任何想法吗?
答案 0 :(得分: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";
};
完整解决方案here。