geoserver发布矢量切片服务理论与实战

news2024/10/5 13:52:20

geoserver发布矢量数据服务前几篇文章已经分享过了,但是在实际业务中,矢量数据shp文件有时候比较大,包含上百万完个点,发布完整的服务后,有时候,前端显示还是有点慢,毕竟是一次加载完成;而且前端需要不同的样式去渲染一个地图,而不需要事先在服务器端(比如GeoServer)进行预先的样式配置;基于此,我们可以把矢量数据进行切片,前端频繁调用,每次获取少量数据。

目录

一、操作流程

 二、理论支持


一、操作流程

首先需要了解,GeoServer可以生成三种格式的矢量切片:GeoJSON,TopoJSON,MapBox Vector(MVT)。这些矢量切片格式也得到OpenLayers和其他客户端地图引擎的支持。

1、安装矢量切片插件

官网下载地址:切片下载

直接点击下载就行了。 

解压后显示:

 注意:此插件的版本和geoserver的版本必须保持一致!

2、导入jar

将下载的四个jar包复制到GeoServer的WEB-INF/lib文件夹下,即:

apache-tomcat-7.0.72\webapps\geoserver\WEB-INF\lib

3、重启前验证

点击任何一个图层查看:

目前没有切面插件相关的选项。

4、重启后验证

同样点击任何一个图层查看

 发现安装的切片插件生效了

5、发布矢量切片

点击切片图层

进入图层列表,找到准备切片的图层:

点击,然后添加四个切片相关的选项

 然后点击保存,返回列表:

发现下拉框变宽了,点击查看:

 发现切片缓存已经生成。比如选择geojson选项,点击:

浏览器请求地址:

http://127.0.0.1:8080/geoserver/nandaoVeloc/gwc/demo/nandaoVeloc:Veloc_201809_202102?gridSet=EPSG:4326&format=application/json;type=geojson

F12查看调用情况:

 参数查看:

 返回数据:

选择第四个.pdf 试试,是mapbox格式,即(.mvt):正常显示出图片

浏览器地址变了:

http://127.0.0.1:8080/geoserver/nandaoVeloc/gwc/demo/nandaoVeloc:Veloc_201809_202102?gridSet=EPSG:4326&format=application/vnd.mapbox-vector-tile
即参数变了:

返回值是二进制:

 基于此前端可以配置好参数来后端请求,放到或者缩小图层,或者点击图片,会根据点击处的位置去查是否有数据内容,如果有返回url,再根据url去后端请求返回被点击的元素的属性,。

 二、理论支持

1、矢量切片特点

优点:

  • 数据在客户端渲染(例如,OpenLayers),而不是在服务器端。这允许不同的地图应用程序使用不同的样式去渲染一个地图,而不需要事先在服务器端(比如GeoServer)进行预先的样式配置。
  • 矢量切片的大小通常比图片瓦片小,这可以使得数据传输得更快以及使用更低的带宽。
  • GeoServer内嵌的GeoWebCache可以有效地存储矢量切片数据。由于样式由客户端配置,而不是在服务器配置,因此GeoWebCache只需要存储一个矢量切片就能在客户端配置不同的样式
  • 由于在客户端上可以获取到矢量数据,所以不需要相应地增加带宽,就可以绘制分辨率很高的地图
  • 客户端可以本地访问实际的要素信息(属性信息和几何信息),所以可以进行非常复杂和精细的要素渲染。

缺点:

矢量切片的主要缺点是需要对地理数据进行预处理,以便客户端能够完成所需的绘图(类似于图像瓦片地图的预处理数据)。考虑到这一点,矢量切片只能用于渲染。虽然是矢量格式,但是它们不可编辑,矢量切片是为了读取和渲染优化的格式,如果想在客户端编辑要素,最适合的是使用OGC的WFS服务。

另外理论可以参考这篇文章,我偶尔看到的,感觉还行:

理论支撑参考

到此,geoserver发布矢量切片服务理论与实战分享完毕,大家多测试验证几次,定会收获很多。

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

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

相关文章

Verilog语法概述二:何为仿真?仿真可以在几个层面上进行?

Verilog 是一种用于数字逻辑电路设计的硬件描述语言,可以用来进行数字电路的仿真验证、时序分析、逻辑综合。 既是一种行为级(可用于电路的功能描述)描述语言又是一种结构性(可用于元器件及其之间的连接)描述语言。 …

day34_js

今日内容 零、 复习昨日 一、JS 零、 复习昨日 一、引言 1.1 JavaScript简介 JavaScript一种解释性脚本语言,是一种动态类型、弱类型、基于原型继承的语言,内置支持类型。它的解释器被称为JavaScript引擎,作为浏览器的一部分,广泛…

数据分类分级 数据识别-excel分类分级模版文件导入、解析

前面讲了数据分类分级 数据识别-实现部分敏感数据识别,本次针对模版导入展开,excel导入采用的是easyexcel 目录 easyexcel介绍easyexcel实战添加依赖读取数据监听器的实现数据读取方法读取结果上面图片是AI创作生成!如需咒语可私戳哦! easyexcel介绍 之前的excel导入解析…

全网最可”铐“最可“刑”的fiddler抓包教程

