您好,登錄后才能下訂單哦!
地址:http://lbsyun.baidu.com/jsdemo.htm#c1_3
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微軟雅黑";}
#l-map{height:100%;width:78%;float:left;border-right:2px solid #bcbcbc;}
#r-result{height:100%;width:20%;float:left;}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密鑰"></script>
<title>添加多個(gè)標(biāo)注點(diǎn)</title>
</head>
<body>
<div id="allmap"></div>
</body>
</html>
<script type="text/javascript">
var map;
var cell_all=[];
var pointsArr=[];
var latlng=[];
loadData();
initMap();
map.panTo(pointsArr[pointsArr.length-1]);
//加載坐標(biāo)點(diǎn)和數(shù)據(jù)
function loadData(){
//數(shù)據(jù)坐標(biāo)點(diǎn)(按順序輸入,格式為 經(jīng)度,維度|經(jīng)度,緯度 經(jīng)緯度用","分隔,沒(méi)組經(jīng)緯度數(shù)據(jù)用"|"分隔)
//百度地理坐標(biāo)
var data="117.1554692,31.72431008|117.161034,31.722429|117.1610267,31.72337429";
//拆分字符串換格式存儲(chǔ)
var latlng=data.split("|");
for(var i=0;i<latlng.length;i++){
var obj=new Object();
var point = new BMap.Point(parseFloat(latlng[i].split(",")[0]),parseFloat(latlng[i].split(",")[1]));
pointsArr.push(point);
obj.longitude=latlng[i].split(",")[0];
obj.latitude=latlng[i].split(",")[1];
cell_all.push(obj);
}
//高德地圖數(shù)據(jù)處理轉(zhuǎn)換為百度
/ var latlng=data.split("|");
for(var i=0;i<latlng.length;i++){
var obj=new Object();
var parseBaidu=bd_encrypt( parseFloat(latlng[i].split(",")[0]),parseFloat(latlng[i].split(",")[1]));
console.log(parseBaidu);
var point = new BMap.Point(parseBaidu.split(",")[0],parseBaidu.split(",")[1]);
pointsArr.push(point);
obj.longitude=parseBaidu.split(",")[0];
obj.latitude=parseBaidu.split(",")[1];
cell_all.push(obj);
}/
}
//高德坐標(biāo)轉(zhuǎn)換為百度坐標(biāo)
function bd_encrypt(gg_lon, gg_lat){
var X_PI = Math.PI 3000.0 / 180.0;
var x = gg_lon, y = gg_lat;
var z = Math.sqrt(x x + y y) + 0.00002 Math.sin(y X_PI);
var theta = Math.atan2(y, x) + 0.000003 Math.cos(x X_PI);
var bd_lon = z Math.cos(theta) + 0.0065;
var bd_lat = z * Math.sin(theta) + 0.006;
return bd_lon +","+bd_lat;
};
//創(chuàng)建和初始化地圖函數(shù):
function initMap(){
createMap();//創(chuàng)建地圖
setMapEvent();//設(shè)置地圖事件
addMapControl();//向地圖添加控件
addMapOverlay();//向地圖添加覆蓋物
}
//設(shè)置中心區(qū)域和地圖層級(jí)
function createMap(){
map = new BMap.Map("allmap");
// map.centerAndZoom("合肥",14);
map.centerAndZoom(new BMap.Point(117.17,31.52),16);
}
function setMapEvent(){
map.enableScrollWheelZoom();
map.enableKeyboard();
map.enableDragging();
map.enableDoubleClickZoom()
}
function addClickHandler(target,window){
target.addEventListener("click",function(){
target.openInfoWindow(window);
});
}
//按順序展示連線的方法
function showline(list){
var polyline = new BMap.Polyline(list, {strokeColor:"red", strokeWeight:2, strokeOpacity:0.5}); //創(chuàng)建折線
map.addOverlay(polyline); //增加折線
}
function addMapOverlay(){
//按順序展示連線的方法,不需要注釋掉即可
showline(pointsArr);
var opts = {
width : 200, // 信息窗口寬度
height: 120, // 信息窗口高度
title : "坐標(biāo)信息" , // 信息窗口標(biāo)題
enableMessage:true//設(shè)置允許信息窗發(fā)送短息
};
for(var l=cell_all.length,i=0;i<l;i++){
var obj=cell_all[i];
var marker = new BMap.Marker(pointsArr[i]); // 創(chuàng)建標(biāo)注
map.addOverlay(marker);
var content='<table ><tr> <td>點(diǎn)編號(hào):</td><td>'
+i+'</td></tr>'
+'<tr><td>經(jīng)度:</td><td>'+obj.longitude+'</td></tr>'
+'<tr><td>緯度:</td><td>'+obj.latitude+'</td></tr>'
+'</table>'
;
addClickHandler(content,marker);
}
function addClickHandler(content,marker){
marker.addEventListener("onmouseover",function(e){
openInfo(content,e)}
);
}
function openInfo(content,e){
var p = e.target;
var point = new BMap.Point(p.getPosition().lng, p.getPosition().lat);
var infoWindow = new BMap.InfoWindow(content,opts); // 創(chuàng)建信息窗口對(duì)象
map.openInfoWindow(infoWindow,point); //開(kāi)啟信息窗口
}
}
//向地圖添加控件
function addMapControl(){
map.addControl(new BMap.ScaleControl());
map.addControl(new BMap.MapTypeControl());
map.addControl(new BMap.NavigationControl());
}
</script>
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。