Google Maps API简易教程(一)
一、API Key
使用Google API,必须要从Google 那里获取一个免费的API 键。获取过程如下:
(1)用google账户登陆https://code.google.com/apis/console/,点击“Create Project”按钮,
(2)在服务列表中,找到Google Maps API v3,点击off,使其处于on的状态。
(3)点击左边菜单的"API Access",它将询问你创建一个OAuth 2.0 client id(简单应用不必)
(4)在下一屏幕中,将会显示API key的相关信息。
备注:保存好API key!(在所有Google Maps APP中必须使用)
二、创建一个基本的Google Map
为了简单起见,下面创建一个以英国伦敦为中心的Google Map。相关代码如下:
<!DOCTYPE html> <html> <head> <script src="http://maps.googleapis.com/maps/api/js?key=AIzaSyDY0kkJiTPVd2U7aTOAwhc9ySH6oHxOIYM&sensor=false"> </script> <script> function initialize() { var mapProp = { center:new google.maps.LatLng(51.508742,-0.120850), zoom:5, mapTypeId:google.maps.MapTypeId.ROADMAP }; var map=new google.maps.Map(document.getElementById("googleMap") ,mapProp); } google.maps.event.addDomListener(window, 'load', initialize); </script> </head> <body> <div id="googleMap" style="width:500px;height:380px;"></div> </body> </html>
备注:script中的key为上一节注册的API key。
三、Google Maps-Overlays
Overlays是地图上的对象,对应着相关的经度/维度坐标。比较常用的有以下几种:
.Marker-地图上单个位置。
.Polyline-地图上一系列直线。
.Polygon-地图上一系列直线,并且处于封闭的形状。
.Circle 和 Rectangle。
.info Windows-地图上,上升气球里显示内容。
(1)加入一个Marker
Marker构造函数创建一个标签(注意:必须先设置位置属性)。
接着,使用setMap()方法加入marker到map中。
代码如下:
var marker=new google.maps.Marker({ position:myCenter, }); marker.setMap(map);
(2)使Marker动起来
代码如下:
marker=new google.maps.Marker({ position:myCenter, animation:google.maps.Animation.BOUNCE }); marker.setMap(map);
(3)Google Maps-Polyline
Polyline是通过一系列排好序的坐标的线。它支持一下属性:
.path-具体化线的几个经度/纬度坐标。
.strokeColor-为线设置一个16进制的颜色值。
.strokeOpacity-为线设置透明度(值介入0.0和1.0之间)
.strokeWeight-具体化线的权重。
.editable-定义用户是否可编辑改线。
代码如下:
var myTrip = [stavanger,amsterdam,london]; var flightPath = new google.maps.Polyline({ path:myTrip, strokeColor:"#0000FF", strokeOpacity:0.8, strokeWeight:2 });
(4)Circle的用法
circle支持如下属性:
.center-circle的中心。
.radius-具体圆的半径,以米为单位。
.strokeColor-为环绕圆的线设置一个16进制的颜色。
.strokeOpacity-为环绕圆的线设置透明度。
.strokeWeight-为环绕圆的线设置权重,单位像素。
.fillColor-为圆的内部区域设置一个16进制颜色值。
.fillOpacity-为圆的内部填充颜色设置透明度。
.editable-解释同上。
代码如下:
var myCity = new google.maps.Circle({ center:amsterdam, radius:20000, strokeColor:"#0000FF", strokeOpacity:0.8, strokeWeight:2, fillColor:"#0000FF", fillOpacity:0.4 });
(5)InfoWindow的使用
InfoWindow是为Marker对象显示相关文本信息:
例子代码如下: