百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

高德地图经纬度坐标批量拾取(高德地图拾取坐标经纬度定位)

csdh11 2025-03-23 18:36 12 浏览

使用方法

在桌面上新建一个index.txt文件,把下面的代码复制进去保存,再把文件名改成index.html保存,双击运行打开即可

功能:

1、点击鼠标拾取坐标。

2、地图缩放。

3、拾取坐标拖动。

4、坐标点标注编辑。

5、坐标点删除。

6、定位到拾取的坐标点。

7、Excel导出坐标点。

8、街景、卫星、混合地图切换


代码如下:




    
    
    
    鼠标拾取地图坐标
    <script type="text/javascript" src="https://cache.amap.com/lbs/static/addToolbar.js"></script>
    <script type="text/javascript" src='https://cdn.sheetjs.com/xlsx-0.19.2/package/dist/xlsx.full.min.js'></script>



编号 经度 纬度 描述 操作 定位
<script src="https://webapi.amap.com/maps?v=1.4.15&key=您申请的key值&plugin=AMap.Autocomplete"></script> <script type="text/javascript"> var save=false; var num=0; // 数组 let data = []; //标记 var markers = []; //高德地图 var map = new AMap.Map("container", { resizeEnable: true, expandZoomRange:true, zoom:20, //设置初始化级别 zooms:[3,20] //设置缩放级别范围 3-20 级 }); // 构造官方卫星、路网图层 var satelliteLayer = new AMap.TileLayer.Satellite(); var roadNetLayer = new AMap.TileLayer.RoadNet(); //设置鼠标样式 // map.setDefaultCursor("crosshair"); //为地图注册click事件获取鼠标点击出的经纬度坐标 map.on('click', function(e) { data.push({ id:num, lng:e.lnglat.R, lat:e.lnglat.Q, remark:"" }); initdata(); num++; }); //初始化数据 function initdata(){ //1、清除所有图标 markers=[]; map.clearMap(); //2、渲染图标 for(let i=0;i<data.length;i++){ //添加图标 var marker = new AMap.Marker({ // 将 html 传给 content content: '
'+data[i].id+'
', position:[data[i].lng,data[i].lat], offset:new AMap.Pixel(-9,-18), //中心点 draggable: true, // 设置是否可以拖拽 cursor: 'move', //拖动时的鼠标样式 raiseOnDrag: true, //托拽效果 extData:i //自定义数据 }); //鼠标移动 marker.on('mouseup',function (e3) { var index=e3.target.De.extData; data[index].lng=e3.lnglat.R; data[index].lat=e3.lnglat.Q; initdata(); }); markers.push(marker); //保存到标识列表中 } map.add(markers); //添加标识到地图中 /* * 渲染表格 */ let tbodyinner = document.getElementsByTagName("tbody")[0] let html = '' for(let i=0;i<data.length;i++){ html+=` ${data[i].id} ${data[i].lng} ${data[i].lat} ${data[i].remark} ` } // tbody.innerHTML="..."往tbody中添加内容 tbodyinner.innerHTML = html addEvents() save=false; } // 表格添加监听click事件 function addEvents(){ let subject = document.getElementsByName("grade") for(let i=0;i<subject.length;i++){ subject[i].addEventListener('click',function(e){ edit(this,e) }); } let delbut = document.getElementsByName("del") for(let i=0;i<delbut.length;i++){ delbut[i].addEventListener('click',function(e){ deletes(e) }); } let locate = document.getElementsByName("locate") for(let i=0;i<delbut.length;i++){ locate[i].addEventListener('click',function(e){ locates(e) }); } } //表格编辑 function edit(i,e){ let oldvalue = i.innerHTML; // 设置该标签为空 i.innerHTML = '' // 添加input对象 let inp = document.createElement("input") inp.value = oldvalue inp.classList.add("inputClass") // 添加子节点 i.appendChild(inp) // 获取文本中的内容 inp.select() // 失去焦点事件 inp.onblur = function(){ i.innerHTML = inp.value; var index=e.target.getAttribute("index"); data[index].remark=inp.value; } } //删除表格行数据 function deletes(e){ var r=confirm("确定删除?"); if (r==true){ var index=e.target.getAttribute("index"); //表格数据移除 data.splice(index, 1); //地图上移除标记 map.remove([markers[index]]); //列表中移除标记 markers.splice(index, 1); initdata(); } else{ console.log("取消"); } } //删除表格行数据 function locates(e){ var i=e.target.getAttribute("index"); map.setCenter([data[i].lng, data[i].lat]); //设置地图中心点 map.setZoom(18); //设置缩放等级 } //导出Excel function noDomExportExcel() { // 使用 XLSX.utils.aoa_to_sheet(excleData); var dataArry=[]; dataArry.push(["编号","经度","纬度","描述"]); for(let i=0;i<data.length;i++){ var arry=[]; arry.push(data[i].id); arry.push(data[i].lat.toString().padEnd(18,'0')); arry.push(data[i].lng.toString().padEnd(18,'0')); arry.push(data[i].remark); dataArry.push(arry); } // 制作工作表的方式有很多种,以数组和对象为例 const worksheet = XLSX.utils.aoa_to_sheet(dataArry); // 新建一个工作簿 const workbook = XLSX.utils.book_new();//创建虚拟workbook /* 将工作表添加到工作簿,生成xlsx文件(book,sheet数据,sheet命名)*/ XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1'); /* 输出工作表, 由文件名决定的输出格式(book,xlsx文件名称)*/ XLSX.writeFile(workbook, '标记信息.xlsx'); save=true; } //街道图层 function setRoadNetLayer() { map.remove(satelliteLayer); map.add(roadNetLayer); } //卫星图层 function setSatelliteLayer() { map.remove(roadNetLayer); map.add(satelliteLayer); } //混合图层 function setMixLayer() { map.add(roadNetLayer); map.add(satelliteLayer); } //在关闭页面时弹出确认提示窗口 window.onbeforeunload = function(event){ if(save){ console.log("已经导出,放心关闭"); }else{ return '您可能有数据没有导出,确认关闭?'; } }; </script>



