vue高德地图使用

news2024/11/25 21:44:56

先根据官方方法给vue项目引入高德
高德文档地址
做好准备后使用

初始化地图

 AMap.plugin('AMap.MoveAnimation', () =>{
  //地图
    this.map = new AMap.Map("mapContainer", {
        resizeEnable: true,
        center: [116.397447,39.909176],//地图中心坐标
        zoom:12,//缩放值
    });
    this.infoWindow = new AMap.InfoWindow({offset: new AMap.Pixel(30, 0)});
    this.map.setFitView();
})

添加点标注与信息窗体
点标注与信息窗体
循环调用该方法就能得到多个点标注与信息窗体

pointDimension(e,i){
	 var marker = new AMap.Marker({
	   position: [e.longitude,e.latitude],
	    map: this.map,
	    icon:new AMap.Icon({
	        image:require('@/assets/images/person3.png'),//用图片来表示点标注
	        size:new AMap.Size(80,90),
	        imageSize:new AMap.Size(80,90)
	    }),
	    offset: new AMap.Pixel(-13, -26),
	    label: {
	        direction: 'top',
	        content: e.inspectName,
	        offset: new AMap.Pixel(0, 30),
	    }
	});
	// 信息窗体内容
	let id,name;
	    id = this.staffList[i].inspectorId;
	    name = this.staffList[i].inspectName;
	let popCentent = `
	    <div id="infoWindowId" style="display:none;">${id}</div>
	    <div style="color:#333;font-size:14px;text-align:center;font-weight:600;margin-top: 10px;">${name}</div>
	    <div
	     οnclick="startPlayBack()" 
	     style="
	        border-radius: 20px;
	        color: #1890ff;
	        border:#1890ff 1px solid;
	        padding: 0 10px;
	        margin-top: 10px;
	        font-size: 13px;
	        text-align: center;
	        cursor: pointer;
	     ">
	     路径回放
	    </div>
	`
	marker.content = popCentent;
	marker.on('click', this.markerClick);//信息窗体的点击事件
	marker.emit('click', {target: marker});
	this.markers.push(marker) //用一个数组来接受所有信息窗体对象
},
//点击信息窗体
 markerClick(e) {
      console.log('信息窗体点击',e)
      this.infoWindow.setContent(e.target.content);
      this.infoWindow.open(this.map, e.target.getPosition());
  },

在生命周期里监听信息窗体的点击事件

mounted(){
    //监听信息窗体事件
      window.startPlayBack = () =>{
          let id = document.getElementById("infoWindowId").innerText;
      }
}

想用更多的属性可以去文档里看 文档地址
删除指定的点标注

this.markers[i].setMap(null);//i为对应的下标

删除所有点标注

this.map.remove(this.markers);

关闭信息窗体

this.infoWindow.close()//关闭信息窗体

绘制轨迹回放

//绘制回放轨迹
drawingTrajectories(){
     this.polyline = new AMap.Polyline({
         map: this.map,
         path: [116.478935,39.997761],[116.478939,39.997825],[116.478912,39.998549],[116.478912,39.998549],
         showDir:true,
         strokeColor: "#28F",  //线颜色
         // strokeOpacity: 1,     //线透明度
         strokeWeight: 6,      //线宽
         // strokeStyle: "solid"  //线样式
     });

     this.passedPolyline = new AMap.Polyline({
         map: this.map,
         strokeColor: "#AF5",  //线颜色
         strokeWeight: 6,      //线宽
     });
     
     //轨迹回放地图中心随之变动
     this.markers[0].on('moving', (e) =>{
         this.passedPolyline.setPath(e.passedPath);
         this.map.setCenter(e.target.getPosition(),true)
     });
 },

轨迹回放的方法

//开始回放
movePersonnel(){
     this.markers[0].moveAlong(this.lineArr, {
         // 每一段的时长
         duration: 50,//可根据实际采集时间间隔设置
         // JSAPI2.0 是否延道路自动设置角度在 moveAlong 里设置
         autoRotation: true,
     });
 },
 //暂停回放
 pauseAnimation(){
     this.markers[0].pauseMove();
 },
 //继续回放
 resumeAnimation() {
     this.markers[0].resumeMove();
 },
 //停止轨迹回放
 stopAnimation(){
	this.markers[0].stopMove();//停止轨迹回放
 }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1892867.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

