当前位置: 首页 > news >正文

maptalks矩形绘制结束后,获取最大经度最大纬度,最小经度最小纬度,从左上角开始依次获取并展示坐标

maptalks矩形绘制结束后,获取最大经度最大纬度,最小经度最小纬度,从左上角开始依次获取并展示坐标

重点

 // 获取绘制的矩形图形对象const rectangle = param.geometry;// 获取矩形外接矩形范围(西南角/东北角坐标)const extent = rectangle.getExtent();console.log('西北角(左上):', extent.xmin, extent.ymax)console.log('东北角(右上):', extent.xmax, extent.ymax);console.log('东南角(右下):', extent.xmax, extent.ymin)console.log('西南角(左下):', extent.xmin, extent.ymin);

全部代码

<!DOCTYPE html>
<html>
<meta charset='UTF-8' />
<meta name='viewport' content='width=device-width, initial-scale=1' />
<title>交互 - 绘制工具</title>
<style type='text/css'>html,body {margin: 0px;height: 100%;width: 100%;}.container {width: 100%;height: 100%;}
</style>
<link rel='stylesheet' href='https://maptalks.com/api/maptalks-gl.css' />
<script type='text/javascript' src='https://maptalks.com/api/maptalks-gl.js'></script><body><div id="map" class="container"></div><script>const map = new maptalks.Map("map", {center: [113.049, 51.498568],zoom: 8,baseLayer: new maptalks.TileLayer("base", {urlTemplate: "https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png",subdomains: ["a", "b", "c", "d"],attribution: "&copy; <a href='http://osm.org'>OpenStreetMap</a> contributors, &copy; <a href='https://carto.com/'>CARTO</a>",}),});const layer = new maptalks.VectorLayer("vector").addTo(map);const drawTool = new maptalks.DrawTool({mode: "Point",}).addTo(map).disable();drawTool.on("drawend", function (param) {console.info(param.geometry);console.log(param.geometry.getCoordinates());// 获取绘制的矩形图形对象const rectangle = param.geometry;// 获取矩形外接矩形范围(西南角/东北角坐标)const extent = rectangle.getExtent();console.log('西北角(左上):', extent.xmin, extent.ymax)console.log('东北角(右上):', extent.xmax, extent.ymax);console.log('东南角(右下):', extent.xmax, extent.ymin)console.log('西南角(左下):', extent.xmin, extent.ymin);// console.log('西南角:', extent.xmin, extent.ymin);// console.log('东北角:', extent.xmax, extent.ymax);// console.log('西北角:', extent.xmin, extent.ymax)// console.log('东南角:', extent.xmax, extent.ymin)layer.addGeometry(param.geometry);});const items = ["Point","LineString","Polygon","Circle","Ellipse","Rectangle","FreeHandLineString","FreeHandPolygon",].map(function (value) {return {item: value,click: function () {drawTool.setMode(value).enable();},};});const toolbar = new maptalks.control.Toolbar({items: [{item: "Shape",children: items,},{item: "Disable",click: function () {drawTool.disable();},},{item: "Clear",click: function () {layer.clear();},},],}).addTo(map);</script>
</body></html>

相关文章:

  • HarmonyOS-ArkUI: 自定义组件冻结功能@ComonentV2 freezeWhenInactive属性
  • 【FAQ】HarmonyOS SDK 闭源开放能力 —Health Service Kit
  • 【cocos creator 3.x】速通3d模型导入, 模型创建,阴影,材质使用,模型贴图绑定
  • Electricity Market Optimization 探索系列(V)
  • Ubuntu 部署 DeepSeek
  • 条款05:了解C++默默编写并调用哪些函数
  • 【工具】视频翻译、配音、语音克隆于一体的一站式视频多语言转换工具~
  • 【Netty篇】Handler Pipeline 详解
  • linux多线(进)程编程——(8)多进程的冲突问题
  • 【Contiki】Contiki源码目录结构
  • Android启动初始化init.rc详解
  • PotPlayer在AMD 25.3.1以上时出现画面不动问题
  • FreeBSD系统使用 ZFS 添加交换空间swap
  • 【C++】特化妙技与分文件编写 “雷区”
  • 前端渲染pdf文件解决方案
  • 免杀对抗-Webshell篇
  • 2.4 函数的运行原理
  • 常用 Git 命令详解
  • 关于视频的一些算法内容,不包含代码等
  • 计算serise数据的唯一值数量
  • 解放军仪仗分队参加白俄罗斯纪念苏联伟大卫国战争胜利80周年阅兵活动
  • 深圳两家会所涉卖淫嫖娼各被罚7万元逾期未缴,警方发催告书
  • 重视体重管理,筑牢健康基石
  • 数说母亲节|妈妈的妈妈带娃比例提升,托举效果如何?
  • 海南省三亚市委原常委、秘书长黄兴武被“双开”
  • 第一集|《刑警的日子》很生活,《执法者们》有班味