WebGIS开发中一些常见的概念

0. 坐标系投影

地理坐标系和投影坐标系是两种常用的坐标系统,它们各自有着独特的特性和应用场景。

0.1 地理坐标系

地理坐标系(Geographic Coordinate System, 简称 GCS)是以地球椭球体面为参考面,以法线为依据,用经纬度表示地面点在椭球表面的位置的坐标系统。简单来说,地理坐标系就是用经纬度来表示地球表面物体的位置。不同的地理坐标系的区别在于用于拟合地球大地水准面的椭球大小和位置。常见的地理坐标系包括GCS_WGS_1984GCS_CN_2000GCS_Beijing_1954GCS_Xian_1980等。
地理坐标系

0.2 投影坐标系

投影坐标系(Projection Coordinate System,简称PCS)的实质是平面坐标系统,地图单位通常为米。它是将球面坐标转为平面坐标的过程,即将地球椭球展平在地图上画出来。投影坐标系的主要用途包括地图制作和长度、面积的量测等。
投影坐标系

0.3 投影转换

当我们需要在地理坐标系和投影坐标系之间进行转换时,需要进行投影转换。投影转换通常涉及到将地理坐标(经纬度)转换为投影坐标(米),或者将投影坐标转换为地理坐标。

0.4 大地坐标系

大地坐标系是以参考椭球面为基准面而建立起来的坐标系,也可以简单理解成属于地理坐标系的一种。大地坐标系又分为参心大地坐标系地心大地坐标系。其中参心坐标系是以椭球几何中心为原点构建的坐标系,一般用来对局部地区大地测绘使用,而地心坐标系是以地球质心为原点构建的坐标系,一般用来对地球整体大地测绘使用。

0.5 常用坐标系

  • WGS84:地心大地坐标系,我们常说的GPS定位系统就是依据此坐标系建立的。
  • CGCS200:地心大地坐标系,参数跟84稍有不同,可忽略。
  • GCJ02:又称火星坐标系,中国国家测绘局所制定的坐标系统,其本质就是在 WGS84 经纬度的基础上进行了偏移加密。
  • BD09:百度在GCJ02 的基础上又进行了一层加密。

1. EPSG

1.1 介绍

EPSG(European Petroleum Survey Group)是一个标准化的地理空间参考系统标识符集合,中文名为欧洲石油调查组织。2005年EPSG组织并入国际油气生产者协会IOGP(International Association of Oil & Gas Producers)

EPSG 用于标识不同的地理空间参考系统,包括坐标系统、地理坐标系、投影坐标系等。这些标识符可用于许多应用程序和地理信息系统软件,以确保数据在不同系统之间的正确转换和处理。现在,EPSG已被开放地理空间信息联盟OGC(Open Geospatial Consortium)承认并管理,成为了一个全球性的标准。

EPSG 是将常用的坐标系、投影、地理坐标系等地理空间参考系统的名称、参数、定义等信息进行标准化,并赋予一个唯一编码。

1.2 常见的EPSG编码

  • EPSG:4326: 是WGS84坐标系。
    4326

  • EPSG:3857EPSG:900913: 是Web墨卡托投影坐标系。
    3857

900913

  • EPSG:4490 : CGCS 2000地理坐标系统
    4490

  • EPSG:4214 : Beijing 1954地理坐标系统
    4214

  • EPSG:4610 : Xian 1980地理坐标系统
    image.png

3. GIS数据

可以将GIS数据分为矢量数据和栅格数据,其中矢量数据以点、线、面等几何图形来表示地理实体,栅格数据以像素的形式来表示地理实体。
GIS数据

3.1 矢量数据

矢量数据是以点、线、面的形式来表示客观世界中的实体,它以一组(x,y)或(x,y,z)的坐标点的形式进行存储。同一个空间实体在不同的坐标系中,可以被表示成为点线面中的任何一种。
矢量数据

3.2 栅格数据