掌握亚马逊自养号:测评策略的核心要点与实战经验

在当今电商领域的激烈角逐中&#xff0c;亚马逊测评对于卖家而言&#xff0c;已从单纯的销量助推器与好评累积工具&#xff0c;进化为品牌塑造与市场洞察的关键环节。然而&#xff0c;许多卖家仍局限于传统认知&#xff0c;未能充分挖掘自养号测评的多元化价值与深远影响。本文…

深入Kafka:如何保证数据一致性与可靠性?

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! Hello, 大家好!我是小米,今天我们来聊一聊Kafka的一致性问题。Kafka作为一个高性能的分布式流处理平台,一直以来都备受关注。今天,我将深入探讨Kaf…

智算中心风云再起,如何锚定突围之路?

导读&#xff1a;2024年&#xff0c;智算中心建设全面提速&#xff0c;头部玩家争相布局。如何打造智算中心的差异化竞争能力&#xff1f; 2024年&#xff0c;随着大模型和生成式AI应用加速落地&#xff0c;各行各业对AI算力的需求持续暴涨。作为AI时代的算力基础设施&#xff…

Spring AI 1.0.0 新变化,从 0.8.1 如何升级

Spring AI 1.0.0-M1 版本已经发布&#xff0c;距离 1.0.0 正式版又更近了一步。同时这也意味着&#xff0c;Spring AI 1.0.0 的 API 已经基本确定&#xff0c;不会发生大的改动。这里介绍一下&#xff0c;相对于上一个发布版本 0.8.1&#xff0c;Spring AI 1.0.0 的一些重要的变…

【pearcmd】通过pearcmd.php 进行GetShell

https://cloud.tencent.com/developer/article/2204400 关于PHP 配置 register_argc_argv 小结 的一些研究文章。 应用例题 [NewStarCTF 2023 公开赛道]Include &#x1f350; <?phperror_reporting(0);if(isset($_GET[file])) {$file $_GET[file];if(preg_match(/flag|l…

国外惊现IDM命令行永久破解方法

IDM 想必大部分人都知道和使用过&#xff0c;这是一款在国内外都非常流行的下载神器&#xff0c;除了不能支持种子文件和磁力之外&#xff0c;完爆国内的迅雷&#xff0c;小编我在 6 年前就已经购买了永久更新正版。 image.png 不过最近国外有大神流传出了一个号称可以永久完美…

如何在Docker容器中,修改MySQL密码

如果MySQL运行在Docker容器中&#xff0c;修改MySQL密码的方法稍有不同。以下是如何在Docker中修改MySQL密码的步骤&#xff1a; 方法1&#xff1a;使用MySQL命令行工具 1. 找到MySQL容器的ID或者名字&#xff1a; docker ps 2. 进入MySQL容器&#xff1a; docker exec -i…

Hi3861 OpenHarmony嵌入式应用入门--UDP Client

本篇使用的是lwip编写udp客户端。需要提前准备好一个PARAM_HOTSPOT_SSID宏定义的热点&#xff0c;并且密码为PARAM_HOTSPOT_PSK。还需要准备一个udp服务&#xff0c;服务ip为PARAM_SERVER_ADDR宏定义&#xff0c;端口为PARAM_SERVER_PORT宏定义。 修改网络参数 在Hi3861开发板…

如何挑选短剧系统源码?

在选择短剧系统源码之前&#xff0c;我们需要明确什么是短剧系统源码。短剧系统源码是指用于构建和管理短剧内容的程序代码。选择适合的短剧系统源码可以提高短剧制作的效率和质量。下面是几个选择短剧系统源码的建议&#xff1a; 需求分析&#xff1a;在选择短剧系统源码之前&…

【代码随想录】【算法训练营】【第58天】 [卡码101]孤岛的总面积 [卡码102]沉没孤岛 [卡码103]水流问题 [卡码104]建造最大岛屿

