本例要实现的功能分成“查询”和“定位”两部分,查询功能通过调用XML文件的数据一一比对实现。定位功能通过将地图进行适当的缩放和移动,将被查询到的地名显示在窗口的中央位置来实现。

  制作步骤:

  制作如图所示的界面;

  

  图1 查询功能的界面

  用input_txt动态文本框接收输入的地名名称。用载入的外部文件XMLData.xml,依次将地名与input_txt.text比较,如果两个地名相符,取相对应的X、Y轴坐标值,将地图做相应的缩放及移动操作。在本例中地图将做放大50倍,同时将地图中心移动至被查询的地名。

  XMLData.xml的内容如下:

(略)……

<r><n>金鼎辉煌世纪</n><x>37488</x><y>33882</y></r>

<r><n>文锦大厦</n><x>38194</x><y>33651</y></r>

<r><n>联城联合大厦</n><x>38402</x><y>33771</y></r>

<r><n>外贸轻工大厦</n><x>38233</x><y>32624</y></r>

<r><n>友联工业大厦</n><x>13802</x><y>43238</y></r>

<r><n>罗湖中学</n><x>37225</x><y>34520</y></r>

<r><n>东莞外贸大厦</n><x>37314</x><y>33971</y></r>

<r><n>丽都大厦</n><x>37442</x><y>33995</y></r>

<r><n>东乐大厦</n><x>37746</x><y>33549</y></r>

<r><n>鸿昌广场</n><x>37996</x><y>33504</y></r>

(略)……

  打开时间轴的动作面板,输入以下ActionScript代码:

input_text="请输入地名"; //初始化输入文本框

var XMLData_xml:XML = new XML(); //装载外部XMLData_xml文件

XMLData_xml.ignoreWhite = true; //忽略空白

XMLData_xml.load("http://www.wanggesz.com/XMLData/XMLData.xml");

//打开指定路径的xml文件