栅格数据是将空间划分成很多有规律的网格,每一个网格都表示空间上相同大小的范围,网格的值表示该空间范围内被计算出来的某一属性值,每一个栅格所表示的地面实际范围的大小,被称为分辨率
栅格数据

从数据特征上来讲,栅格数据有连续离散两种类型,连续数据如气温和等高线数据,离散数据如人口密度等。

4. OGC

开放地理空间信息联盟(Open Geospatial Consortium), 它的主要目的就是制定与空间信息、基于位置服务相关的标准。而这些所谓的标准其实就是一些接口或编码的技术文档,不同的厂商、各种GIS产品都可以对照这些文档来定义开放服务的接口、空间数据存储的编码、空间操作的方法。

image.png

常用到的WMS、WFS、WCS、WMTS等。

4.1 WMS

WMS的全称是Web Map Service,web地图服务。它是将地理数据添加样式后进行实时出图,是一个使用动态数据或用户定制地图的理想解决办法。
OGC提供的用于地图渲染的WMS服务的操作接口有:
image.png

https://ahocevar.com/geoserver/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image/png&TRANSPARENT=true&LAYERS=topp:states&CRS=EPSG:3857&STYLES=&WIDTH=658&HEIGHT=355&BBOX=-13888944.635145342,2867630.7173607955,-7451112.364854658,6340929.2826392045

4.2 WFS

WFS服务的全称是Web Feature Service,web要素服务。支持对地理要素的插入、更新、删除、检索和发现,该服务根据HTTP客户请求返回GML(Geography Markup Language,地理标识语言)数据,可以通过OGC Filter构造查询条件,支持基于空间几何关系的查询、基于属性域的查询、基于空间关系和属性域的共同查询。
image.png

https://ahocevar.com/geoserver/wfs?service=WFS&version=1.1.0&request=GetFeature&typename=osm:water_areas&outputFormat=application/json&srsname=EPSG:3857&bbox=-8948615.422847113,5370452.51819444,-8869159.13194467,5393383.626679991

4.3 WMTS

WMTS服务的全称是Web Map Tile Service,web地图切片服务。它是提供一种采用预定义切片方法发布数字地图服务的标准化解决方案,弥补WMS在数据不变的情况下请求慢的不足。
image.png

https://mrdata.usgs.gov/mapcache/wmts?layer=sgmc2&style=default&tilematrixset=GoogleMapsCompatible&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image/png&TileMatrix=4&TileCol=3&TileRow=6

5. 地图切片

采用预生成的方法存放在服务器端,然后根据用户提交的不同请求,把相应的地图瓦片发送给客户端的过程,它是一种多分辨率层次模型,从瓦片金字塔底层到顶层,分辨率越来越低,但表示的地理范围不变。

image.png

5.1 相关概念

以谷歌切片(900913)集为例来说明一下切片原理和几个重要的概念。

1)切片范围

切片范围是指在制定切片规则的时候,需要定义一个大于数据范围或者与数据范围一致的切片范围,谷歌切片集的切片范围为全球范围,即[-20037508.34, -20037508.34, 20037508.34, 20037508.34]

2)切片原点

在确定了切片范围后,需要定义一个切片原点,切片原点的定义有两种:左上(xyz)或者左下(tms)。切片原点的选择主要影响 “级-行-列”中的“列”。谷歌切片集的切片原点为左上,即 [-20037508.34, 20037508.34]

3)切片大小

对于栅格切片,切片大小是指切片完成后每个图片的大小。对于矢量切片,切片大小指的是客户端在渲染切片数据时所呈现出来的大小。早期,切片的大小是256(谷歌切片集的切片大小)像素,这个跟当时的电脑的分辨率比较小有很大关系,随着技术的进步,现在很多切片的时候会采用512像素的大小,矢量切片在渲染的时候的就是采用的这个大小。

4)切片分辨率