前言 思路及算法思维&#xff0c;指路 代码随想录。 题目来自 卡码网。 day 58&#xff0c;周四&#xff0c;ding~ 题目详情 [卡码101] 孤岛的总面积 题目描述 卡码101 孤岛的总面积 解题思路 前提&#xff1a; 思路&#xff1a; 重点&#xff1a; 代码实现 C语言 […

word 转pdf 中图片不被压缩的方法

word 转pdf 中图片不被压缩的方法 法1&#xff1a; 调节word 选项中的图片格式为不压缩、高保真 法2&#xff1a; 1: word 中的图片尽可能使用高的分辨率&#xff0c;图片存为pnd或者 tif 格式&#xff08;最高清&#xff09; 2: 转化为pdf使用打印机器&#xff0c;参数如下…

实验七 SQL数据更新和视图

题目 &#xff08;1&#xff09;向商品类别表category中插入一条记录&#xff08;801&#xff0c;‘座椅套’&#xff0c;‘各种品牌的汽车座套’&#xff09; &#xff08;2&#xff09;向商品表product中插入一条记录&#xff1a;商品编号80101&#xff0c;商品名称“四季通…

基于Springboot的人格障碍诊断系统

结构图&#xff1a; 效果图&#xff1a; 后台&#xff1a; 前台:

AI免费英语学习在线工具:Pi;chatgpt;其他大模型AI 英语学习智能体工具

1、pi(强烈推荐&#xff1a;可以安卓下载使用) https://pi.ai/talk &#xff08;网络国内使用方便&#xff09; 支持实时聊天与语音对话 2、chatgpt&#xff08;强烈推荐&#xff1a;可以安卓下载使用) https://chat.openai.com/ &#xff08;网络国内使用不方便&#xf…

零基础入门怎么学习老挝语字母表?《老挝语翻译通》App真人发音教学,学习老挝语字母发音和词汇句子!

这段老挝文字翻译成中文是什么意思&#xff1f;有什么好用的老挝语翻译工具推荐吗&#xff1f; 快速翻译&#xff1a;中老语言无缝转换&#xff0c;实时翻译&#xff0c;让沟通更流畅。 学习工具&#xff1a;零基础入门到流利对话&#xff0c;老挝语真人发音&#xff0c;让你的…

ue5导航网格设置

AI使用导航网格进行移动&#xff0c;所以&#xff0c;先设置导航网格边界体积 2&#xff0c;使导航网格边界体积覆盖AI所需要的场景&#xff08;绿色区域&#xff09;&#xff0c;x,y&#xff0c;z在这里都扩大到原来的10倍 3&#xff0c;打开actor的“启用tick并开始” 4&…

使用java stream对集合中的对象按指定字段进行分组并统计

一、概述 有这样一个需求&#xff0c;在一个list集合中的对象有相同的name&#xff0c;我需要把相同name的对象进行汇总计算。使用java stream来实现这个需求&#xff0c;这里做一个记录&#xff0c;希望对有需求的同学提供帮助 一、根据指定字段进行分组 一、先准备好给前端要…

PDF内存如何变小,PDF内存压缩,PDF内存变小怎么调整

在数字化时代&#xff0c;pdf已成为工作、学习和生活中不可或缺的文件格式。它以其跨平台兼容性和安全性受到广大用户的喜爱。然而&#xff0c;随着pdf文件中嵌入的图片、图形和文本内容的增多&#xff0c;文件大小往往会变得相当可观&#xff0c;给文件的传输和存储带来一定的…

vue3渲染函数加入自定义指令(图文教程)

嗯&#xff0c;公众号“程序员野区”收到提问》 问了自己几个群里小伙伴&#xff0c;总算搞定了。 序&#xff1a; withDirectives是vue3.2.0版本上线的&#xff0c;所以你版本不要低&#xff0c;低了不行官方的demo在这里&#xff0c;懂的&#xff0c;直接看官方的就可以》h…

微信小程序禁止PC端打开防止白嫖广告或抓接口

前言 晓杰每日靠着微薄的小程序广告度日&#xff0c;继之前检测手机端微信跳过小程序广告插件检测后又发现小程序广告在电脑端经常没广告&#xff0c;导致收入备降&#xff01;虽然每天只有几块钱的收入&#xff0c;哈哈哈&#xff01;那么怎么做到禁止小程序使用电脑端微信打…