<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=密钥"></script>
2.提供一个容器,这个容器一般利用div提供,然后需要注意的是这个div里面最好不要放东西,然后提供一个id。
<div id="map"></div>
注意,需要设置高度
3.在底部调用javascript代码,规律可循:
1.需要申明容器对象,利用百度地图提供的BMap类的Map方法,
var mp=new BMap.Map("传入你刚才提供的容器的id");
2.设置中点位置,也就是说地图展示的时候那个地区为中心,比如如果你传入的是北京,或者经纬度,那么就以那个经纬度为周期。
mp.centerAndZoom (arg1,arg2);
其中两个参数分别为:
arg1:表示位置,可以是一个点,利用百度提供的BMap.Point(地理经度,地理纬度);进行定位,或者直接使用地址进行定位。
arg2:表示定位的等级,范围为3-19级,不过注意,这个级别只适用于第一个参数是一个点的时候,并且这个时候这个参数必须要存在的。如果第一个参数是字符串,也就是比如传入的是北京,那么这个时候这个参数就可以忽略不计,因为这个时候地图会根据传入的参数自适应的缩放,如果是高清底图,就是移动端(Android或者IOS)的时候,等级范围为3-18级。
然后初始化地图。操作了以上步骤基本上就可以把地图显示出来了,但这仅仅只是个基础。接下来我们可以做一些操作。
1.首先我们可以为地图添加一些控件,比如定位的控件,比如缩放的控件,又比如地图切换,就是切换成3d还是平面或者卫星图的控件。我们可以用下面的方法进行切换:
mp.addControl(control:Control);
注意,这里没有返回值。而且一个控件实例只能向地图添加一次。
下面我会介绍有什么控件和用法:
一.控件类:
1.Control:此类就是所有控件的父母,也就是所有控件的基类,既然是基类,肯定会提供一些比较常用而且比较有用的属性:
defaultAnchor:默认停靠位置,自定义控件的时候需要设置
defaultOffset:默认偏移位置,自定义控件的时候需要设置
方法:
setAnchor(anchor:enum ControlAnchor):设置控件停靠位置
getAnchor():返回控件停靠位置(enum ControlAnchor)
setOffset(offset:Size):设置控件停靠的偏移量
getOffset():返回控件停靠的偏移量(size)
show():显示控件
hide():隐藏控件
isVisible():判断控件的可见性(Boolean)
initialize(map:Map):抽象方法。调用Map.addControl()方法添加控件时将调用此方法,从而实现该控件的初始化。自定义控件时需要实现此方法,并将元素的DOM元素在该方法中返回。DOM元素需要添加到地图的容器中,使用map.getContainer()方法可获得地图容器元素。(HTMLElement)
通常来说,一般会在自己创建控件的时候使用,一般情况如果只是用百度地图提供的方法的话只要了解就足够了,如果想自己鼓捣一些控件的话,就需要自己去重写咯。
这里需要先介绍点比较常用的控件工具类,我之所以先介绍这些,是因为后面设置的时候会比较方便,比如:ControlAnchor类,
Size类等等。
下面是基础类的介绍:
1.Point类:地理坐标点类,该类在初始化的时候就用到了,
构造方法:
Point(lng:Number, lat:Number):以指定的经度和纬度创建一个地理点坐标。
lng:表示地理经度
lat:表示地理纬度
方法:
equals(other:Point)判断两个地点是否相等,当且仅当lng和lat相等时候返回true;
2.Pixel类:此类表示地图上的一个点,单位为像素。
构造函数:
Pixel(x:Number, y:Number):创建像素点对象实例。像素坐标的坐标原点为地图区域的左上角。
x:表示x坐标
y:表示y坐标
方法:
equals(other:Pixel):判断坐标点是否相等,当且仅当两点的x坐标和y坐标均相等时返回true。
3.Bounds类:此类表示地理坐标的矩形区域。
作者: 野老盟客