
GIS入门笔记
文章平均质量分 80
GIS是地理信息系统统称,本专栏用于记录博主开发经验所得和整理gis资料。
优惠券已抵扣
余额抵扣
还需支付
¥29.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
汤姆猫不是猫
GIS地图开发日常分享,Openlayers6教程,OpenLayers7教程,Leaflet教程,最容易上手的GIS地图开发教程,最好的GIS地图开发教程。
展开
-
GIS开发入门,OpenLayers、Leaflet、Maplibre-gl和Cesiumjs地图引擎介绍以及几种地图服务vms、vmts、TMS和XYZ介绍
OpenLayer、Leaflet、Maplibre-gl和Cesiumjs(3d)OpenLayer 对各种地图服务支持较好,比如各种vms,vmts等,动态效果较差。Leaflet 对vue支持较好,与前端交互方便,对地图服务支持不好Maplibre-gl:继承自Mapbox-2d的开源分支,Mapbox商业化后Maplibre-gl项目从Mapbox-2d的开源分支开始继续维护更新,号称地图服务中动态效果最好的库,插件较多,个人感觉像是地图引擎里的游戏引擎,各种动态效果极好。原创 2023-04-10 15:08:45 · 14560 阅读 · 3 评论 -
无论前端还是后端,程序员都应该要懂一点GIS知识
GIS 是地理信息系统的简称。ESRI 对GIS的解释:地理信息系统 (GIS) 是一个创建、管理、分析和绘制所有类型数据的系统。GIS 将数据连接到地图,将位置数据(事物所在位置)与所有类型的描述性信息(事物在该位置的情况)集成到一起。这可以为适用于自然科学和几乎所有行业的制图和分析提供基础。GIS 帮助用户了解模式、关系和地理环境。其优势包括改善沟通、提高效率以及更好地管理和决策。在科技飞速发展的今天,我们几乎每天都在跟位置信息打交道。原创 2024-05-24 19:43:09 · 579 阅读 · 0 评论 -
GIS入门,不使用任何第三方库,纯JavaScript实现Catmull-Rom样条曲线(Spline Curve)插值算法,生成更加平滑连续的曲线
样条曲线(Spline Curve)是一种通过给定的控制点插值生成平滑曲线的方法。其基本原理是通过控制点之间的插值来生成曲线,保证曲线的平滑性和连续性。通常情况下,样条曲线会经过每一个控制点,但并不受控制点的移动而发生剧烈变化,从而形成平滑的曲线。原创 2024-05-08 10:05:21 · 346 阅读 · 0 评论 -
GIS入门,不使用任何第三方库,纯JavaScript实现自定义多边形平滑曲线算法
我们使用Chaikin’s smoothing是一种基于迭代的曲线平滑方法,它通过重复的调整曲线上的点位置,以减少曲线的角度变化,从而使曲线变得更加平滑。初始化:将原始曲线的顶点作为初始点集合。迭代处理对于每条线段,根据设定的参数(通常是一个比例因子),将线段分成两部分,并在每个分割点处插入一个新的点。新插入的点的位置是原始线段的两个端点的某种线性组合,通常是按照一定的比例来确定。重复处理:重复执行迭代处理步骤,直到曲线的平滑度达到满意的程度或者达到了预先设定的迭代次数。原创 2024-05-08 09:48:55 · 282 阅读 · 2 评论 -
GIS入门,常用的多边形平滑曲线算法介绍和JavaScript的多边形平滑曲线算法库chaikin-smooth的实现原理和使用
是一个基于 Chaikin’s algorithm 的曲线平滑处理技术的js库。基于多边形平滑曲线算法,通过迭代地调整曲线上的点位置,使得曲线更加平滑,减少曲线的角度变化,从而改善曲线的视觉效果。在中,通常会指定一个迭代次数或者一个平滑程度参数,来控制平滑处理的程度。通过多次迭代,曲线上的点逐渐向原始曲线的局部中心移动,从而使得曲线变得更加平滑。这种方法的优点是简单易实现,并且可以在较少的迭代次数内产生较好的平滑效果。原创 2024-05-07 15:46:47 · 614 阅读 · 1 评论 -
GIS入门,Java不使用任何第三方库实现射线穿越法计算某个点是否与多边形相交,比普通射线法提升了计算性能
在上一章中《GIS入门,Java不使用任何第三方库实现判断一个经纬度点是否在多个经纬度点组成的多边形内,计算某个点是否与多边形相交》,我们使用了一个最简单的算法“射线法”来计算一个点到是否与多边形相交,但是对于多边形非常多的顶点时,计算就会力有不逮。(Ray Crossing Algorithm)或(Ray Casting Algorithm)来更快的计算某个点是否与多边形相交。原创 2024-04-15 17:39:58 · 215 阅读 · 1 评论 -
GIS入门,Java不使用任何第三方库实现判断一个经纬度点是否在多个经纬度点组成的多边形内,计算某个点是否与多边形相交
本章记录Java实现“射线法”判断一个经纬度点是否在多个经纬度点组成的多边形内的算法,也就是检查某个经纬度点是否与该多边形相交。原创 2024-04-15 17:30:27 · 375 阅读 · 0 评论 -
GIS入门,EPSG:3857介绍,纯JS如何实现简化得Web墨卡托投影的逆变换和高精度Web墨卡托投影逆变换转换EPSG:3857坐标成EPSG:4326坐标
EPSG:3857坐标系,也称为(Web Mercator projection),是一种用于Web地图的常见投影系统。它是由谷歌地图在2005年引入并广泛采用的。这个投影系统将地球表面的经纬度坐标转换为平面坐标,使得地图在Web上的显示更加方便和流畅。坐标系使用的是(Mercator projection),它将地球表面投影到一个平面上,以保持经线和纬线之间的角度不变。这意味着在墨卡托投影下,经线和纬线都是直线,而且纬度越高的地方,投影后的坐标值越大。尽管。原创 2024-04-03 09:58:29 · 932 阅读 · 0 评论 -
GIS入门,Web墨卡托投影是什么? Web墨卡托投影使用EPSG:3857坐标系,Web墨卡托投影和普通墨卡托投影有什么区别?
Web墨卡托投影的原理基于墨卡托投影,但为了适应Web地图开发的需求,做出了一些调整和优化。下面是Web墨卡托投影的基本原理:球体到平面的投影:墨卡托投影是一种将地球表面上的经纬度坐标投影到平面上的投影方式。在Web墨卡托投影中,地球被假设为一个完美的球体,而不是椭球体,这样可以简化计算。圆柱投影:Web墨卡托投影是一种圆柱投影,即将地球表面投影到一个无限长的圆柱体上,然后展开成平面。这种投影方式保持了地图的方向性,即保证了地图上东西方向和实际地球表面上的东西方向一致。原创 2024-03-31 10:42:05 · 962 阅读 · 0 评论 -
Web墨卡托投影和普通墨卡托投影是一样的吗?Web墨卡托投影与EPSG:3857坐标系的关系,EPSG:3857坐标系和EPSG:4326坐标系有什么区别?
普通墨卡托投影Web墨卡托投影总的来说,Web墨卡托投影是普通墨卡托投影在Web开发中的一种特定应用,主要用于在Web地图中显示地图数据,并且通常有特定的坐标范围和单位。原创 2024-03-31 10:24:33 · 648 阅读 · 0 评论 -
GIS入门,WGS84坐标如何转换为墨卡托投影坐标,以及球面墨卡托投影公式介绍
WGS84坐标系:WGS84是一种地理坐标系统,用于描述地球表面上的位置。它使用经度和纬度来表示位置,以度为单位。WGS84坐标系是一种球面坐标系,用于直接表示地球上的点的位置。墨卡托投影坐标:墨卡托投影是一种地图投影方法,用于将地球表面上的经纬度坐标投影到平面上。墨卡托投影将地球上的点投影到一个平面上的直角坐标系,通常使用x和y坐标来表示。墨卡托投影坐标通常用于地图制作和导航等应用中。原创 2024-03-30 16:44:31 · 1398 阅读 · 0 评论 -
GIS硬核入门,二维地图是如何使用WGS84坐标系来转换成墨卡托投影的xyz地图瓦片切片的详细原理
二维地图一般分成两种,一种是简化的道路地图视图,一种是卫星拍摄的高清影像地图。原创 2024-03-30 16:28:36 · 718 阅读 · 0 评论 -
三种ESPG4326转换ESPG3857经纬度坐标转换算法详解,反墨卡托投影算法,根据地球半径的精简快速转换算法以及考虑椭球体情况下的高精度转换算法
本文介绍三种ESPG4326转换ESPG3857经纬度坐标转换算法详解,反墨卡托投影算法,根据地球半径的精简快速转换算法以及考虑地球椭圆情况下的高精度转换算法。原创 2024-03-23 23:17:11 · 930 阅读 · 0 评论 -
GIS入门,GeoServer介绍,GeoServer如何发布WMTS地图服务,GeoServer如何自动切割瓦片
GeoServer是一个开源的地理空间数据服务器,它允许用户共享、处理和编辑地理空间数据。GeoServer基于Java开发,可以将各种空间数据格式(如Shapefile、PostGIS、Oracle Spatial等)转换为标准的地理空间数据服务,比如Web Map Service (WMS)、Web Feature Service (WFS)和Web Coverage Service (WCS)等。原创 2024-03-15 11:00:50 · 438 阅读 · 0 评论 -
GIS入门,经纬度和坐标系详解,什么是经纬度?经纬度有哪些坐标系?常见的地图应用中都使用哪些坐标系?天地图百度高德谷歌分别使用哪些坐标系?OpenLayers使用什么坐标系?
经纬度坐标(Latitude and Longitude Coordinates)是一种用于地理定位的坐标系统,用来标识地球表面上特定位置的位置信息。经纬度坐标是基于地球的形状和结构而定义的。经度(Longitude)用来表示一个位置相对于地球的东西方向,以0度为基准线,向东为正值,向西为负值,最大值为180度。经度的单位通常是度(°)。纬度(Latitude)用来表示一个位置相对于地球的南北方向,以赤道为基准线,向北为正值,向南为负值,最大值为90度。纬度的单位也是度(°)。原创 2024-03-14 18:33:22 · 6484 阅读 · 0 评论 -
Vue+OpenLayers7入门到实战:OpenLayers地图默认使用什么投影? 要如何更改OpenLayers地图的投影?
地图投影是将球面地图上的三维地理坐标系(经纬度)转换成平面地图上的二维坐标系的过程。由于地球是一个近似的椭球体,而平面地图是一个二维表面,因此需要采用适当的投影方式来实现这种转换。《GIS入门,什么是地图投影,地图投影有哪些类型,墨卡托投影属于哪一种类型的投影,为什么OpenLayers地图默认使用墨卡托投影》原创 2024-01-23 14:48:34 · 596 阅读 · 0 评论 -
GIS入门,什么是地图投影,地图投影有哪些类型,墨卡托投影属于哪一种类型的投影,为什么OpenLayers地图默认使用墨卡托投影
地图投影是将球面地图上的三维地理坐标系(经纬度)转换成平面地图上的二维坐标系的过程。由于地球是一个近似的椭球体,而平面地图是一个二维表面,因此需要采用适当的投影方式来实现这种转换。地图投影有很多种类型,每种类型都有其独特的数学算法和参数设置。常见的地图投影包括墨卡托投影、麦卡托投影、极射投影、兰伯特投影等。不同的投影方式会导致不同程度的形变,例如,某些投影方式可能会保留面积或角度,而牺牲距离或方向的精度。地图投影在地图制图领域中起着非常重要的作用。原创 2024-01-23 14:34:45 · 762 阅读 · 0 评论 -
GIS入门,JavaScript如何将度分秒(°′″)格式的经纬度数据转换为十进制小数格式
本章讲解JavaScript如何将度分秒格式(°′″)的经纬度数据转换为十进制小数格式。比如将 "40°30′30″(纬度:40度30分30秒)转换为,120°20′15″(经度: 120度20分15秒)转换为 40.508333,120.337500。原创 2024-01-09 15:28:49 · 709 阅读 · 0 评论 -
不使用任何第三方库,纯JavaScript代码实现WGS-84坐标系到高德坐标系(GCJ-02)的转换
WGS-84(World Geodetic System 1984)是一个由美国国防部、国家海洋和大气管理局(NOAA)以及其他合作伙伴共同开发的地球大地测量系统,于1984年发布。它是一种地理坐标系,用于定义地球表面上的点的位置。WGS-84坐标系的原点位于地球质心,其基准椭球面参数为:长半轴a=6378137米,短半轴b=6356752.3142米,扁率f=(a-b)/a=1/298.257223563。WGS-84坐标系在全球范围内广泛使用,包括GPS定位系统、航空航天领域、地图制图等应用。原创 2024-01-08 14:25:51 · 2260 阅读 · 0 评论 -
如何使用Java的GeoTools地理库计算WGS84坐标下的两个经纬度之间得距离
GeoTools是开源的Java地理信息计算库。GeoServer地图引擎就是基于GeoTools库构建得地图服务,可以说非常强大。官网地址:https://docs.geotools.org/GeoTools结构。原创 2023-12-22 13:20:34 · 1115 阅读 · 0 评论 -
GIS入门,Leaflet介绍,Leaflet可以做什么,网页中如何使用Leaflet地图,vue中如何使用Leaflet地图
Leaflet是一个开源的JavaScript库,用于创建交互式的地图和地图应用。Leaflet框架具有轻量级、灵活性强、易于使用和扩展等特点,支持各种地图服务商(如OpenStreetMap、Google Maps、Bing等)和自定义地图图层。原创 2023-12-08 13:21:30 · 1500 阅读 · 1 评论 -
GIS入门,开源 JavaScript二维地图引擎OpenLayers介绍
OpenLayers是一个开源的JavaScript库,用于显示交互式的地图和地理数据,支持多种地图数据源和格式。主要用途是在Web应用程序中呈现地图,并且可以进行各种交互操作。使用OpenLayers可以轻松创建地图应用程序,包括地图的显示、地图上的标记、地图缩放、平移、定位、测量等。OpenLayers支持的地图格式包括WMSWFSWMTSKMLGeoJSON等格式。同时,OpenLayers也支持自定义图层和数据源,可以轻松实现和集成各种第三方地图数据。原创 2023-11-25 23:49:28 · 2908 阅读 · 0 评论 -
GIS入门,xyz地图瓦片是什么,xyz数据格式详解,如何发布离线XYZ瓦片到nginx或者tomcat中
XYZ瓦片是一种在线地图数据格式,由goole公司开发。与其他瓦片地图类似,XYZ瓦片将地图数据分解为一系列小的图像块,以提高地图显示效率和性能。XYZ瓦片提供了一种开放的地图平台,使开发者可以轻松地将地图集成到自己的应用程序中。同时,它还提供了高分辨率图像和3D地图服务,支持多种编程语言和开发工具。XYZ瓦片通常用于定位和导航应用、游戏开发、GIS应用和其他需要地图数据的应用程序中。原创 2023-11-09 09:31:42 · 2632 阅读 · 0 评论 -
GIS入门,WMTS介绍,WMTS与WMS有什么区别,OpenLayers和cesium如何加载WMTS?
WMS和WMTS都是用于提供Web地图服务的标准化方式。WMS提供的是动态地图图像,而WMTS提供的是静态的地图瓦片。WMTS能够更快地加载地图瓦片数据,也能够更好地支持高并发请求。原创 2023-11-10 09:44:26 · 1676 阅读 · 0 评论 -
开源GIS工具分享,基于Java的开源GIS代码库GeoTools介绍
GeoTools介绍GeoTools是一个基于Java开发的开源(LGPL)的GIS代码库,它为地理空间数据的操作提供了符合标准的方法,例如实现地理信息系统。GeoTools 库数据结构基于开放地理空间联盟 (OGC) 规范。原创 2023-11-09 13:58:46 · 1083 阅读 · 0 评论 -
GIS入门,地理信息气象科学常用数据格式
在了解地理信息气象科学常用数据格式之前,先了解一下地理信息气象科学常应用于哪些场景,比如卫星云图、风场、气象观测数据(温度、湿度、气压、风向、风速等)、气候数据(气温、降水量、风速、日照等)、地形数据(高程、坡度、坡向、流域等)、地理信息系统数据(行政区划边界、河流湖泊、地形等)、大气环流模式(AGCM)数据(全球气候模式和区域气候模式模拟的气象数据)、数值天气预报(NWP)数据(气象预报模型的输出数据,包括温度、湿度、压强、降水量、风向、风速等)和人工影响天气数据(云雾消散剂、人工降雨剂等)。原创 2023-08-28 10:02:20 · 807 阅读 · 0 评论 -
GIS开发入门,GeoJSON是什么?GeoJSON格式标准介绍
GeoJSON是一种使用JSON格式描述地理数据结构的编码格式。原创 2023-04-10 14:57:14 · 2226 阅读 · 0 评论 -
GIS开发入门,TopoJSON格式是什么?TopoJSON格式与GeoJSON格式有什么不同?
TopoJSON是一种几何拓扑结构的地理数据格式,它使用拓扑结构来表示地理对象,可以更有效地压缩和转移数据,从而加快数据加载速度。原创 2023-11-08 23:10:59 · 476 阅读 · 0 评论 -
GIS开源工具分享,Geojson格式转Topojson格式,使用TopoJSON Server工具进行Geojson转换为Topojson
GEOJSON是gis地图中常用的数据格式,制作地图时用于存储各种地理数据,使用时通过OpenLayer、Leaflet、mapLibre-gl或者Cesium加载GEOJSON即可渲染出GEOJSON中描述的地理要素。TopoJson是用于表示地理空间数据的格式。原创 2023-10-30 16:22:53 · 724 阅读 · 0 评论 -
GIS入门,WKT格式详解
WKT是Well-known Text的缩写,它是一种用于描述地理空间几何对象的文本格式。WKT是一种开放的国际标准,由Open Geospatial Consortium(OGC)定义和维护。WKT是一种标准的表示方法,可以用来描述点、线、面等地理空间对象的形状和位置。通过使用一系列的坐标点和关键字,WKT可以精确地描述出地理空间对象的几何特征,可以用于描述二维和三维几何的空间特征。原创 2023-09-11 19:09:01 · 1961 阅读 · 0 评论 -
使用Java的GeoTools地理库计算某个点是否在多边形内,经纬度数组转换为wkt格式数据
GeoTools是开源的Java地理信息计算库。GeoServer地图引擎就是基于GeoTools库构建得地图服务,可以说非常强大。官网地址:https://docs.geotools.org/GeoTools结构。原创 2023-10-12 14:47:35 · 964 阅读 · 0 评论 -
Java通用转换地图坐标系离线算法,天地图和超图WGS84坐标系、高德GCJ-02坐标系和百度BD-09坐标系三个坐标系互相转换
Java通用转换WGS84、GCJ-02和BD-09三种地图坐标系离线算法。目前这种坐标系转换在各个地图服务都不是免费的服务。而通过本章,就可以实现这三种坐标系的离线转换。首先,为了方便理解,大致介绍一下三种坐标系和坐标系之间的关系。博主一开始接触就很迷茫,搞不清楚这几种坐标系是啥玩意,有啥关系,造成了写代码时遇到很大困扰。原创 2022-09-29 10:12:47 · 3808 阅读 · 3 评论 -
GIS入门,使用起止点和两个控制点生成三阶贝塞尔曲线(共四个控制点,线段转曲线)
贝塞尔曲线(Bezier curve)是一种数学曲线,常用于计算机图形学、计算机辅助设计和动画等领域。它由法国数学家皮埃尔·贝塞尔(Pierre Bézier)在20世纪50年代提出,并被广泛应用。贝塞尔曲线可以用于描述平滑的曲线路径,它由一系列控制点和插值点组成。根据控制点的位置和权重,曲线的形状和弯曲程度会发生变化。贝塞尔曲线的阶数由控制点的数量决定,常见的有二阶贝塞尔曲线(二次曲线)、三阶贝塞尔曲线(三次曲线)等。原创 2023-08-01 17:32:45 · 512 阅读 · 0 评论 -
GIS入门,根据起止点和一个控制点计算二阶贝塞尔曲线(共三个控制点组成的线段转曲线)
贝塞尔曲线(Bezier curve)是一种数学曲线,常用于计算机图形学、计算机辅助设计和动画等领域。它由法国数学家皮埃尔·贝塞尔(Pierre Bézier)在20世纪50年代提出,并被广泛应用。贝塞尔曲线可以用于描述平滑的曲线路径,它由一系列控制点和插值点组成。根据控制点的位置和权重,曲线的形状和弯曲程度会发生变化。贝塞尔曲线的阶数由控制点的数量决定,常见的有二阶贝塞尔曲线(二次曲线)、三阶贝塞尔曲线(三次曲线)等。原创 2023-08-01 17:25:42 · 440 阅读 · 0 评论 -
两种方式获取GeoServer发布的Web地图平铺服务(wmts)标准WMTSCapabilities.xml文件
GeoServer 是基于 Java 的开源GIS服务器,允许用户查看和编辑地理空间数据。使用开放地理空间联盟 (OGC) 制定的开放标准实现。OGC Web Map Tile Service实施标准 (WMTS)定义一组接口,用于使用具有预定义内容、范围和分辨率的分幅图像对空间参考数据的地图分幅进行基于web的请求。本标准包括WMTS规范(“WMTS规范”)以及附带文档,如概要文件和XML文档。WMTS补充了OGC Web Map Service interface standard (WMS)原创 2022-11-09 14:14:56 · 1266 阅读 · 0 评论 -
QGIS如何下载离线XYZ地图瓦片
本章讲解使用QGIS如何下载离线XYZ地图瓦片。QGIS介绍,QGIS是一款开源的桌面GIS软件,可以用于地图数据显示、编辑和导出。原创 2023-08-10 11:29:34 · 3050 阅读 · 0 评论