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

截至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();
 })
相关推荐
程序员大阳43 分钟前
HTML+CSS+JS对话式实战(9)-项目总结与问题分析
javascript·css·html·实战·项目总结
Flynt1 小时前
别写拖拽行为,只声明"能拖到哪":UIST 最佳论文的拖拽方案我实测了
前端·svg·preact
Moment2 小时前
代码都能让 Agent 写了,我们为什么还要学前端?
前端·后端·面试
Hilaku2 小时前
MCP 协议会成为前端 AI 工程的标准接口吗?
前端·javascript·程序员
Zan2 小时前
Tauri 2 实战:为什么一个可靠的桌面应用,应该由 Rust Host 管理生命周期?
前端·架构·rust
SameX2 小时前
鸿蒙 ArkTS 独立开发者的项目结构 model / dao / viewmodel / page / common 的分层
前端
阿星AI工作室2 小时前
WorkBuddy做数字人口播:动效包装+克隆声音+真实照片+对口型全流程
前端
火山引擎开发者社区2 小时前
给企业配一双 AI 的手:火山引擎 OS Agent 替你操作手机和电脑
前端·人工智能
三年三月2 小时前
自建https证书SSL
前端
ClouGence4 小时前
Web 自动化测试总是超时?聊聊等待、超时和异步加载
前端·测试