又称为像素大小(Pixel Size),是一组计算值,在不同的级别下其值不同,其计算公式为(xmax - xmin) / tileSize * Math.pow(2, zoom),如在0级的时候,谷歌切片集的分辨率为(20037508.34 - (-20037508.34)) / 256 * Math.pow(2, 0) = 156543.03390625

5.2 切片分类

  • 切片规则
    • xyz:左上
    • tms:左下
  • 切片类型
    • 栅格切片(.png
    • 矢量切片(.mvt.pbf

6. 常用格式

常见的控件数据的存储格式有:GeodatabaseShapefileGeojsonKML/KMZGPXWKT

6.1 Geodatabase

POSTGISMYSQL Spatial等。
image.png

6.2 Shapefile

Shapefile 是最常见的地理空间文件类型。所有商业和开源都接受 Shapefile 作为 GIS 格式。Shpaefile文件的大小限制是2GB。
image.png
其中shp、shx以及dbf为扩展名的文件是必需的,它们的内容如下

  • shp:存储要素几何的主文件
  • shx:存储要素几何的索引文件
  • dbf:存储要素属性信息的dBASE表格
  • prj: 记录投影信息

6.3 Geojson

GeoJSON 以 JavaScript 对象表示法(JSON)形式将坐标存储为文本,包括矢量点、直线和多边形以及属性信息。

// geometry Point(点)、MultiPoint(多点)、LineString(线)、MultiLineString(多线)、Polygon(面)、MultiPolygon(多面)
{"type":"Point","coordinates":[105.380859375,31.57853542647338]}
// feature
{"type":"Feature","properties":{},"geometry":{"type":"Point","coordinates":[105.380859375,31.57853542647338]}}
// collection
{"type": "FeatureCollection","features": [{"type": "Feature","properties": {},"geometry": {"type": "Point","coordinates": [105.380859375,31.57853542647338]}}]
}

6.4 KML/KMZ

KML 代表 Keyhole 标记语言。这种 GIS 格式是基于 XML 的,主要用于谷歌地球。KMZ(KML-Zipped)取代 KML 成为默认的 Google Earth 地理空间格式,因其是该文件的压缩版本。2008年,KML/KMZ 成为开放地理空间联盟的国际标准。

6.5 GPX

GPX(GPS交换格式)是一种轻量级XML数据格式,用于在Internet上的应用程序和Web服务之间交换GPS数据(航点、路线和轨道)。

  • 航点:航点是一个点的 WGS84 (GPS) 坐标,表示 OGR 类型 wkbPoint 的特征层
  • 路线:表示OGR类型wkbLineString的一层特征。它包括一个跟踪点列表,这些点是显示通往目的地的转弯或阶段点的航点
  • 轨道:Tracks 表示 OGR 类型 wkbMultiLineString 的特征层。它由至少一个段组成,该段包含描述路径的点的有序列表中的航路点。它由代表连续 GPS 轨迹的轨迹点列表组成。

6.6 WKT

WKT格式是一种文本格式,用于描述二维和三维几何对象的空间特征。WKT是“Well-Known Text”的缩写,是一种开放的国际标准,由Open Geospatial Consortium(OGC)定义和维护。

1)描述空间实体
POINT (<x> <y>)
MULTIPOINT ((<x1> <y1>, <x2> <y2>, ...))LINESTRING (<x1> <y1>, <x2> <y2>, ...)
MULTILINESTRING ((<x1> <y1>, <x2> <y2>, ...), (<x1> <y1>, <x2> <y2>, ...))POLYGON ((<x1> <y1>, <x2> <y2>, ..., <x1> <y1>))
MULTIPOLYGON (((<x1> <y1>, <x2> <y2>, ..., <x1> <y1>)), ((<x1> <y1>, <x2> <y2>, ..., <x1> <y1>)))
2)描述空间坐标系参数
GEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.01745329251994328,AUTHORITY["EPSG","9122"]],AUTHORITY["EPSG","4326"]]

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Knowledge-Adaptive Contrastive Learning for Recommendation

