
GIS
文章平均质量分 95
GIS
爱看书的小沐
我一读书,就丧失了所有时间感。
他们不会理解这本书,不过这样只有好处。理解令心灵懒散。
我就是想开一家书店。
展开
-
【小沐杂货铺】基于Three.JS绘制太阳系Solar System(GIS 、three.js、WebGL、vue、react)
Three.js是一个基于JavaScript编写的开源3D图形库,利用WebGL技术在网页上渲染3D图形。它提供了许多高级功能,如几何体、纹理、光照、阴影等,以便开发者能够快速地创建复杂且逼真的3D场景。同时,Three.js还具有很好的跨平台和跨浏览器兼容性,让用户无需安装任何插件就可以在现代浏览器上观看3D内容。3D 场景与模型:支持多种 3D 模型格式(如 OBJ、FBX、GLTF)和自定义几何体。材质与光照:提供多种材质类型和光源(如点光源、平行光源),增强场景的真实感。原创 2025-04-04 22:37:12 · 409 阅读 · 0 评论 -
【小沐杂货铺】基于Three.JS绘制三维数字地球Earth(GIS 、three.js、WebGL、vue、react)
Three.js 是一个基于 WebGL 的开源 JavaScript 库,用于在浏览器中创建和展示 3D 图形。它由 Ricardo Cabello(也称为 Mr.doob)于 2010 年创建,旨在简化 WebGL 的复杂性,使开发者能够轻松创建 3D 场景和交互式内容。易用性:提供简洁的 API,降低了 WebGL 的学习门槛,无需深入了解图形学底层知识。跨平台支持:支持所有现代浏览器,包括移动设备。功能丰富:内置多种几何体、材质、光源、动画和交互功能。原创 2025-04-04 22:21:28 · 671 阅读 · 0 评论 -
【小沐学Web3D】three.js 加载三维模型(React)
Three.js 是一款 webGL(3D绘图标准)引擎,可以运行于所有支持 webGL 的浏览器。Three.js 封装了 webGL 底层的 API ,为我们提供了高级的开发接口,可以使用简单的代码去实现 3D 渲染。原创 2025-03-15 21:44:12 · 685 阅读 · 0 评论 -
【小沐学Web3D】three.js 加载三维模型(vue3)
Three.js 是一个基于 JavaScript 的开源库,用于在网页上创建和显示 3D 图形。它基于 WebGL 技术,简化了 3D 图形的开发过程,使得开发者能够轻松地在浏览器中实现复杂的 3D 场景和动画。原创 2025-03-15 21:03:44 · 1085 阅读 · 0 评论 -
【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、glfw、glut、QT)第三期
在现代计算机图形学中,OpenGL(Open Graphics Library)是一个广泛使用的跨平台的图形API,它允许开发者在各种操作系统上渲染二维和三维矢量图形。实现一个三维地球模型是OpenGL应用的一个经典案例,涉及到球体的建模、纹理映射、光照和视角控制等多个方面。原创 2024-12-14 19:48:55 · 1544 阅读 · 3 评论 -
【小沐学GIS】QGIS导出OpenStreetMap数据(QuickOSM、OSM)
OpenStreetMap开放街道地图( OSM) 是一个非常详细的地图数据,是一个建构自由内容之网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界 …其OSM数据开源,可以自由下载使用,免费的全球地图数据库。原创 2024-10-07 14:21:36 · 2435 阅读 · 0 评论 -
【小沐学GIS】QGIS导出OpenStreetMap数据(QuickMapServices、OSM)
Openstreetmap是一种开源地图,简称osm。其包含图层主要有高速公路、铁路、水系、水域、建筑、边界、建筑物等图层。QGIS(在2.0版本之前称之为Quantum GIS)于2002年由Gary Sherman创立,在2007年由OSGeo接管,并于2009年发布了1.0版本。QGIS采用开源证书GNU GPLv2 (GNU General Public License version 2)发布,主要采用C++语言开发,用户界面依赖Qt平台。原创 2024-10-06 13:59:48 · 1327 阅读 · 0 评论 -
【小沐学GIS】blender导入OpenTopography地形数据(BlenderGIS、OSM、Python)
BlenderGIS 是一个开源的 Blender 插件,旨在将 Blender 与地理空间数据连接起来。 通过 BlenderGIS,用户可以轻松导入各种 GIS 数据格式,如 Shapefile、GeoTIFF、OpenStreetMap 数据等,并在 Blender 中创建 3D 地形模型。 该项目的主要目标是简化地理数据在 Blender 中的处理和可视化。原创 2024-10-06 00:06:53 · 1871 阅读 · 7 评论 -
【小沐学GIS】基于ubuntu+three.js的OSM建筑模型显示(node.js、Python)
Ubuntu是一个以桌面应用为主的Linux发行版操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃了GNOME桌面环境,改为Unity。此前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。Ubuntu也拥有庞大的社区力量,用户可以方便地从社区获得帮助。原创 2024-09-28 19:48:27 · 1300 阅读 · 1 评论 -
【小沐学GIS】基于Openstreetmap创建Sionna RT场景(Python)
Blender 是一款免费开源的3D创作套件。使用 Blender,您可以创建3D可视化效果,例如静态图像、3D动画、VFX(视觉特效)快照和视频编辑。它非常适合那些受益于其统一解决方案和响应式开发过程的独立和小型工作室。Blender 是一款跨平台的应用工具,可以在 Linux、macOS 以及 Windows 系统下运行。与其他三维建模工具相比,Blender 对内存和驱动的需求更低。其界面使用 OpenGL,在所有支持的硬件与平台都能提供一致的用户体验。原创 2024-09-21 23:52:53 · 1701 阅读 · 1 评论 -
【小沐学GIS】blender导入OpenStreetMap城市建筑(blender-osm、blosm)
Blender 是一款免费的开源 3D 创作套件,支持整个 3D 管道。使用它强大的工具,你可以轻松创建惊人的 2D/3D 内容。blender-osm 从 OpenStreetMap 导入建筑物,而不应用任何纹理。建筑物高度和楼层数用于创建最终场景。对于具有复杂结构的建筑物,还可以将其合成为 3D 部分。- 支持大量屋顶形状。如果提供了 terrain,则会自动将建筑物放置在 terrain 上。Blender-OSM 下载并导入分辨率约为 30 米的真实地形数据。原创 2024-09-21 22:03:32 · 2611 阅读 · 1 评论 -
【小沐学GIS】Google的kml文件的读写(C++、Python)
KML 是一种文件格式,用于在地球浏览器(例如 Google 地球、Google 地图和 Google 地图移动版)中显示地理数据。KML 使用包含嵌套的元素和属性的结构(基于标记),并符合 XML 标准。所有标记都区分大小写,并且必须与 KML 参考中列出的完全一样。该参考指出了哪些标记是可选的。在给定元素内,标记必须按照参考中列出的顺序显示。Google 地球和 Google 地图可以直接读取 KML 和 KMZ 文件,并可将文件保存为 KMZ 格式。原创 2024-06-22 15:10:31 · 2133 阅读 · 8 评论 -
【小沐学GIS】GDAL库安装和使用(C++、Python)
GDAL 是用于栅格和矢量地理空间数据格式的转换器库,由开源地理空间基金会在 MIT 风格的开源许可下发布。作为一个库,它向调用应用程序提供单个栅格抽象数据模型和单个矢量抽象数据模型,用于所有支持的格式。它还带有各种有用的命令行实用程序,用于数据转换和处理。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)!!原创 2024-05-25 01:54:49 · 11666 阅读 · 0 评论 -
【小沐学GIS】QGIS安装和入门使用
QGIS是一款开源地理信息系统。该项目于2002年5月诞生,同年6月作为SourceForge上的一个项目建立。QGIS目前运行在大多数Unix平台、Windows和macOS上。QGIS是使用Qt工具包(https://www.qt.io)和C++开发的。这意味着QGIS感觉很快,并且有一个令人愉快、易于使用的图形用户界面(GUI)。QGIS旨在成为一个用户友好的地理信息系统,提供常用的功能和特性。该项目的最初目标是提供一个GIS数据查看器。原创 2024-03-03 23:07:07 · 37757 阅读 · 2 评论 -
【小沐学QT】QT学习之Web控件的使用
Qt Creator是跨平台的集成开发环境(IDE),旨在为开发者带来最好的体验。Qt Creator 可在 Windows,Linux 和 macOS 桌面操作系统上运行,并允许开发者在桌面、移动和嵌入式平台上创建软件。Qt(官方发音 [kju:t],音同 cute)是一个跨平台的 C++ 开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序,当然也可以开发不带界面的命令行(Command User Interface,CUI)程序。╮( ̄▽ ̄)╭。原创 2024-02-25 19:14:49 · 3357 阅读 · 3 评论 -
【小沐学GIS】基于C++QT绘制三维数字地球Earth(OpenGL)
Qt(官方发音 [kju:t],音同 cute)是一个跨平台的 C++ 开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序,当然也可以开发不带界面的命令行(Command User Interface,CUI)程序。Qt 经常被当做一个 GUI 库,用来开发图形界面应用程序,但这并不是 Qt 的全部;原创 2024-02-13 20:44:38 · 8886 阅读 · 10 评论 -
【小沐学GIS】基于WebGL绘制三维数字地球Earth(OpenGL)
WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和 数据视觉化。原创 2024-02-12 11:42:33 · 1978 阅读 · 0 评论 -
【小沐学GIS】基于Android绘制三维数字地球Earth(OpenGL)
Android是一个开源的,基于Linux的移动设备操作系统,主要使用于移动设备,如智能手机和平板电脑。Android是由谷歌及其他公司带领的开放手机联盟开发的。原创 2024-02-10 23:59:04 · 2807 阅读 · 4 评论 -
【小沐学GIS】基于Python绘制三维数字地球Earth(OpenGL)
Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言。Python 由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。原创 2024-02-10 09:58:54 · 3767 阅读 · 3 评论 -
【小沐学GIS】基于C++绘制三维太阳系SolarSystem(OpenGL、glfw、glut)
太阳系有一颗恒星、八颗行星、五颗官方认可的矮行星、至少 290 颗卫星、超过 130 万颗小行星和大约 3,900 颗彗星。它位于银河系的外旋臂中,称为猎户座臂或猎户座支线。我们的太阳系以大约515,000英里/小时(828,000公里/小时)的速度绕银河系中心运行。大约需要2.3亿年才能完成围绕银河系中心的一个轨道。我们称它为太阳系,因为它由我们的恒星、太阳和所有被引力束缚的东西组成——水星、金星、地球、火星、木星、土星、天王星和海王星;原创 2024-01-21 22:11:32 · 1690 阅读 · 0 评论 -
【小沐学GIS】基于C#绘制三维数字地球Earth(OpenGL)
OpenGL(英语:Open Graphics Library,译名:开放图形库或者“开放式图形库”)是用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API)。这个接口由近350个不同的函数调用组成,用来绘制从简单的图形到比较复杂的三维景象。而另一种程序接口系统是仅用于Microsoft Windows上的Direct3D。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)原创 2024-01-21 22:10:10 · 2396 阅读 · 0 评论 -
【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、glfw、glut)第二期
地球仪绘制是通过使用OpenGL技术来实现的。首先,需要利用OpenGL绘制球体的方法来创建一个球体模型。可以使用球体的顶点和索引数组来定义球体的几何形状。然后,利用OpenGL的纹理映射功能将一张地球的图片作为纹理映射到整个球体的表面上。通过将纹理坐标映射到球体的顶点上,可以实现将图片贴在球体上的效果。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)!!原创 2024-01-14 23:51:42 · 4079 阅读 · 15 评论 -
【小沐学GIS】基于OpenSceneGraph(OSG)绘制三维数字地球Earth
OpenSceneGraph是一个开源的三维引擎,被广泛的应用在可视化仿真、游戏、虚拟现实、科学计算、三维重建、地理信息、太空探索、石油矿产等领域。OSG采用标准C++和OpenGL编写而成,可运行在所有的Windows平台、OSX、GNU/Linux、IRIX、Solaris、HP-Ux、AIX、Android和FreeBSD 操作系统。OSG是有版权的开源引擎,基于LGPL,OSG也生成了自己的许可(OSGPL)。(1)快速开发。原创 2024-01-14 23:50:56 · 2245 阅读 · 0 评论 -
【小沐学GIS】电子海图OpenCPN源代码编译和运行(VS2017 + Win10)
OpenCPN是一款自由软件(GPLv2),用于创建简洁的海图绘图仪和导航软件,可以在航行过程中使用或者作为计划工具。OpenCPN提供大量免费海图下载,支持航线设计、航行监控,能接入GPS、AIS数据,能叠加雷达图像,还满足气象导航方面的要求,还有众多插件可供选择,且一直持续改进更新中。OpenCPN由C++编写,遵从GPLv2协议,其源代码可以轻易的从github获取。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???原创 2023-11-19 13:55:54 · 4324 阅读 · 4 评论 -
【小沐学GIS】基于Cesium实现三维数字地球Earth(CesiumJS入门安装)
面向 Web 的 3D 地理空间可视化CesiumJS 是一个开源 JavaScript 库,用于创建具有最佳性能、精度、视觉质量和易用性的世界级 3D 地球仪和地图。从航空航天到智能城市再到无人机,各行各业的开发人员都使用 CesiumJS 创建交互式 Web 应用程序,以共享动态地理空间数据。CesiumJS 基于开放格式构建,旨在实现海量数据集的强大互操作性和扩展。从Cesium ion 或其他来源以 3D 图块和其他标准格式流式传输在高精度 WGS84 地球上进行可视化和分析。原创 2023-06-04 14:35:40 · 5196 阅读 · 2 评论 -
【GIS开发】Photoshop批处理GIS地图离线瓦片(Python)
Photoshop的专长在于图像处理,而不是图形创作。图像处理是对已有的位图图像进行编辑加工处理以及运用一些特殊效果,其重点在于对图像的处理加工;图形创作软件是按照自己的构思创意,使用矢量图形等来设计图形。..................原创 2022-07-26 19:57:37 · 1573 阅读 · 0 评论 -
【GIS开发】Esri Shapefile(.shp)矢量数据文件读取(C++、Python)
ESRIShapefile(shp),或简称shapefile,是美国环境系统研究所公司(ESRI)开发的一种空间数据开放格式。该文件格式已经成为了地理信息软件界的一个开放标准,这表明ESRI公司在全球的地理信息系统市场的重要性。Shapefile属于一种矢量图形格式,它能够保存几何图形的位置及相关属性。用于描述几何体对象点,折线与多边形。例如,Shapefile文件可以存储井、河流、湖泊等空间对象的几何位置。╮( ̄▽ ̄)╭如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;....原创 2022-07-17 14:13:22 · 8385 阅读 · 0 评论 -
【CAD开发】glTF和b3dm文件格式读取(C++,Python)
文章目录1、简介1.1 层级结构1.2 术语定义2、glTF预览2.1 VSCode3、tinygltf(C++)3.1 下载和编译3.2 官网代码示例4、libgltf(C++)4.1 下载和编译4.2 官网代码示例14.3 官网代码示例25、gltflib(python)5.1 Parsing a glTF 2.0 Model5.2 Exporting a glTF 2.0 Model5.3 Converting Between glTF and GLB后记1、简介官网地址:https://ww原创 2022-04-10 23:47:24 · 9004 阅读 · 6 评论 -
【GIS开发】地理编码服务Geocoder(Python)
文章目录1、简介1、百度2、高德3、google4、nominatim后记1、简介地理编码是将地址(如"1600 Amphitheatre Parkway, Mountain View, CA")转换为地理坐标(如纬度 37.423021 和经度 -122.083739)的过程,可用于放置标记或定位地图。反向地理编码是将地理坐标转换为人类可读地址的过程。此外,您还可以使用地理编码器查找给定地点 ID 的地址。地理编码/逆地理编码 API 是通过 HTTP/HTTPS 协议访问远程服务的接口,提供结构化原创 2022-03-25 00:36:40 · 5372 阅读 · 3 评论 -
【GIS开发】Leaflet入门学习(Javascript库)
文章目录1、简介2、快速入门3、功能3.1 标记( Markers)3.2 矢量图层( Vector Layers)3.3 事件处理( Event Handling)后记JavaScript library for mobile-friendly interactive maps1、简介https://github.com/Leaflet/Leaflethttps://leafletjs.com/SlavaUkraini/index.htmlLeaflet.js是一个开源库,使用它我们可以部原创 2022-03-20 23:10:55 · 9398 阅读 · 17 评论 -
【GIS开发】osgEarth依赖库PROJ(Python)
文章目录1、OSGeo/PROJ(C++)2、pyproj(python库)后记1、OSGeo/PROJ(C++)https://proj.org/https://github.com/OSGeo/PROJPROJ - Cartographic Projections and Coordinate Transformations LibraryPROJ 是一款通用坐标转换软件,可将地理空间坐标从一个坐标参考系 (CRS) 转换为另一个坐标参考系 (CRS)。这包括制图投影和大地测量变换。PRO原创 2022-03-15 10:26:50 · 3385 阅读 · 0 评论 -
【GIS开发】OpenLayers在线瓦片数据源汇总
文章目录1、概述2、瓦片数量计算3、地图数据源3.1 Google3.2 OpenStreetMap3.3 ArcGIS3.4 高德地图3.5 Bing地图3.6 百度地图3.7 搜狗地图3.8 腾讯地图3.9 天地图1、概述瓦片地图(切片地图)源于一种大地图解决方案,针对一整块非常大的地图进行切片,分成很多相同大小的小块地图,在用户访问的时候,再一块一块小地图加载,拼接在一起,从而还原成一整块大的地图,如果要提高Web地图的访问速度,使用瓦片地图是非常有效的方法。瓦片地图采用的是金字塔模型,是一种多原创 2022-03-14 22:51:57 · 6643 阅读 · 5 评论 -
【GIS开发】OpenLayers入门学习(JavaScript库)
文章目录1、简介2、快速入门2.1 在线库快速入门2.2 本地库快速入门2.3 nodejs快速入门3、控件后记1、简介官网地址:https://openlayers.org/源码地址:https://github.com/openlayers/openlayersOpenLayers是一个高性能、功能丰富的库,用于在 Web 上创建交互式地图。它可以在任何网页上显示从任何来源加载的地图瓦片、矢量数据和标记。OpenLayers 的开发旨在进一步使用各种地理信息。它是完全免费的开源 JavaSc原创 2022-03-13 14:27:44 · 7563 阅读 · 12 评论 -
【GIS开发】批量地图瓦片转mbtiles文件(Python)
文章目录1、简介2、下载和编译3、运行后记1、简介MBUtil 是用于导入和导出 MBTiles格式的实用程序,通常使用 Mapbox [TileMill](http:// mapbox.com/tilemill/)。2、下载和编译https://github.com/mapbox/mbutilhttps://pypi.org/project/mbutil/将代码解压如下:在命令行运行如下代码:git clone git://github.com/mapbox/mbutil.git c原创 2022-03-07 15:00:48 · 5617 阅读 · 2 评论 -
【GIS开发】批量下载和拼接地图瓦片(Python)
文章目录1、简介1.1 墨卡托投影1.2 瓦片2、代码实现3、运行结果后记1、简介1.1 墨卡托投影墨卡托投影,是正轴等角圆柱投影,又称等角圆柱投影,圆柱投影的一种,由荷兰地图学家墨卡托(G. Mercator)于1569年创拟。为地图投影方法中影响最大的。用一张纸卷成圆柱,围住地球仪;然后在地球仪的球心放一个发光的灯泡,地球仪上的地图会在圆柱纸上形成投影;把这张纸平展开,就是我们常见平面世界地图。上面所讲的投影法叫墨卡托投影(Mercator Projection)。地图学是一门严谨的科学,需原创 2022-03-04 00:37:12 · 7521 阅读 · 29 评论 -
【小沐学GIS】基于C++绘制三维数字地球Earth(OpenGL、glfw、glut)第一期
文章目录1、计算公式2、代码实现3、运行结果后记1、计算公式球的三维坐标表示为:x2+y2+z2=0x^2 + y^2 + z^2 = 0x2+y2+z2=0引入球的参数坐标方程进行离散化。以(u,v)表示球面上某一点的坐标,且u,v的取值范围为[0 , 1],定义(u,v)到(x,y,z)的转换如下:{x=sin(π×v)cos(2π×u)y=sin(π×v)sin(2π×u)z=cos(π×v)\begin{cases} x=sin(\pi×v)cos(2\pi×u) \\ y原创 2022-03-03 23:23:12 · 9815 阅读 · 29 评论