其他地图坐标点在百度地图展示位置偏差较大--js开发百度地图服务类-Convertor

做所有操作之前,应先引入百度地图开发的js文件


一、创建一个Convertor对象

var convertor = new BMap.Convertor();

二、Convertor的方法

translate(points: Array, from: number, to: number, callback: function)
描述:对指定的点数组进行坐标转换,转换规则为从from到to,转换完成后调用callback,callback的参数为Object 。一次最多10个点。

参数介绍:

1. points:需要转换的点数组,非常注意的是,一次只能转换10个点,如果有很多点,你需要用循环将转换后的点连起来
2. from和to
其他地图坐标点在百度地图展示位置偏差较大--js开发百度地图服务类-Convertor_第1张图片
注意:from中的3还包含高德地图
举例:
如果把google地图坐标,转换为百度地图坐标convertor .translate(pointArr,3,5,function(data){});

3.第四个参数:回调函数callback

		convertor .translate(pointArr,3,5,function(data){});
		其中function(data){}可以写到上一个函数里,也可以单独拿出来,然后在上一个函数里调用

回调函数的参数有一个类型是:TranslateResults ,
它有两个属性:
其他地图坐标点在百度地图展示位置偏差较大--js开发百度地图服务类-Convertor_第2张图片
第一个属性的状态码
其他地图坐标点在百度地图展示位置偏差较大--js开发百度地图服务类-Convertor_第3张图片
第二个属性:是转换后的点数组

三、代码示例:

  1. 小于等于10个点:

    var points = [];   //要转换的点数组
    var  convertor = new BMap.Convertor();
    convertor.translate(points,3,5,function(data){
      console.log(data.status);
      console.log(data.points);   //转换后的点数组
    })
    
  2. 大于10个点

     var points = [];   //要转换的点数组
     var allPoint = [];   //转换后的点数组
     var  convertor = new BMap.Convertor();
     var translatePoint = [];    //中转数组
     for (var i=0; i

关于百度地图其他详细功能请参考api文档:
http://lbsyun.baidu.com/cms/jsapi/reference/jsapi_reference_3_0.html#a7b55

web服务Api:
http://lbsyun.baidu.com/index.php?title=webapi/guide/changeposition

你可能感兴趣的:(百度地图api,js,前端)