高德地图,绘制矢量图形并获取经纬度

news/2024/7/20 22:39:44 标签: swift, 开发语言, ios

效果如图
在这里插入图片描述
在这里插入图片描述

我用的是AMapLoader这个地图插件,会省去很多配置的步骤,非常方便
首先下载插件,然后在局部引入

import AMapLoader from "@amap/amap-jsapi-loader";

然后在methods里面使用

  // 打开地图弹窗
    mapShow() {
      this.innerVisible = true;
      this.$nextTick(() => {
        this.initMap();
      });
    },
    // 初始化高德地图
    initMap() {
      AMapLoader.load({
        key: "你的key", //key值是key值 和安全密钥不同
        version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15
        plugins: ["AMap.GeoJSON", "AMap.MarkerClusterer", "AMap.MouseTool"], // 需要使用的的插件列表,用到的再次注册,如比例尺'AMap.Scale'等
      }).then((AMap) => {

        // 初始化地图
        this.map = new AMap.Map("DMAMap", {
          viewMode: "3D", // 是否为3D地图模式
          zoom: 13, // 初始化地图级别
          center: [120.987239, 31.391653], //中心点坐标
          resizeEnable: true,
        });
        this.map.setMapStyle("amap://styles/darkblue");
        this.drawPolygon();
      });
    },
    // 绘制多边形
    drawPolygon() {
      let mouseTool = new AMap.MouseTool(this.map);
      mouseTool.polygon({
        strokeColor: "#FF33FF",
        strokeOpacity: 1,
        strokeWeight: 6,
        strokeOpacity: 0.2,
        fillColor: "#1791fc",
        fillOpacity: 0.4,
        // 线样式还支持 'dashed'
        strokeStyle: "solid",
        // strokeStyle是dashed时有效
        // strokeDasharray: [30,10],
      });
      mouseTool.on("draw", (event) => {
        // event.obj 为绘制出来的覆盖物对象
        let path = event.obj.getPath(); // 获取多边形的路径
        let str = "";
        let pathArr = [];
        for (let i = 0; i < path.length; i++) {
          pathArr.push([path[i].getLng(), path[i].getLat()]);
          str += path[i].getLng() + "," + path[i].getLat() + " ";
        }
        this.geometryArr = pathArr; // 这个就是绘制的点的坐标数组
        this.addForm.latlng = str;  // 转换为字符串
      });
    },


http://www.niftyadmin.cn/n/5007771.html

相关文章

化工厂4G+蓝牙+GPS/北斗RTK人员定位系统解决方案

化工厂人员定位系统解决方案有很多种&#xff0c;不同的方案有不同的特点及优劣势。今天给大家分享一个高性价比的化工厂人员定位方案&#xff0c;即化工厂4G蓝牙GPS/北斗RTK人员定位系统解决方案。 方案概述 新锐科创基于化工厂定位场景&#xff0c;利用物联网、云计算、大数…

【Arduino25】液晶模拟值实验

硬件准备 LCD1602显示屏&#xff1a;1 个 220欧的电阻&#xff1a;1 个 旋钮电位器&#xff1a;1 个 面包板&#xff1a;1个 杜邦线&#xff1a;若干 硬件连线 软件程序 #include <LiquidCrystal.h>LiquidCrystal lcd(12,11,5,4,3,2);void setup(){lcd.begin(16,2);…

jupyter 添加中文选项

文章目录 jupyter 添加中文选项1. 下载中文包2. 选择中文重新加载一下&#xff0c;页面就变成中文了 jupyter 添加中文选项 1. 下载中文包 pip install jupyterlab-language-pack-zh-CN2. 选择中文 重新加载一下&#xff0c;页面就变成中文了 这才是设置中文的正解&#xff…

CloudQuery X PolarDB:让数据库管理更简单

前言&#xff1a;8 月 15 日&#xff0c;CloudQuery 数据操作管控平台与阿里云 PolarDB 数据库管理软件&#xff0c;完成产品集成认证测试。也在以下功能上完善了用户使用 PolarDB 的体验&#xff0c;使数据库的管理更加安全高效。 支持在 CloudQuery 中创建连接&#xff0c;便…

记录使用layui弹窗实现签名、签字

一、前言 本来项目使用的是OCX方式做签字的&#xff0c;因为项目需要转到国产化&#xff0c;不在支持OCX方式&#xff0c;需要使用前端进行签字操作 注&#xff1a;有啥问题看看文档&#xff0c;或者换着思路来&#xff0c;本文仅供参考&#xff01; 二、使用组件 获取jSign…

归并排序 Merge Sort

归并排序的基本思想是什么&#xff1f; 归并排序采用分治法&#xff08;Divide and Conquer&#xff09;&#xff0c;将待排序的数组分成若干个子数组再对子数组进行排序&#xff0c;最后将已排序的子数组合并成一个大的有序数组。 下面是归并排序的基本步骤&#xff1a; 分…

CSS文字居中对齐学习

CSS使用text-align属性设置文字对齐方式&#xff1b;text-align:center&#xff0c;这样就设置了文字居中对齐&#xff1b; <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>css 水平居中</title><style>.box …

Python实现SSA智能麻雀搜索算法优化XGBoost分类模型(XGBClassifier算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 麻雀搜索算法(Sparrow Search Algorithm, SSA)是一种新型的群智能优化算法&#xff0c;在2020年提出&a…