vue使用高德地图实现轨迹显隐


<template><div><el-button type="primary" @click="pathShowOrHide">轨迹显/隐</el-button><div id="container" /></div>
</template><script>
import AMapLoader from '@amap/amap-jsapi-loader'export default {name: 'MapView',data() {return {map: null,PathSimplifier: null,$: null,pathState: true}},mounted() {this.initAMap()},unmounted() {this.map?.destroy()},methods: {initPage(PathSimplifier, $) {const pathSimplifierIns = new PathSimplifier({zIndex: 100,// autoSetFitView:false,map: this.map, // 所属的地图实例getPath: function(pathData, pathIndex) {return pathData.path},getHoverTitle: function(pathData, pathIndex, pointIndex) {return null}})window.pathSimplifierIns = pathSimplifierInspathSimplifierIns.setData([{name: '测试',path: [[116.405289, 39.904987],[113.964458, 40.54664],[111.47836, 41.135964],[108.949297, 41.670904]]}])const pathNavigatorStyles = [{width: 16,height: 24,content: 'defaultPathNavigator'}]function extend(dst) {if (!dst) {dst = {}}const slist = Array.prototype.slice.call(arguments, 1)for (let i = 0, len = slist.length; i < len; i++) {const source = slist[i]if (!source) {continue}for (const prop in source) {if (source.hasOwnProperty(prop)) {dst[prop] = source[prop]}}}return dst}let idx = 0const navg1 = pathSimplifierIns.createPathNavigator(0, {loop: true,speed: 1000000,pathNavigatorStyle: extend({}, pathNavigatorStyles[0])})navg1.start()function changeNavgContent() {// 获取到pathNavigatorStyle的引用const pathNavigatorStyle = navg1.getStyleOptions()// 覆盖修改extend(pathNavigatorStyle, pathNavigatorStyles[(++idx) % pathNavigatorStyles.length])// 重新绘制pathSimplifierIns.renderLater()}setInterval(changeNavgContent, 500)},initAMap() {const that = thisAMapLoader.load({key: 'ed030cd90d1a6014ea01f26d51250f40', // 申请好的Web端开发者Key,首次调用 load 时必填version: '2.0', // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15plugins: ['AMap.Scale'], // 需要使用的的插件列表,如比例尺'AMap.Scale',支持添加多个如:['...','...']AMapUI: {version: '1.1',plugins: ['overlay/SimpleMarker']}// 需要使用的的插件列表,如比例尺'AMap.Scale'等}).then((AMap) => {this.map = new AMap.Map('container', {// 设置地图容器idviewMode: '3D', // 是否为3D地图模式zoom: 4, // 初始化地图级别center: [116.397428, 39.90923] // 初始化地图中心点位置})AMapUI.load(['ui/misc/PathSimplifier', 'lib/$'], (PathSimplifier, $) => {if (!PathSimplifier.supportCanvas) {alert('当前环境不支持 Canvas!')return}this.PathSimplifier = PathSimplifierthis.$ = $this.initPage(PathSimplifier, $)})}).catch((e) => {console.log(e)})},pathShowOrHide() {if (this.pathState) {window.pathSimplifierIns.setData([])this.pathState = false} else {this.initPage(this.PathSimplifier, this.$)this.pathState = true}}}
}
</script><style scoped>
#container {width: 100%;height: 300px;
}
</style>
相关文章:
vue使用高德地图实现轨迹显隐
<template><div><el-button type"primary" click"pathShowOrHide">轨迹显/隐</el-button><div id"container" /></div> </template><script> import AMapLoader from amap/amap-jsapi-loaderex…...
Maven(20) 如何使用Maven进行版本管理?
Maven提供了一套强大的版本管理机制,允许开发者管理项目的版本号,并在不同的版本之间进行升级和降级。以下是如何使用Maven进行版本管理的详细步骤和代码示例: 步骤 1: 定义项目版本 在pom.xml文件中,你需要定义项目的版本号。版…...
AWS RDS MySQL内存使用
1. AWS RDS所拥有的内存(实例类型),和数据库能够使用的内存是不同的。RDS实例为操作系统和 RDS 管理进程预留了内存,数据库使用内存大小,小于数据库实例类的硬件规格中所示的值(以 GiB 为单位)[…...
Vue指令:v-else、v-else-if
目录 1.语法: 2. 题目 3.页面展示 4.结构 1.语法: 1.作用:辅助v-if进行判断渲染 2.语法:v-else 、v-esle-if"表达式" 2. 题目 <!DOCTYPE html> <html lang"en"> <head><meta chars…...
基于SSM志愿者招募系统的设计
管理员账户功能包括:系统首页,个人中心,用户管理,志愿组织管理,组织信息管理,组织申请管理,志愿活动管理活动报名管理 用户账号功能包括:系统首页,个人中心,…...
数学建模与优化算法:从基础理论到实际应用
数学建模和优化算法,它们不仅帮助我们理解和描述复杂系统的行为,还能找到系统性能最优化的解决方案。本文将从基础的数学理论出发,逐步深入到各种优化算法,并探讨它们在实际问题中的应用。 思维导图文件可获取:https:…...
微信小程序生成二维码
目前是在开发小程序端 --> 微信小程序。然后接到需求:根据 form 表单填写内容生成二维码(第一版:表单目前需要客户进行自己输入,然后点击生成按钮实时生成二维码,不需要向后端请求,不存如数据库…...
自由软件与开源软件:异同与联系
自由软件与开源软件:异同与联系 随着信息技术的快速发展,自由软件运动与开源软件运动成为推动软件开发领域变革的重要力量。虽然这两个概念在日常对话中常被交替使用,但它们各自有着不同的理念和发展历程。本文将探讨自由软件运动与开源软件…...
Vue中ref、reactive、toRef、toRefs的区别
一、ref、reactive setup 函数中默认定义的变量并不是响应式的(即数据变了以后页面不会跟着变),如果想让变量变为响应式的变量,需要使用 ref 和 reactive 函数修饰变量。 ref 函数可以把基本类型变量变为响应式引用reactive 函数…...
凸极式发电机的相量图分析和计算,内功率因数角和外功率因数角和功角的定义。
图1:同步发电机稳态相量图 若发电机为凸极式,由于凸极机正、交轴同步电抗不等,即xd≠xq,因此必须先借助虚构电动势 E ˙ Q E ˙ q − ( x d − x q ) I ˙ d \dot{E}_Q\dot{E}_q-(x_d-x_q)\dot{I}_d E˙QE˙q−(xd−xq)…...
systemctl restart NetworkManager 重启后,文件/etc/resolv.conf修改失败
如果你在重启 NetworkManager 之后发现无法修改 /etc/resolv.conf 文件,这是因为 NetworkManager 会自动管理这个文件 为了解决这个问题,你可以采取以下两种方法之一: 方法一:禁用 NetworkManager 服务 使用以下命令停止 NetworkManager 服务:sudo systemctl stop Netwo…...
Admin.NET源码学习(5:swagger使用浅析)
直接启动Admin.NET.Web.Entry项目,会弹出swagger登录验证框,虽然采用Furion简化了项目加载过程及配置,但是学习源码过程就比较恼火,很多设置及功能搞不清楚到低是怎么启用的,本文记录学习Admin.NET项目中swagger的设置…...
在 openEuler 22.03 服务器上搭建 web 服务教程
一、项目背景与目标 在当今数字化时代,web 服务的搭建对于企业和个人来说都具有至关重要的意义。本项目旨在在 openEuler 22.03 服务器上搭建一个稳定、高效的 web 服务,以满足特定的业务需求。具体目标如下: 在 openEuler 22.03 服务器上成功安装和配置 Apache web 服务器…...
如何取消自动配置ipv4地址:步骤详解与实用指南
在现代网络环境中,自动配置IPv4地址(APIPA,即自动专用IP寻址)虽然为设备连接提供了便利,但在某些特定场景下,如服务器配置、网络故障排除等,手动设置静态IP地址成为必要之选。自动配置的IPv4地址…...
医院信息化与智能化系统(15)
医院信息化与智能化系统(15) 这里只描述对应过程,和可能遇到的问题及解决办法以及对应的参考链接,并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图,可以试试PlantUML,告诉GPT你的文件结构,让他给你对应…...
小红书笔记详情API接口系列(概述到示例案例)
小红书笔记详情数据API接口是小红书开放平台提供的一项服务,允许开发者获取小红书上的笔记详情数据。以下是对该接口及其使用方法的详细介绍: 一、接口概述 小红书笔记详情数据API接口提供了一系列的接口,允许开发者获取笔记的标题、正文、标…...
跨境电商平台系统开发
随着全球化的不断深入,跨境电商作为新兴的商业模式,越来越受到企业和消费者的关注。跨境电商平台的系统开发不仅涉及技术层面的挑战,更涉及到法律、物流、支付等多方面的因素。商淘云将分享跨境电商平台系统开发的主要环节,包括需…...
开源模型应用落地-qwen模型小试-Qwen2.5-7B-Instruct-玩转ollama-Modelfile文件(二)
一、前言 在AI大模型百花齐放的时代,很多人都对新兴技术充满了热情,渴望尝试。然而,实际上要入门AI技术的门槛非常高。除了需要高端设备外,还需要面对复杂的部署和安装过程,这让许多人望而却步。在这样的背景下,Ollama的出现为广大开发者和爱好者提供了一条便捷的道路,极…...
链表详解(一)
目录 顺序表的问题及思考链表链表的概念及结构链表的分类单链表的实现链表功能实现遍历链表void SLTprint(SLNode* phead)代码 创造新节点SLNode* CreateNode(SLNDataType x)代码 顺序表的问题及思考 中间/头部的插入删除,时间复杂度为O(N),效率低,但是尾部插入效率…...
npm入门教程6:npm脚本
一、npm脚本的基本用法 定义脚本 在package.json文件的scripts字段中,你可以定义多个脚本命令。每个脚本都是一个键值对,其中键是脚本的名称,值是要执行的命令。例如: "scripts": {"start": "node index…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...
从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