相关推荐

NUS邵林团队发布DexSinGrasp基于强化学习实现物体分离与抓取统一

本文的作者均来自新加坡国立大学LinSLab。本文的共同第一作者为新加坡国立大学实习生许立昕和博士生刘子轩,主要研究方向为机器人学习和灵巧操纵,其余作者分别为硕士生桂哲玮、实习生郭京翔、江泽宇以及...

「PLC进阶」如何通过编写SCL语言程序实现物料分拣?

01、前言SCL作为IEC61131-3编程语言的一种,由于其高级语言的特性,特别适合复杂运算、复杂数学函数应用的场合。本文以FactoryIO软件中的物料分拣案例作为硬件基础,介绍如何通过SCL来实...

zk源码—5.请求的处理过程一(http1.1请求方法)

大纲1.服务器的请求处理链...

自己动手从0开始实现一个分布式 RPC 框架

前言为什么要自己写一个RPC框架,我觉得从个人成长上说,如果一个程序员能清楚的了解RPC框架所具备的要素,掌握RPC框架中涉及的服务注册发现、负载均衡、序列化协议、RPC通信协议、Socket通信、异...

MLSys’25 | 极低内存消耗:用SGD的内存成本实现AdamW的优化性能

AIxiv专栏是机器之心发布学术、技术内容的栏目。过去数年,机器之心AIxiv专栏接收报道了2000多篇内容,覆盖全球各大高校与企业的顶级实验室,有效促进了学术交流与传播。如果您有优秀的工作想要分享,...

线程池误用导致系统假死(线程池会自动销毁吗)

背景介绍在项目中,为了提高系统性能使用了RxJava实现异步方案,其中异步线程池是自建的。但是当QPS稍微增大之后却发现系统假死、无响应和返回,调用方出现大量超时现象。但是通过监控发现,系统线程数正常...

大型乘用车工厂布局规划(六大乘用车基地)

乘用车工厂的布局规划直接影响生产效率、物流成本、安全性和未来扩展能力。合理的布局应确保生产流程顺畅、物流高效、资源优化,并符合现代化智能制造和绿色工厂的要求。以下是详细的工厂布局规划要点:1.工厂布...

西门子 S7-200 SMART PLC 连接Factory IO的方法

有很多同学不清楚如何西门子200smart如何连接FactoryIO,本教程为您提供了如何使用西门子S7-200SMARTPLC连接FactoryIO的说明。设置PC和PLC之间的...

西门子博图高级仿真软件的应用(西门子博途软件仿真)

1.博图高级仿真软件(S7-PLCSIMAdvancedV2.0)S7-PLCSIMAdvancedV2.0包含大量仿真功能,通过创建虚拟控制器对S7-1500和ET200SP控制器进行仿真...

PLC编程必踩的6大坑——请对号入座,评论区见

一、缺乏整体规划:面条式代码问题实例:某快递分拣线项目初期未做流程图设计,工程师直接开始编写传送带控制程序。后期增加质检模块时发现I/O地址冲突,电机启停逻辑与传感器信号出现3处死循环,导致项目延期2...

统信UOS无需开发者模式安装软件包
统信UOS无需开发者模式安装软件包

原文链接:统信UOS无需开发者模式安装软件包...

2025-05-05 14:55 csdh11

100个Java工具类之76:数据指纹DigestUtils

为了提高数据安全性,保证数据的完整性和真实性,DigestUtils应运而生。正确恰当地使用DigestUtils的加密算法,可以实现数据的脱敏,防止数据泄露或篡改。...

麒麟KYLINIOS软件仓库搭建02-软件仓库添加新的软件包

#秋日生活打卡季#原文链接:...

Java常用工具类技术文档(java中工具类的作用)

一、概述Java工具类(UtilityClasses)是封装了通用功能的静态方法集合,能够简化代码、提高开发效率。本文整理Java原生及常用第三方库(如ApacheCommons、GoogleG...

软路由的用法(自动追剧配置)(软路由教学)

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:值友98958248861环境和需求...