如何通过图钉调整Windows Phone 8.1地图的缩放级别

3

我正在使用Windows Phone 8.1(RT)应用程序中的地图控件,我的地图上有两个自定义推钉,一个位于起始地址,另一个位于目的地址。我想根据这两个推钉来改变缩放级别,也就是说,这两个钉子都显示在屏幕上,并显示路径。我的当前缩放级别是

 mapLocation.ZoomLevel = 14;

我想根据位置改变缩放级别。

1
请查看此链接:http://stackoverflow.com/questions/18085382/windows-phone-get-zoom-level-from-distance - csharpwinphonexaml
1个回答

1
你可以使用GeoboundingBox.TryCompute计算 WinRt 中多个标记(位置)的边界,然后将地图视图设置为这些边界。
        try
        {
        Geopoint sourcePoint = --Source point here--;
        Geopoint destPoint= --Dest point here--;

                //Calculate Boundries
                var locations = new List<BasicGeoposition>();
                locations.Add(sourcePoint.Position);
                locations.Add(destPoint.Position);
                var boundries = GeoboundingBox.TryCompute(locations);
                await SMapControl.TrySetViewBoundsAsync(boundries, new Thickness(100), MapAnimationKind.None);
        }
        catch(Exception)
        {
            // ignored
        }

请注意 TrySetViewBoundsAsync 方法的第二个参数是添加到计算出的边界周围的空白边距。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接