加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 程序设计 > 正文

百度地图经纬度转换+反地址解析+显示可视区域内标注点+地图自动刷新+标注的聚合

发布时间:2020-05-25 02:27:32 所属栏目:程序设计 来源:互联网
导读:一:代码简介 本次主要将百度地图的经纬度转换,反地址解析,显示可视区域内的标注点,Markers聚合等整合到了同一个jsp页面上;旨在实现在经纬度未转换的情况下,页面自动实现百度经纬度转换,添加标注点。当用户点击标注点时,开始进行反地址解析,并检索该

一:代码简介

本次主要将百度地图的经纬度转换,反地址解析,显示可视区域内的标注点,Markers聚合等整合到了同一个jsp页面上;旨在实现在经纬度未转换的情况下,页面自动实现百度经纬度转换,添加标注点。当用户点击标注点时,开始进行反地址解析,并检索该点周围区域内的最多3个关键点,一并予以显示。本次经纬度转换采取了百度的单个经纬度转换的方法,因为需要给标注点添加对应的信息,而百度提供的批量转换经纬度的方法会导致经纬度顺序错乱,无法使标注点与信息对应。同时,代码提供了地图页面自动刷新的方法,关于自动刷新,本人采用了setTimeout延时器,关于清除setTimeout延时器这块本人不是很精通,无法将延时器全部清除,所以此次采用的方法比较笨拙,还请大家见谅,望高手多多指点下.另外还有Markers标注点聚合,这个就比较简单了。此外,这次jsp页面共包含了两个地图容器,可以通过按钮切换。

附注:本人在地图上还添加了判断点击是地图还是覆盖物事件,如果点击到覆盖物,将无法拖动地图,需再次点击地图才可拖动地图移动。


二:功能预览

1.地图容器

(1).Markers聚合

(2).定位页面

2.反地址解析

3.显示可视区域内的标注点(通过监视地图移动、缩放开始,移动结束和地图缩放开始、结束来触发,2秒后执行方法)


4.地图自动刷新

5.Markers聚合

三、示例代码:

========================全部源码===========================================

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<title>多车实时定位</title>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script>
<script type="text/javascript" src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/library/GeoUtils/1.2/src/GeoUtils_min.js"></script>
     <script type="text/javascript" src="http://api.map.baidu.com/library/TextIconOverlay/1.2/src/TextIconOverlay_min.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/library/MarkerClusterer/1.2/src/MarkerClusterer_min.js"></script>
     <script type="text/javascript" src="js/jquery-1.4.4.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<style>
.style1{
width: 400px;
height: 120px;
margin: 0px auto;
margin-bottom:20px;
border:1px solid #96C2F1;
background-color: #EFF7FF
}
</style>
    <script type="text/javascript">
var t="";
    var tt2='';
    
    function end(){
tt2=setTimeout(addMymarkers,2000); 
}
function cle(){
clearTimeout(tt2);
}

    var t1='';var t2='';var t3='';var t4='';var t5='';var t6='';var t7='';var t8='';var t9='';var t10='';
    var t11='';var t12='';var t13='';var t14='';var t15='';var t16='';var t17='';var t18='';var t19='';var t20='';
    var t21='';

var JHt='';

function nextJH(){

JHt=setTimeout(function(){


refreshJH();
},20000);
}
    
    var secs =120; //倒计时的秒数 
    
     function nextTrans2(){
     
     var text1 = document.getElementById("text1").value;
var text2= document.getElementById("text2").value;
if(text1!=""||text2!=""){
X2.Eval("var pdnextTrans2 = 0");
document.getElementById("ShowDiv2").style.display="block";
    //for(var i=secs;i>=0;i--){ 
// t=setTimeout('doUpdate(' + i + ')',(secs-i) * 1000); 
//

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读