Knowledge-Adaptive Contrastive Learning for Recommendation&#xff08;WSDM2023&#xff09; 摘要 通过对用户-项目交互和知识图&#xff08;KG&#xff09;信息进行联合建模&#xff0c;基于知识图谱的推荐系统在缓解数据稀疏和冷启动问题方面表现出了优越性。 近年来&a…

C++中STL的sring类常用接口及其源码解析

1. 为什么会有string类&#xff1f; C语言中的字符串 C语言中&#xff0c;字符串是以\0结尾的一些字符的集合&#xff0c;为了操作方便&#xff0c;C标准库中提供了一些str系列的库函数&#xff0c; 但是这些库函数与字符串是分离开的&#xff0c;不太符合OOP的思想&#xff0…

基于Mysql的商业辅助决策系统的设计与实现

TOC springboot295基于Mysql的商业辅助决策系统的设计与实现 第1章 绪论 1.1 课题背景 二十一世纪互联网的出现&#xff0c;改变了几千年以来人们的生活&#xff0c;不仅仅是生活物资的丰富&#xff0c;还有精神层次的丰富。在互联网诞生之前&#xff0c;地域位置往往是人们…

机器学习/深度学习——关于分类任务的机器学习、深度学习模型的评估指标详解

机器学习/深度学习——模型的评估详解 搭配以下文章进行学习&#xff1a; 卷积神经网络&#xff1a; 深度学习——卷积神经网络&#xff08;convolutional neural network&#xff09;CNN详解&#xff08;一&#xff09;——概述. 步骤清晰0基础可看 深度学习——卷积神经网…

virtualbox 安装 win7 系统注意事项

win7可用ISO镜像 virtualbox安装Windows 7 64位旗舰版 &#xff08;包含镜像文件&#xff09;_virtual pc安装64位windows7-CSDN博客 视图设为了自动缩放&#xff0c;没有菜单了怎么办&#xff1f; 通过按右侧CtrlC/F/L进行切换 复制黏贴不公用怎么办&#xff1f; 宿主机有…

Word密码忘记怎么办?三个密码找回工具帮你轻松找回密码

在工作当中&#xff0c;为了保护文档内容的安全&#xff0c;我们时常会设置密码。但有时会因为长时间未打开而忘记了密码&#xff0c;导致word文档无法打开。面对这种情况&#xff0c;我们该怎么办呢&#xff1f;下面小编就将给大家带来3个实用的密码找回工具&#xff0c;帮助大…

XSS游戏前五关

分享一个XSS游戏的链接 XSS Game 第一关&#xff1a; 这边有一个innerHTML属性&#xff0c;我们查看官方文档 我们找到了它存在的漏洞&#xff0c;直接利用 https://sandbox.pwnfunction.com/warmups/ma-spaghet.html?somebody<img src1 onerror"alert(1337)&quo…

人工智能在子宫内膜癌领域的研究进展|顶刊速递·24-08-12

小罗碎碎念 本期推文主题&#xff1a;人工智能在子宫内膜癌领域中的研究进展 昨天的推文主要介绍的是卵巢癌&#xff0c;有一小部分涉及到了子宫内膜癌&#xff0c;按照最新的规划&#xff0c;今天的推文是与子宫内膜癌相关的。 从事妇科肿瘤研究的老师/同学&#xff0c;可以好…

stm32智能颜色送餐小车(openmv二维码识别+颜色识别+oled显示)

大家好啊&#xff0c;我是情谊&#xff0c;今天我们来介绍一下我最近设计的stm32产品&#xff0c;我们在今年七月份的时候参加了光电设计大赛&#xff0c;我们小队使用的就是stm32的智能送餐小车&#xff0c;虽然止步于省赛&#xff0c;但是还是一次成长的经验吧&#xff0c;那…

用Python读取Excel数据在PPT中的创建图表

