[Windwos Phone] 实作地图缩放 MapAnimationKind 属性效果

原文:[Windwos Phone] 实作地图缩放 MapAnimationKind 属性效果

[前言]

使用经纬度来定位地图的位置,以及使用 MapAnimationKind 属性来设定地图缩放时的动画。

?

[成品]

?? ?? ??

?

[范例]

Step1. 新增 Windows Phone 应用程式专案。

?

Step2. 指定应用程式使用 ID_CAP_MAP 功能

方案总管 -->Properties 资料夹--> WMAppManifest.xml --> 功能 --> 勾选ID_CAP_MAP。

?

Step3. 加入地图的命名空间。

xmlns:maps="clr-namespace:Microsoft.Phone.Maps.Controls;assembly=Microsoft.Phone.Maps"

?

Step4. 画面设计

  1. maps:Map-->Name="map",Heading="0",Center="25.0405,121.5146",ZoomLevel="10",Margin="0,61,0,10"
  2. Button-->Name="btCenter",Content="置中",Margin="0,-11,339,546"
  3. Button-->Name="btAnom",Content="缩放动画",Margin="106,-11,202,546

?

XAML 程式码:

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
            <maps:Map x:Name="map" Heading="0" Center="25.0405,121.5146" ZoomLevel="10" Margin="0,61,0,10"/>
            <Button Name="btCenter" Content="置中" Margin="0,-11,339,546"/>
            <Button Name="btAnom" Content="缩放动画" Margin="106,-11,202,546"/>
        </Grid>

?

Step5. 产生btCenter / btAnom 按钮的 Click 事件。

// 建构函式
        public MainPage()
        {
            InitializeComponent();
            //产生btCenter / btAnom Click事件,+=後按下 Tab 2下产生事件
            btCenter.Click += btCenter_Click;
            btAnom .Click+= btAnom_Click;
        }

?

Step6. btCenter / btAnom 的 Click 事件内容。

private void btCenter_Click(object sender, RoutedEventArgs e)
        {
            //把位置(25.0405, 121.5146)的位置设置在中间
            map.Center = new GeoCoordinate(25.0405, 121.5146);
            //地图的比例为12
            map.ZoomLevel = 12;
        }

        private void btAnom_Click(object sender, RoutedEventArgs e)
        {
            //设置地图在缩放时显示动画的效果
            map.SetView(new GeoCoordinate(25.0405, 121.5146), 16, MapAnimationKind.Parabolic);
        }

?

[相关参考与引用]

Map.SetView Method (GeoCoordinate, Double, Double, MapAnimationKind)

?

[范例下载]

Map 缩放.rar

posted on 2013/11/24 01:28 |
阅读数 : 965
|

2 人推荐

我要推荐

|
Add Comment

| 文章分类 [

Windows Phone

]

|
订阅

时间: 2024-10-18 06:10:34

[Windwos Phone] 实作地图缩放 MapAnimationKind 属性效果的相关文章

scale-echarts地图缩放级别问题

问题描述 echarts地图缩放级别问题 目标效果:使用鼠标滚轮放大和缩小地图,在地图放大到一定比例之后,显示隐藏的标记(类似百度地图,放大之后能显示银行.大楼这种,当然我知道实现方式不一样). 翻看了echarts的全部api,发现只有一个scaleLimit的值可以控制放大和缩小的范围,但是没有找到能获得scale值的方法,请问echarts有没有这个值,如果没有,底层画图的时候是怎么实现按照浏览器的大小自适应地图大小的. 解决方案 echarts.chart.map._mapDataMap

百度地图限制地图缩放级别

问题描述 百度地图限制地图缩放级别 怎么实现限制地图缩放级别例如:当地图的范围放大到100公里时再进行放大就放大不了 解决方案 关于百度地图缩放级别百度地图根据定位精度设置地图缩放android 百度地图的缩放比例尺 解决方案二: var map = new BMap.Map(""allmap""{minZoom:5maxZoom:8}); // 创建Map实例设置地图允许的最小/大级别

google map api 类似安居客的的地图找房查询效果

问题描述 google map api 类似安居客的的地图找房查询效果 解决方案 google不是被墙了吗 现在大家应该都在用百度的吧

基于OL2实现百度地图ABCD marker的效果_javascript技巧

本文概述: 上文中提到了在Arcgis for JS中实现百度地图ABCD的marker效果,在本文,讲述如何在OpenLayers2中实现类似的效果. 效果图展示如下: 为直观期间,先将效果贴出来. 联动展示 思路: 1.列表与地图的互动 鼠标经过列表时,修改列表图标,并根据列表返回的值在地图上绘蓝色的marker:鼠标移出,修改列表图标为红色,清空地图marker图层. 关键代码: title.on("mouseover",function(){ var i = $(this).a

高德地图缩放展示不同标注信息

问题描述 高德地图缩放展示不同标注信息 使用高德地图实现类似搜房网地图找房功能:http://newhouse.fang.com/house/s/list/,不同的缩放标准显示的标注信息是不一样的. 后台服务应该如何给前端提供数据服务,是每次缩放都给一个数据结构,还是一次性给完,前端自己做处理.

急切求助,怎么做出一个像网络游戏在地图中走动的效果!谢谢各位啦!

问题描述 本人接触C#不久,想做一个像网络游戏一样人在地图中走动的效果请求帮助!谢谢大家! 解决方案 解决方案二:强人啊你接触不久就要做3d啦我做不到楼下继续解决方案三:也不一定要达到那种效果只要能在图中走动就行人要立体化谢谢了

基于Arcgis for javascript实现百度地图ABCD marker的效果_javascript技巧

先给大家展示实现后效果: 为直观期间,先贴出来我做的效果 列表展示和地图展示以及联动 显示信息 实现思路: 1.列表与地图的互动 鼠标经过列表时,修改列表图标,并根据列表返回的值在地图上绘蓝色的marker:鼠标移出,修改列表图标为红色,清空地图marker图层. 关键代码: title.on("mouseover",function(){ var attr = $(this).data("attr"); $("#icon"+attr.id).c

Android实现手势滑动多点触摸缩放平移图片效果(二)

上一篇已经带大家实现了自由的放大缩小图片,简单介绍了下Matrix:具体请参考:Android实现手势滑动多点触摸缩放平移图片效果,本篇继续完善我们的ImageView. 首先加入放大后的移动. 1.自由的进行移动 我们在onTouchEvent里面,加上移动的代码,当然了,必须长或宽大于屏幕才可以移动~~~ @Override public boolean onTouch(View v, MotionEvent event) { mScaleGestureDetector.onTouchEve

NY 41X41 - 用诺基亚 Lumia 1020 拍摄的无限缩放短片,效果惊人

class="post_content" itemprop="articleBody"> 近日,美国电影制作人 Paul Trillo 使用 Lumia 1020 拍摄了一部名为" NY 41X41" 的短片,场景是在纽约曼哈顿,穿过41个街区,利用 4100万像素的 Lumia 1020 的无损缩放实现41张照片拼接起来的"无限缩放"短片,效果十分惊人-- Trillo 称,拍摄这部短片的灵感源于他与诺基亚团队的一次谈