Fiddler 下载: https://telerik-fiddler.s3.amazonaws.com/fiddler/FiddlerSetup.exe 浏览器f12 选择“网络”,点选“保留日志” Fiddler 浏览器执行“去缓存刷新”:shiftf5 会话 即是 包 har文件在测试当中有什么作用?:h…

存储卡格式化后如何找回数据?一招轻松恢复数据

存储卡内存不足、存储卡中毒、存储卡损坏这几种情况都会导致我们把存储卡格式化操作,存储卡格式化后所有数据都会清空,这是众所皆知的,存储卡不小心格式化了怎么办? 其实是有方法恢复格式化的数据,我们可以通过专业的数…

香橙派4和树莓派4B构建K8S集群实践之五:端口公开访问配置

1. 应用场景说明 - 我们需用k8s集群提供开放特别的端口访问服务,如一些微服务端口 - 在团队开发环境中,通常要访问公共数据库,集群需提供统一的接口给大伙 接下来以实践四中设置的mariadb-galera为基础,公开端口3306&#xff0…

银豆信息张雪灿:钻石级合作伙伴的增长秘诀

编者按: 杭州银豆信息技术有限公司(简称“银豆”),是一家专注于云计算服务的高科技企业,目前已为2000家企业级客户提供了专业的行业解决方案, 与人民网、光大银行、长安汽车金融、vivo金融、浙江省农科院、淄博市大数…

django部署在Centos7+python3+apache上教程

django在本地环境非常好配置使用自带的web服务就可以了但是部署到服务器上再使用自带的web就不方便了 一般是配合nginx或apache来使用。 这篇文章主要是教如何搭配apache的 1.升级sqlite3(高版本django高版本不支持低版本sqlite3) #一定要在安装python…

[ACTF新生赛2020]easyre 题解

1.查壳 32位文件,加了UPX壳 2.手动脱壳 使用Ollydbg UPX是一个压缩壳,运行了UPX将我们要运行的已经压缩的程序解压,才是真正的程序入口点OEP 我们需要将跟着汇编代码,找到程序真正的入口点 使用ESP定律可以快速定位 按下F7&…

Git设置代理

有时会国内会因为github克隆速度非常慢,中途各种错误断开造成克隆项目失败,可以尝试设置代理解决。 1、http、https协议 //设置全局代理 //http git config --global https.proxy http://127.0.0.1:1080 //https git config --global https.proxy http…

图神经网络:(节点分类)在KarateClub数据集上动手实现图神经网络

文章说明: 1)参考资料:PYG官方文档。超链。 2)博主水平不高,如有错误还望批评指正。 3)我在百度网盘上传了这篇文章的jupyter notebook。超链。提取码8888。 文章目录 文献阅读:代码实操: 文献阅读: 参考文…

一个由“API未授权漏洞”引发的百万级敏感数据泄露

2023年4月的某一天,腾讯安全专家Leo正在为某家医院的重保防护做第一轮的安全风险排查。 医院的专用APP是外部网络访问最高的,也就是最大的风险敞口,需要重点排查。 Leo下载APP进行测试后,发现该医院存在一个严重的问题&#xff…

图像复原与重建MATLAB实验

文章目录 一、实验目的二、实验内容1. 噪声图像及其直方图。2. 空间噪声滤波器。3. 逆滤波。 一、实验目的 了解一些常用随机噪声的生成方法。掌握根据指定退化函数对图像进行退化的方法。掌握当模糊图像只存在噪声时的几种滤波复原方法。掌握当模糊图像同时存在线性退化和噪声…

学会搭建小程序生鲜商城,开启生鲜电商新模式

电商平台的出现,为人们带来了极大的便利。然而,传统的电商平台已经不能满足消费者对于购物体验的要求。如今,小程序生鲜商城因其轻量化、高效率等特点,成为了众多卖家的首选。本文将介绍如何学会搭建小程序生鲜商城,并…

二分特训上------刷题部分----Week4(附带LeetCode特训)

二分特训上------理论部分----Week4(附带LeetCode特训)_小杰312的博客-CSDN博客 如果需要理论,请移步上一篇. /***** 注意:我们把 0000001111111模型中:0称呼为左边区间,1称呼为右边区间 (答案第一个1在右区间) 1111…

浅谈Redis

一、Redis的简介 1.开源免费的缓存中间件,性能高,读可达110000次/s,写可达81000次/s。 2.redis的单线程讨论: V4.0之前:是单线程的,所有任务处理都在一个线程内完成. V4.0:引入多线程,异步线程用于处理一些耗…

机器学习基础学习之线性回归

文章目录 首先从**目标函数**开始梯度下降法结合两个公式,让目标函数梯度下降多项式回归,多重回归解决办法:随机梯度下降 首先从目标函数开始 假设下图反映了 投入多少广告费,产生了多少销售量的关系 图中每个点都是一个数据&a…

Spring Security

1、这是securityConfigpackage com.ruoyi.framework.config;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.http.HttpMethod; import org.springframework.security.authe…

【JAVA】Java中方法的使用,理解方法重载和递归

目录 1.方法的概念及使用 1.1什么是方法 1.2方法的定义 1.3方法调用的执行过程 1.4实参和形参 2.方法重载 2.1为什么需要使用方法重载 2.2什么是方法重载 3.递归 3.1什么是递归 3.2递归执行的过程 3.3递归的使用 1.方法的概念及使用 1.1什么是方法 方法就是一个代…