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

openLayers切换基于高德、天地图切换矢量、影像、地形图层

1、需要先加载好地图,具体点此链接

openLayers添加天地图WMTS、XYZ瓦片服务图层、高德地图XYZ瓦片服务图层-CSDN博客文章浏览阅读31次。本文介绍了基于OpenLayers的地图交互功能实现,主要包括以下内容: 地图初始化:支持天地图XYZ/WMTS瓦片服务和高德地图两种底图加载方式,可通过配置参数控制不同图层的显示。 交互功能: 标记点添加:支持动态创建可拖拽的标记点 折线绘制:提供平滑曲线功能,使用chaikin-smooth算法优化线条效果 轨迹模拟:实现路径动画效果,可设置航向角和轨迹线 知识图谱式交互:由静态线条和可拖拽点构成 实现细节: 使用ol/layer/Vector管理矢量图层 通过ol/interaction/Transl https://blog.csdn.net/ssy001128/article/details/148759666

2、加载完成后,搭建切换图层页面,并实现切换功能

图片自行下载

<template><div class="map-array" :style="{ width: targetWidth + 'px' }"><divclass="layers"@click="setFloatDiv(item, index)"v-for="(item, index) in mapArray":key="index":title="item.text"><img :src="item.img" alt="" ref="img" /><p>{{ item.text }}</p></div></div><div class="staic" @mouseenter="handleHover()"><img :src="mapArray[activeIndex].img" alt="" ref="img" /><p>{{ mapArray[activeIndex].text }}</p></div>
</template><script>
import * as mapUtils from "../components/mapUtils";
import shiliang from "../assets/shiliang.png";
import yingxiang from "../assets/yingxiang.png";
import dixing from "../assets/dixing.png";
export default {data() {return {mapArray: [{img: shiliang,text: "矢量地图",type: "VECTOR",},{img: yingxiang,text: "影像地图",type: "RASTER",},{img: dixing,text: "地形地图",type: "TOPOGRAPHY",},],activeIndex: 0,maptype: "VECTOR",targetWidth: 0,};},methods: {setFloatDiv(id, index) {this.maptype = id.type;this.activeIndex = index;const mark = id.type + "MARK";const layers = mapUtils.getMap().getLayers().getArray().filter((layer) => layer.getProperties().layerId === "TileLayers");layers.forEach((item) => {item.setVisible(false);if (item.values_.id === id.type || item.values_.id === mark) {item.setVisible(true);this.targetWidth = 0;}});},handleHover() {this.targetWidth = 300;},},
};
</script><style lang="scss">
.map-array {position: absolute;z-index: 1;display: flex;width: 0px;height: 64px;bottom: 2%;right: 116px;overflow: hidden;transition: width 0.3s ease; // 添加过渡效果.layers {width: 100px;position: relative;cursor: pointer;img {width: 100px;height: 100%;object-fit: cover; // 确保图片正确填充}p {position: absolute;bottom: 0;margin: 0;background-color: rgba(0, 0, 0, 0.5);text-align: center;width: 100%;color: #fff;}}
}
.staic {position: absolute;z-index: 1;bottom: 2%;right: 16px;height: 64px;img {width: 100px;height: 100%;object-fit: cover; // 确保图片正确填充}p {position: absolute;bottom: 0;margin: 0;background-color: rgba(0, 0, 0, 0.5);text-align: center;width: 100%;color: #fff;}
}
</style>

 

相关文章:

  • 使用NPOI库导出多个Excel并压缩zip包
  • 【跨界新视野】信号处理遇上VR/AR:下一代沉浸体验的核心技术与您的发表蓝海
  • STUN (Session Traversal Utilities for NAT) 服务器是一种网络协议
  • Linux 上 Ollama 部署为系统服务
  • 飞算JavaAI编程助手在IDEA中的安装教程:本地安装、离线安装、在线安装方法大全
  • 【Redis】Redis核心探秘:数据类型的编码实现与高速访问之道
  • 114. 二叉树展开为链表 --- 头插法(js)
  • SQL关键字三分钟入门: 表结构管理与分区设计。(ALTER、MODIFY、CHANGE、DEFAULT、VALUES、LESS THAN、RANGE)
  • 湖北理元理律师事务所:法律框架下的债务优化与生活重建双轨支持
  • 量子级网络通信系统:超维架构下的开发与星际级交互实现,突破传统边界的异构网络通信矩阵系统设计
  • Telerik生态整合:Kendo UI for Angular组件在WinForms应用中的深度嵌入(二)
  • 【算力网络】算网安全
  • 工程师生活:清除电热水壶(锅)水垢方法
  • 记一次jdk版本引起的生产问题
  • 详解鸿蒙Next仓颉开发语言中的全屏模式
  • 【技巧】使用frpc安全地内网穿透ssh访问内网机器
  • AWS数据库迁移实战:本地MySQL零停机上云方案
  • DL___线性神经网络
  • 处理器特性有哪些?
  • 【HarmonyOS Next之旅】DevEco Studio使用指南(三十五) -> 配置构建(二)
  • 网站建设花都區/合作seo公司
  • 如何用ps做网站导航/今日新闻快讯10条
  • c 做的网站/免费二级域名查询网站
  • 网页设计毕业论文格式/seo优化推广流程
  • 大连网站优化技术/网络营销专业毕业论文
  • 携程网站建设计划管理与进度控制/百度知道合伙人答题兼职入口