function XMLData() { //定义查询XMLData()函数

var input =_root.XMLData_mc.input_txt.text; //输入的地名名称

if (input=="") {_root.XMLData_mc.input_txt.text="请输入地名"}

//如果地名名称为空,重新要求输入地名

if (input!="请输入地名") { //如果正确输入地名

var childItems:Array = XMLData_xml.firstChild.childNodes;

for (var i=0; i <childItems.length; i++) {

var sn= childItems[i].childNodes[0].childNodes[0].nodeValue ;

//读入xml文件中的地名

if (sn==input) { //如果输入与xml地名相符

var sx=childItems[i].childNodes[1].childNodes[0].nodeValue;

//读入xml文件中的x坐标

var sy=childItems[i].childNodes[2].childNodes[0].nodeValue;

//读入xml文件中的y坐标

_root.map_mc._xscale = _root.map_mc._yscale = 5000;

//地图增大为50倍

_root.map_mc._x = 412.5-50*(10000*sx/1086848-412.5);

//地图中心点移至所查地点

_root.map_mc._y = 213-50*(10000*sy/1086848-213);

_root.map_mc.roadname01_mc._visible=0; //隐藏标注地名

}

}

}

  打开“查询”按钮的动作面板,输入以下ActionScript代码:

on (release) { //当鼠标释放时

XMLData(); //调用“查询”函数

}

  正式发布后,输入“罗湖中学”,查询到相对应的代码为“<r><n>罗湖中学</n><x>37225</x><y>34520</y></r>”,地图自动放大50倍,地图中心移至(37225,34520)。效果如图2所示;

  

  图2 查询到地名,地图做出相应的缩放和移动操作

  至此,Flash电子地图制作实例系列就结束了。当然,电子地图的功能还可以更加丰富,比如公交查询、最佳路径查询、分类信息查询等等。但缩放、移动、标注、测距和查询是所有的电子地图的基本的功能。只要掌握了这些基本功能的制作方法,就可以制作出比较合格的电子地图。

Flash+XML实现电子地图查询及定位功能相关推荐

  1. Flash和XML实现电子地图查询及定位功能

    上一讲,我们实现了电子地图中如何在线标注地名功能(参阅<Flash+ASP实现电子互动地图在线标注功能 >),本例我们一讲中我们学习实现按地名名称查询及定位功能. 本例要实现的功能分成&q ...

  2. Android 百度地图开发(二)--- 定位功能之MyLocationOverlay,PopupOverlay的使用

    转载请注明出处http://blog.csdn.net/xiaanming/article/details/11380619 这一篇文章主要讲解的是百度地图的定位功能,然后还有MyLocationOv ...

  3. 高德地图--SDK集成--定位功能 地图定位搜索

    最近项目需要到高德定图定位,就此记录下简单集成思路 下载文件之只放了libs和主要代码文件 https://download.csdn.net/download/qq_38355313/1035261 ...

  4. android中高德地图定位功能并且获取定位的城市

    一.概述 今天再一次用到了地图定位功能和地图显示功能,以前一直用的是高德地图定位,这次还是用高德,记录一下以便以后再做时方便一些.因为业务需要的功能不是很全,可以参考https://www.2cto. ...

  5. 【Android App】定位导航GPS中开启手机定位功能讲解及实战(附源码和演示 超详细)

    需要源码请点赞关注收藏后评论区留言私信~~~ 一.开启定位功能 手机定位分为卫星定位和网络定位两大类. (1)卫星定位 卫星定位服务由几个全球卫星导航系统提供. 卫星定位的原理是根据多颗卫星与导航芯片 ...

  6. 用高德js api做h5定位功能

    定位失败?what 最近项目中有一需求要实现手机定位当前城市功能, 查了高德地图api,根据文档说明很快就做出来了. AMap.plugin('AMap.CitySearch', function ( ...

  7. 对于WIFI版ipad(无GPS芯片)定位功能的释疑

    把玩ipad(WIFI版ipad,无GPS芯片)很久时间了,曾今有很多人(包括我)也用过它的定位功能,发现它确实很准确,通常的误差在40米以内,所以很多人都怀疑这个版本的ipad是不是真的内置了GPS ...

  8. 列表查询,添加功能---JSP,servlet

    1.列表查询以及添加功能的需求 列表查询功能: *用户可以通过点击一个超链接或者按钮,经过UserListServlet 类处理后,跳转到查询后的界面list.jsp *使用Druid数据库连接池技术 ...

  9. 基站定位php,SIM800C支持基站定位功能了。。。

    本帖最后由 39035605 于 2018-8-30 15:53 编辑 很多的GSM/GPRS模块都支持基站定位功能,SIM800C模块也不例外,最新的固件已经支持基站了!!!只需要更新一下最新的固件 ...

最新文章

  1. 中国知网PCNI号码
  2. b站前端大佬_最强UP主:罗翔老师,你凭什么打败B站千万粉大佬老番茄?
  3. Sql Server中两个表之间数据备份和导入
  4. zookeeper服务发现实战及原理--spring-cloud-zookeeper源码分析
  5. String 常量池
  6. 【☀️Linux什么姿势最舒服?简单讲讲☀️】嵌入式Linux入门
  7. 5.Qt自定义Button按钮的实现
  8. 前端学习(3212):解决类中的this问题
  9. java form的时间格式_SpringMvc接收日期表单提交,自动转换成Date类型方法
  10. pyecharts查看版本_[pyecharts]v1版本爬坑之旅
  11. 中科方德桌面操作系统_兆芯CPU与中科方德新版桌面/服务器操作系统完成互认证...
  12. Hadoop简单介绍
  13. 题目9:身高排序(绝对差值)
  14. html游戏寻宝源码,WP7 Platformer寻宝游戏源码
  15. 黑盒与白盒到底是什么?
  16. <<和>>运算符的用法
  17. 深入springboot怎么启动tomcat
  18. PS新手教程:加深减淡工具使用方法
  19. 第一章 日常生活中的正念
  20. 一键修改分辨率bat_BAT批量处理一键修改设置IP(亲测有效)

热门文章

  1. 冬季六种低热量时蔬助你排毒
  2. 找规律万能公式_初中规律题的万能公式
  3. iPhone 4与iPad开发基础教程
  4. 传奇该怎么选择服务器?
  5. 对全职高手的自然语言处理
  6. 2542: 弟弟的作业
  7. 网络编程懒人入门(七):深入浅出,全面理解HTTP协议
  8. k8s replicaset controller源码分析(1)- 初始化与启动分析
  9. Symantec Backup Exec Agent For Linux防火墙问题
  10. Functional Commitment Schemes: From Polynomial Commitments to Pairing-Based Accumulators学习笔记