Flash+XML实现电子地图查询及定位功能
本例要实现的功能分成“查询”和“定位”两部分,查询功能通过调用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实现电子地图查询及定位功能相关推荐
- Flash和XML实现电子地图查询及定位功能
上一讲,我们实现了电子地图中如何在线标注地名功能(参阅<Flash+ASP实现电子互动地图在线标注功能 >),本例我们一讲中我们学习实现按地名名称查询及定位功能. 本例要实现的功能分成&q ...
- Android 百度地图开发(二)--- 定位功能之MyLocationOverlay,PopupOverlay的使用
转载请注明出处http://blog.csdn.net/xiaanming/article/details/11380619 这一篇文章主要讲解的是百度地图的定位功能,然后还有MyLocationOv ...
- 高德地图--SDK集成--定位功能 地图定位搜索
最近项目需要到高德定图定位,就此记录下简单集成思路 下载文件之只放了libs和主要代码文件 https://download.csdn.net/download/qq_38355313/1035261 ...
- android中高德地图定位功能并且获取定位的城市
一.概述 今天再一次用到了地图定位功能和地图显示功能,以前一直用的是高德地图定位,这次还是用高德,记录一下以便以后再做时方便一些.因为业务需要的功能不是很全,可以参考https://www.2cto. ...
- 【Android App】定位导航GPS中开启手机定位功能讲解及实战(附源码和演示 超详细)
需要源码请点赞关注收藏后评论区留言私信~~~ 一.开启定位功能 手机定位分为卫星定位和网络定位两大类. (1)卫星定位 卫星定位服务由几个全球卫星导航系统提供. 卫星定位的原理是根据多颗卫星与导航芯片 ...
- 用高德js api做h5定位功能
定位失败?what 最近项目中有一需求要实现手机定位当前城市功能, 查了高德地图api,根据文档说明很快就做出来了. AMap.plugin('AMap.CitySearch', function ( ...
- 对于WIFI版ipad(无GPS芯片)定位功能的释疑
把玩ipad(WIFI版ipad,无GPS芯片)很久时间了,曾今有很多人(包括我)也用过它的定位功能,发现它确实很准确,通常的误差在40米以内,所以很多人都怀疑这个版本的ipad是不是真的内置了GPS ...
- 列表查询,添加功能---JSP,servlet
1.列表查询以及添加功能的需求 列表查询功能: *用户可以通过点击一个超链接或者按钮,经过UserListServlet 类处理后,跳转到查询后的界面list.jsp *使用Druid数据库连接池技术 ...
- 基站定位php,SIM800C支持基站定位功能了。。。
本帖最后由 39035605 于 2018-8-30 15:53 编辑 很多的GSM/GPRS模块都支持基站定位功能,SIM800C模块也不例外,最新的固件已经支持基站了!!!只需要更新一下最新的固件 ...
最新文章
- 中国知网PCNI号码
- b站前端大佬_最强UP主:罗翔老师,你凭什么打败B站千万粉大佬老番茄?
- Sql Server中两个表之间数据备份和导入
- zookeeper服务发现实战及原理--spring-cloud-zookeeper源码分析
- String 常量池
- 【☀️Linux什么姿势最舒服?简单讲讲☀️】嵌入式Linux入门
- 5.Qt自定义Button按钮的实现
- 前端学习(3212):解决类中的this问题
- java form的时间格式_SpringMvc接收日期表单提交,自动转换成Date类型方法
- pyecharts查看版本_[pyecharts]v1版本爬坑之旅
- 中科方德桌面操作系统_兆芯CPU与中科方德新版桌面/服务器操作系统完成互认证...
- Hadoop简单介绍
- 题目9:身高排序(绝对差值)
- html游戏寻宝源码,WP7 Platformer寻宝游戏源码
- 黑盒与白盒到底是什么?
- <<和>>运算符的用法
- 深入springboot怎么启动tomcat
- PS新手教程:加深减淡工具使用方法
- 第一章 日常生活中的正念
- 一键修改分辨率bat_BAT批量处理一键修改设置IP(亲测有效)
热门文章
- 冬季六种低热量时蔬助你排毒
- 找规律万能公式_初中规律题的万能公式
- iPhone 4与iPad开发基础教程
- 传奇该怎么选择服务器?
- 对全职高手的自然语言处理
- 2542: 弟弟的作业
- 网络编程懒人入门(七):深入浅出,全面理解HTTP协议
- k8s replicaset controller源码分析(1)- 初始化与启动分析
- Symantec Backup Exec Agent For Linux防火墙问题
- Functional Commitment Schemes: From Polynomial Commitments to Pairing-Based Accumulators学习笔记