可视化数据已成为提高演示文稿专业度的关键因素之一。使用Python从Excel读取数据并在PowerPoint幻灯片中创建图表不仅能够极大地简化图表创建过程&#xff0c;还能确保数据的准确性和图表的即时性。通过Python这一桥梁&#xff0c;我们可以轻松实现数据自动化处理和图表生成&am…

时空自回归模型(STAR)及 Stata 具体操作步骤

目录 一、引言 二、文献综述 三、理论原理 四、实证模型 五、稳健性检验 六、程序代码及解释 附录 数据预处理 生成时空权重矩阵 一、引言 时空自回归模型&#xff08;Spatial-Temporal Autoregressive Model&#xff0c;简称 STAR&#xff09;在分析具有时空特征的数…

【Python养成】:输出两个等腰三角形且平行方向

项目场景&#xff1a; 遇到一个小小的高中小程序题目&#xff0c;有趣就做 了一下&#xff0c;供大家参考。 问题描述 要求使用python编程&#xff0c;实现如下图形。 原因分析&#xff1a; 其实就是 找规律和找空格。先左边后右边。具体解释可以找AI。太简单了没必要亲自讲解…

【C++进阶】map与set的封装实践

文章目录 map和setmapmap的框架迭代器operator()operator--()operator()和operator!()operator*()operator->() insertbegin()end()operator[] ()map的所有代码&#xff1a; set的封装迭代器的封装总结 map和set 通过观察stl的底层我们可以看见&#xff0c;map和set是通过红…

密码学基础---椭圆曲线一文打尽

1.ECC简介及密钥生成 当前公认安全有效的三大类公钥密钥体制分别为基于大数因子分解难题(RSA)、离散对数难题(DSA)和椭圆曲线离散对数&#xff08;ECC&#xff09;难题的密码体制。 最初RSA由于其容易理解被广泛运用&#xff0c;但随着计算机性能的提升&#xff0c;要保证RS…

Golang | Leetcode Golang题解之第336题回文对

题目&#xff1a; 题解&#xff1a; // 哈希表实现 class Solution {public List<List<Integer>> palindromePairs(String[] words) {List<List<Integer>> res new ArrayList<>();int n words.length;Map<String, Integer> indices ne…

AIGC:clip-interrogator

文字生成图片是近年来多模态和大模型研究的热门方向&#xff0c;openai提出的CLIP提供了一个方法建立起了图片和文字的联系&#xff0c;但是只能做到给定一张图片选择给定文本语义最相近的那一个&#xff0c;实际项目开发中我们总是需要从一张图片获取描述&#xff0c;clip-int…

高效录制新选择:2024年Windows录屏软件

录屏能帮助我们捕捉屏幕上的精彩瞬间&#xff0c;作为老师可以用来录制课程&#xff0c;作为会议记录员可以用来录制远程会议。那么有什么软件是适合windows录屏的呢&#xff1f;这次我们一起来探讨一下吧。 1.福昕录屏大师 链接&#xff1a;www.foxitsoftware.cn/REC/ 这款软…

什么是链表/双向链表

看csp j选择的时候看到链表题&#xff0c;那就来写一写吧 什么是链表 首先我们知道数组&#xff1a; 链表和数组有点像&#xff0c;他是这样的&#xff1a; 1----->2------->3------->4 链表中每个数据都有一个指针&#xff0c;指着自己的下一项数据是哪一个 比如…

Android高版本抓包总结

方案1 CharlesVirtualXposedJustTrustMe 推荐使用三星手机此方案 VirtualXposed下载链接&#xff1a;https://github.com/android-hacker/VirtualXposed/releases JustTrustMe下载链接&#xff1a;https://github.com/Fuzion24/JustTrustMe/releases/ 下载完成后使用adb命令…

编辑器和工具扩展

https://www.youtube.com/watch?vovpiYkYFlPM ui提示 检查资源的合法性