天地图编辑支持删除编辑点

截至2025年3月21日天地图4.0线编辑,只支持添加点,不支持删除编辑点,后续只能通过绑定地图事件曲线救国,虽然没有高德丝滑,但至少可以使用;

效果图

核心方法
typescript 复制代码
/* 绑定地图右键
  高德地图是鼠标双击删除,已经帮你试过了,天地图有时候会触发2次,导致线锁死;
*/
map.addEventListener('contextmenu', function(e){
     // 如果线不在编辑模式就直接退出
	if (!line.isEditable()) {
	    return;
	}
	// 禁用线编辑_不禁用启用的话,删除了点手柄还在;
	line.disableEdit();
	var curLngLats = line.getLngLats();
	var clickLngLat = [e.lnglat.lng.toFixed(2), e.lnglat.lat.toFixed(2)];
	var index = -1;
	for (let i =0;  i< curLngLats.length; i++) {
	    var tmpLngLat = [curLngLats[i].lng.toFixed(2), curLngLats[i].lat.toFixed(2)];
	    if (tmpLngLat[0] === clickLngLat[0] && tmpLngLat[1] === clickLngLat[1]) {
	        index = i;
	        break;
	    }
	}
	// 找到匹配的点删除_如果是<2就不删除这边还可以加个提示
	if (index !== -1 && curLngLats.length > 2) {
	     curLngLats.splice(index, 1);
	 };
    // 把最新的点复制给线
	line.setLngLats(curLngLats);
	// 启用线编辑
	line.enableEdit();
 })
相关推荐
哆啦A梦15881 天前
[前台小程序] 01 项目初始化
前端·vue.js·uni-app
智码看视界1 天前
老梁聊全栈系列:(阶段一)架构思维与全局观
java·javascript·架构
小周同学@1 天前
谈谈对this的理解
开发语言·前端·javascript
Wiktok1 天前
Pyside6加载本地html文件并实现与Javascript进行通信
前端·javascript·html·pyside6
一只小风华~1 天前
Vue:条件渲染 (Conditional Rendering)
前端·javascript·vue.js·typescript·前端框架
柯南二号1 天前
【大前端】前端生成二维码
前端·二维码
程序员码歌1 天前
明年35岁了,如何破局?说说心里话
android·前端·后端
博客zhu虎康1 天前
React Hooks 报错?一招解决useState问题
前端·javascript·react.js
灰海1 天前
vue中通过heatmap.js实现热力图(多个热力点)热区展示(带鼠标移入弹窗)
前端·javascript·vue.js·heatmap·heatmapjs
王源骏1 天前
LayaAir鼠标(手指)控制相机旋转,限制角度
前端