- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
教你怎样用FLEX做地图的教程
??????回到正题,FLEX应用地图,我想大家都知道,做的最完善的就是YAHOO地图,可惜YAHOO地图没有中国什么事,所以做为国人,还是希望可以做自己国家的地图,然后才能有CASE可以做.这次我选用了,目前比较完善的The Earthplayer(地球玩家)的API,目前此API已经包括了LIVE,GOOGLE,51地图三个版本,应当算是非常好了.不过我这里要说一下的是,目前The Earthplayer已经没有开源了,因为据我了解在The Earthplayer开源大半年的情况下,进度基本毫无效果,可以看出国内的开源情况有多糟糕,对于The Earthplayer的开发者,个人认为是值得理解的.妻不如妾,妾不如偷,我想就是这个道理吧.只要让你得不到,估计你才会记在心里.??????不过,幸好我是个懒人,只要给我一个完善的文档,我不需要知道里面怎么运算,我只需要知道怎么去应用这项工具就行.具体的就让原开发者去操心吧. 所以,这几篇教程也只对像我这样的应用者有用,其他的想知道怎么地图运算的,就忽略吧.
??????思考: 首先我们要导入API,然后用API里的接口与FLEX联系起来,无论怎么样,我们首先要做的就是把地图先显示出来.AIP下载地址:点击??????动手:导入API,就是你打开下载的RAR包后,解压开,然后把里面的earthplayerlib.swc,别说不会啊,否则拖出去打.下面就是代码了.
?????????xml version=1.0 encoding=utf-8?mx:Application xmlns:mx=/2006/mxml width=400 height=400????????????????//提取API里我们所需要的接口??xmlns:maps=com.earthplayer.maps.* ?? creationComplete=init()??backgroundGradientColors=[#ffffff, #ffffff]????mx:Script??????![CDATA[???????????????????????? ??????????????//这是北京的一个经纬坐标????????????public var centerPoint:Point = new Point(116.37819,39.92374);?????????????? //放大和缩小的参数.???????????? public var zoom:int = 6;???????? ????????????????????????????public function init():void{??????????????//设置地图目前红心对的地方???????????? maps.setCenter(centerPoint,zoom);????????????????}?????? ??????]]????/mx:Script?? //这里你可以实行三种地图切换,如maps:Map51ditu ,或者maps:MapGoogle ,下面是LIVE地图????maps:MapLive id=maps width=100% height=100%//mx:Application
??????这样,我们就能实现下面这样的一个简单的显示地图的DEMO了.?????? 不错,不错,第一步算是完成了.那么我们如何来控制放大地图和缩小地图呢?聪明点的朋友,琢磨下代码,估计马上就明白了,对,就是让ZOOM参数绑定到Button或者其他什么控件上.
???? 思考:由点击Button来得到一个参数,然后再把参数传递到一个专门用来显示地图的构造函数里,这样,我们需要在那个构造函数里,需要重新new Point,才能显示更新后的地图.更重要的一点是,我们可能用鼠标移动过地图了,那么那个POINT肯定是有变化的,所以我们需要知道在点Button前,那个POINT的变化.那么我们就需要全局变量来保存当前POINT的数据,更重要的是,还需要监听地图移动的情况,这样才能得到一个当前POINT的数据.??????动手:
?xml version=1.0 encoding=utf-8?mx:Application xmlns:mx=/2006/mxml width=400 height=400??xmlns:maps=com.earthplayer.maps.* ?? creationComplete=init()??backgroundGradientColors=[#ffffff, #ffffff]????mx:Script??????![CDATA[????
文档评论(0)