MapABC首页 > 地图 API > 进阶教程
左侧导航
目录
1. “Hello World”程序
2.地图基本操作
  移动地图
  鹰眼地图
3. 在地图上标注
  用图片和Flash动画标注
  标注一组点
  画多折线
  画矩形
4. 画公交线路
5. 用鼠标画图
6. 事件处理
7. 右键菜单
8. 地图编辑功能
  数据导入导出
9. 搜索功能
  关键字查询
  中心点关键字查询
  经纬度查询
  空间查询
简介
  学习这个API最简单的方法就是从一个最简单的例子开始.下面的例子显示一个500*400的地图,中心位于北京的故宫博物院。
您可以下载以各个例子修改并测试,但是您必须用您自己的API key代替文件中的Key。
1. Hello World返回顶部
  让我们从最简单的“Hello, World”开始吧。下面的例子显示一个500*400的地图,中心点位于北京的故宫博物院。


  您可以点击“运行代码”在线运行这段代码,也可以直接在编辑框里修改代码,修改后点击“运行代码”立刻查看效果。

  您还可以点击“复制”,把代码复制到本地运行。在本地运行时,您可能会遇到地图不显示的问题,请参考FAQ。如果您把这段代码放到您的Web服务器上运行,需要用您自己的API Key替换文件中的key。

  在上面的例子中,地址http://api.mapabc.com/fmp/v1.0/js/fmp.js包含了在您的页面放置MapABC地图的全部JavaScript代码。您的页面必须包含指向这个地址的 script 标记,并加上您的 API Key。例如,如果您的 API Key 是"123456",那么您的 script 标记应该类似这样:
<script type="text/javascript" src="http://api.mapabc.com/fmp/v1.0/js/fmp.js?key=123456"></script>
  表示地图的类是 MMap。这个类代表页面上的单个地图。您可以根据需要创建任意多个该类的实例(一个实例对应页面上的一个地图)。在创建地图实例时,您需要指定一个页面上已命名的元素(通常是 div 元素)作为地图控件的容器。除非您明确地指定了地图的大小,默认情况下,地图大小会取决于容器的尺寸。
2.地图基本操作返回顶部
  地图API支持基本的地图操作,如单击平移地图、拖动平移地图、双击放大、滚轮放大等,这些功能也可以通过JavaScript代码调用。
  下面的例子运行后,在页面下方有四个按钮,分别是“拉框放大”、“拉框缩小”、“测距”和“平移地图”。测距时可以双击结束测距,也可以点击“平移地图”退出测距状态。


 移动地图返回顶部
  下面这个例子先显示一张地图,等待2秒钟后,地图的中心会移动到一个新的坐标上。


  鹰眼地图返回顶部
  您可以根据需要,加载或卸载地图上的鹰眼,还可以设置鹰眼的大小比例。


小提示:修改代码中的鹰眼比例,点击“运行代码”,看看有什么效果。
3. 在地图上标注返回顶部
  MapABC地图API提供丰富的标注功能。这个例子在地图上放置一个标注,点击标注,会打开该标注的信息窗口。当然,您也可以用方法添加标注、删除标注、打开信息窗口。


 用图片和Flash动画标注返回顶部
  MapABC地图API不仅提供缺省的标注样式,还允许您用图片和Flash动画标注。下面这个例子与前一个例子的功能相同,只不过是把标注点换成了Flash动画。


小提示:用您自己的Flash动画URL或者图片的URL替换代码中的……,看看运行的效果。
 标注一组点返回顶部
  您可以一次标注多个点,标注后,为了同时在地图内显示这些标注,地图会自动调整视野。


 画多折线返回顶部
  下面这个例子演示了在地图上画多折线的功能。您可以设置多折线的样式


小提示:您可以试着修改多折线的样式参数,比如修改宽度、透明度、颜色,然后运行一下,看看效果如何。
 画矩形返回顶部
  在实现拉框搜索、拉框选择时都需要用到矩形。下面这个例子演示了如何在地图上画一个矩形。


4. 画公交线路返回顶部
  在地图上画一条公交换乘的路线,并且有小车演示行驶过程,其中还有一个换乘点。您可能会奇怪公交线路的数据是从哪取得的,请参考公交查询API


5. 用鼠标画图返回顶部
  使用MapABC地图API您可以随心所欲的用鼠标在地图上绘制几何图形。下面的例子演示了使用鼠标画点、多折线、多边形、矩形、圆、正多边形等几何图形,也演示了如何删除绘制的图形。


6. 事件处理返回顶部
  事件是面向对象编程的强大工具,可以提高应用的交互性。MapABC地图API提供了大量的事件,让您轻松开发更多互动应用。
  鼠标单击事件是最常用的事件,注册一个单击事件的事件处理函数,当鼠标在地图上单击时,会把地图的id,当前的缩放级别,鼠标点击处的坐标返回到事件处理函数里。


地图API提供了一些缺省的事件处理,如双击地图会执行放大操作。下面的代码演示了如何禁止缺省的事件操作。
7. 右键菜单返回顶部
  想实现更多的定制化?MapABC地图API让您随意定义右键菜单。您可以增加自己的右键菜单选项。点击右键菜单,选择菜单项后,地图引擎会抛出右键菜单点击事件,并传出当前点击的参数。您可以在右键菜单事件处理函数里添加代码,实现菜单项对应的功能。


8. 地图编辑功能返回顶部
  想做一个像MapABC炫地图(diy.mapabc.com)那样的应用吗?MapABC地图API提供了地图编辑接口,您可以在地图上标注,或者编辑标注的内容。不仅点可以用来标注,线和面都可以作为标注的工具。


 数据导入导出返回顶部
  在地图上编辑的内容可以导入、导出,因为您可以把编辑好的内容导出后保存起来,使用时再导入到地图中即可重现原有的内容。


9. 搜索功能
 关键字查询返回顶部
  地图最常用的用法就是查询了,下面这个例子使用了MapABC 地图API的搜索功能,根据输入的关键字查询结果,并把查询的结果标注到地图上。


 中心点查询返回顶部
  中心点查询可以让您实现如“查找在故宫周围1公里范围内所有的餐厅”这样的功能。下面这个例子需要输入两个关键字,一个关键字用于定位中心点,另一个关键字用于在中心点附近查询。


 经纬度查询返回顶部
  这是中心点查询功能的另一种形式,即您已经获得了中心点的经纬度坐标,然后根据关键字查询这个中心点周边的POI。如何获得经纬度坐标?方法有很多,想想MapABC地图API的鼠标单击事件……


 空间查询返回顶部
  想任意划定搜索的范围吗?MapABC地图API最神奇的查询功能莫过于空间查询了,您可以在地图上划定任意形状区域,在该区域内用关键字搜索。下面的例子演示了用矩形划定搜索范围。参考API 类手册,稍微修改一下代码,您可以试试用多边形来划定搜索范围。


MapABC首页  |   关于我们  |   意见反馈  |   法律声明  |   站点地图  |   渠道招商  |   客服邮箱:mapapi@autonavi.com