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

小程序集arcgis地图显示自定义坐标的功能实现记录!(学习笔记)

最近再做一个新能源回收项目,项目中有个根据回收点坐标数据显示区域内回收点位置,点击图标直接导航到该位置,及分布的需求,研究了一下,实现效果如下,实现起来很简单,代码及效果
在这里插入图片描述
回收点位置及分布效果如图:
在这里插入图片描述
点击图标导航直达效果:
在这里插入图片描述
代码如下

data() {return {longitude: 118.796877, // 初始经度latitude: 32.060255,  // 初始纬度scale: 14,           // 初始缩放级别markers: [],         // 用于存储地图上的标记数据};},onLoad() {// 假设这里你已经通过API获取了ArcGIS图层中的点位数据,并解析成了以下格式:  const pointsData = [  { id: 1, latitude: 32.060255, longitude: 118.796877, iconPath: '/static/icondc/icon2.png' },{ id: 2, latitude: 31.943066, longitude: 118.795807, iconPath: '/static/icondc/icon2.png' },{ id: 3, latitude: 32.060005, longitude: 118.788877, iconPath: '/static/icondc/icon2.png' },{ id: 4, latitude: 32.056232, longitude: 118.797241, iconPath: '/static/icondc/icon2.png' },{ id: 5, latitude: 32.05338585150547, longitude: 118.79315867787933, iconPath: '/static/icondc/icon2.png' },// ... 其他点位数据  ];  // 将点位数据转换为小程序map组件可以识别的markers数组  const markers = pointsData.map(point => ({  id: point.id,  latitude: point.latitude,  longitude: point.longitude,  iconPath: point.iconPath, // 自定义图标路径,注意路径可能需要是相对于项目的静态资源路径  width: 50, // 标记宽度  height: 50, // 标记高度  }));  this.markers = markers; // 在 uni-app 中,你可以直接修改 data 中的属性来触发视图更新  },methods: {// 用于处理 marker 的点击事件onMarkerTap(event) {const markerId = event.markerId; // 获取当前点击的 marker 的 idconst tappedMarker = this.markers.find(marker => marker.id === markerId); // 根据 id 获取点击的 marker 数据if (!tappedMarker) return; // 如果找不到 marker,则不执行后续操作// 在这里可以弹出一个浮窗提示用户是否导航到这里// 假设有一个自定义的弹窗组件 showDialog 可以接收一个回调函数this.showDialog(() => {// 当用户点击确认后,执行导航操作uni.openLocation({latitude: tappedMarker.latitude,longitude: tappedMarker.longitude,success() {console.log('导航成功');},fail() {console.log('导航失败');}});});},
http://www.lryc.cn/news/365886.html

相关文章:

  • 谷歌医疗大模型登Nature,Med-PaLM重磅揭秘!AI医生成绩比肩人类
  • java-字符串相关类的底层原理
  • C++模板编程—学习C++类库的编程基础
  • [每周一更]-(第99期):MySQL的索引为什么用B+树?
  • 详解MySQL的MVCC机制
  • docker部署skywalking
  • Mac 使用Docker安装Elasticsearch、Kibana 、ik分词器、head
  • 【Webpack4打包机制原理解析】
  • 如何提高接口响应速度
  • 项目敏感配置信息加固
  • HCIA-AI课程大纲
  • keil program algorithm 出错
  • SITNE24V2BNQ-3/TR一种瞬态电压抑制器,对标PESD1CAN
  • Vue3【四】使用Vue2的写法写一个新的组件子组件和根组件
  • 指标体系建设10大坑
  • ubuntu 20.04上docker 使用gpu
  • 短剧系统投流版开发,为运营公司投流业务赋能
  • 入坑必看的几个嵌入式方向热点问题
  • 电能表如何与智能家居进行有效的融合
  • jmeter多用户登录并退出教程
  • 阿里云ECS实例镜像本地取证
  • 不要硬来!班组管理有“巧思”
  • [原创][Delphi多线程]使用TMonitor和TQueue配合实现TThreadedQueue的经典使用案例.
  • vue3 基于el-tree增加、删除节点(非TypeScript 写法)
  • 小抄 20240607
  • 【GIS教程】土地利用转移矩阵
  • API接口测试工具:jmeter的安装、汉化、Jmeter桌面快捷图标和基本使用
  • 电动汽车使用时,这10个方面需要引起重视。
  • SD-WAN加速跨国服务器访问
  • Vue2指令