1.走进SWMM源代码——SWMM转GIS经验及工具分享
2.走进SWMM源代码——GIS转SWMM经验及工具分享
3.GIS之家整理GIS源码、项项目地图数据及资料
4.GIS软件SharpMap源码详解及应用基本信息
5.13个免费的目源码开源GIS软件
6.盘点8个地图开发的开源项目,yyds!开源
走进SWMM源代码——SWMM转GIS经验及工具分享
深入探讨SWMM到GIS转换的项项目核心技术,本文由赵也(深圳创环)分享,目源码将从Gis数据库构建、开源祭祀 源码正则表达式应用和关键算法编写三个方面,项项目详细介绍过程,目源码旨在提升模型在GIS环境下的开源实用价值。1. Gis数据库构建
Catchment表: 名称(CatchID)与流向(FlowDir)为核心字段
Link表: 包括LinkID、项项目FromID、目源码ToID等,开源以及断面数据ShapeData1-3
Node表: NodeID、项项目Type、目源码BotEle和SurfEle等关键属性
2. 正则表达式的开源威力
正则表达式作为强大的文本处理工具,用于文本匹配、提取和控制。虽对初学者而言较难理解,但在文本编辑器中广泛应用,如EditPlus、Word和Visual Studio。核心算法模块
数据库构建:关注MdbDir和MdbName,分别指示数据库路径和名称
数据表构建:包括数据结构的创建
正则表达式匹配:执行数据筛选和提取
数据写入与展示:将处理后的数据导入GIS地图
工具推荐:视频中分享的ConvertSWMMTest.esriaddin工具,无需编程环境也可直接使用
走进SWMM源代码——GIS转SWMM经验及工具分享
作者:赵也(深圳创环) GIS格式数据在城市管线数据储存、智慧水务平台等行业中广泛应用。PINS等工具提供简单处理方式,但复杂转换需要二次开发。本文从Gis二次开发、UI使用、转换算法编写角度,介绍GIS转SWMM流程。 欢迎关注“市政规划交流”公众号。 视频主要内容: Part1:Gis二次开发 基于ArcMap控件二次开发。环境配置:ArcGis for Desktop.1、ArcObject SDK for Microsoft .Net Framework4.0、Microsoft Visual Studio (.4 + 4.5 +也行) Part2:UI简介 建立Gis和SWMM文件桥梁,简化数据转换流程。vue 网页源码 Part3:核心算法模块介绍 Step1:背景数据需求。基础排水管网模型需空间数据包括: 点要素:检查井/排放口,包含编号、底高程、地表高程、标识字段等。 线要素:排水管渠,包含编号、起点编号、终点编号、断面类型、断面参数等。 面要素:汇水区,包含编号、汇流编号、不透水率等。 Step2:解析GIS点、线、面要素生成Inp文件结构。 核心代码模块介绍: 定义输出字符串集合,Inp文件本质是ASCII文件,字符串集合表示文件内容。 遍历要素集,通过FeatureCursor光标遍历特定要素(管网、检查井、下垫面),提取具体字符串。 将前缀字符串和提取的字符串依次写入Inp文件。 Part4:案例实操/工具分享 视频分左右,展示使用工具生成可运行的Inp文件案例。 额外提及:软件包中ConvertSWMMTest.esriaddin文件,为无编程环境的用户提供了直接安装addin并使用ConvertSwmmTest工具的途径。 附录:INP文件结构介绍GIS之家整理GIS源码、地图数据及资料
GIS之家精心整理了全面的GIS资源库,涵盖四个核心部分:1. GIS源代码:包括ArcGIS API 3.x、OpenLayers、nib转源码Leaflet和Cesium等,如三峡库区水污染扩散模拟的Python脚本,以及ArcGIS API 3.x和4.x的详尽开发教程,如地图加载、交互功能、服务集成等。
2. 地图数据:包含矢量数据(如建筑轮廓、土地使用、.5m地形、水系、路网和行政区划)、三维模型(如支持Cesium的gltf、glb和b3dm格式)以及详细到全国各省的特定地图数据。
3. ArcGIS安装包:包括多个版本的ArcGIS安装文件,如.2.2、.3、.4和.5,满足不同阶段和需求的用户。
4. GIS文档资料:涵盖了基础概念、技术指南、实战项目、代码剖析等多维度的学习资料,如ContextCapture倾斜数据处理、WebGL编程、空间分析理论等。
这个资源库特别适合webGIS和GIS初学者,以及希望深入学习或寻找特定数据的GIS专业人士。不断更新的内容包括年4月日的全国各省建筑轮廓和土地使用数据,以及年2月日的新增地形和地图数据集。GIS软件SharpMap源码详解及应用基本信息
本书《GIS软件SharpMap源码详解及应用》由陈真、何津、余瑞编著,内容详尽剖析了基于C#语言开发的GIS开源项目——SharpMap。全书分为三大部分,共计十一章,旨在帮助GIS专业学生及初学者掌握GIS底层开发技术。jquery 源码 module第一部分深入讲解SharpMap源码,涉及地图、地图控件、图层、绘制、样式、数据、几何对象等核心内容。第二部分介绍基于SharpMap的应用开发,具体包括两个SharpMap下载包中附带的Windows应用程序的开发。第三部分探讨SharpMap系统扩展,详细覆盖数据源对象扩展及图层对象扩展。
本书适合地理信息系统相关专业本科生学习“GIS开发与设计”等课程,也适合对GIS感兴趣的初学者及GIS工程技术人员作为参考阅读。其特别之处在于针对当前.NET平台GIS开源项目稀缺的现状,通过详尽讲解SharpMap的核心模块,解决SharpMap开发文档匮乏的问题。这本书不仅提供了一套简单易用的小型GIS平台,支持多种GIS数据格式,还支持空间查询,能渲染出精美地图。
本书内容涉及SharpMap的特性、支持的GIS数据格式、名称空间概述、用到的第三方库、源代码下载等基础知识,以及地图、地图控件、图层、绘制、样式、数据、几何对象等核心模块的深入解析。此外,本书还详细介绍了SharpMap在Windows应用程序开发中的应用,包括两个附带的文字放在源码Windows应用程序的开发实例,以及数据源扩展与图层对象扩展的扩展内容。通过本书的学习,读者可以全面掌握SharpMap的使用与开发技巧,为从事GIS相关工作打下坚实基础。
综上所述,本书《GIS软件SharpMap源码详解及应用》为GIS开发人员提供了一个深入理解SharpMap内部机制的宝贵资源。无论是学习GIS底层技术,还是实际开发GIS应用,本书都能提供详尽指导,帮助读者快速掌握SharpMap的开发与应用技巧,从而在GIS领域发挥更大作用。
个免费的开源GIS软件
QGIS
QGIS是一个开源GIS软件,诞生于年,旨在让GIS成为个人电脑用户的可行选项。它支持Unix、Windows和macOS平台,使用Qt工具包和c++开发,具备清爽、易用的GUI,提供强大GIS功能。QGIS支持多种栅格和矢量数据格式,并可通过插件轻松扩展支持新格式。
gVSIG
gVSIG是一个功能强大且易于使用的GIS系统,被全球数万用户使用。它支持多种格式、矢量和栅格数据,提供文件、数据库和远程服务管理工具。gvSIG desktop易于扩展,允许为定制解决方案开发应用程序和持续改进。它在GNU/GPL许可下免费使用。
Whitebox GAT
Whitebox GAT是一个开源、跨平台GIS和遥感软件包,支持高级GIS分析和数据可视化。它具有友好的GUI,内置多个分析工具帮助和文件。用户可访问离线和在线帮助资源,支持激光雷达数据处理和可扩展性,允许用户使用任何JVM语言创建自定义工具或插件。
SAGA GIS
SAGA GIS是一个用于空间数据编辑的开源GIS系统,最初由德国哥廷根大学团队开发,现由国际开发者社区维护。它旨在为地球科学研究提供有效且易学的平台,通过API实现。SAGA包含快速发展的地球科学工具模块库。
GRASS GIS
GRASS GIS是一个免费、开源的GIS系统,用于处理栅格、拓扑矢量、影像和图表数据。它在GPL下发布,可在Mac OS X、Windows和Linux上运行。用户可通过GUI或命令行使用其功能,支持多种栅格和矢量格式,具备高级矢量图形数据和立体像素可视化能力。
MapWindow
MapWindow GIS是一个开源GIS应用程序,是一组可编程的映射组件,被美国环境保护署作为流域分析建模的主要GIS平台。
ILWIS
ILWIS是一种用于矢量和栅格处理的开源GIS和遥感软件,提供数字化、编辑、数据分析和地图制作功能。它最初由荷兰ITC Enschede开发,自年起作为自由软件发布。ILWIS具有强大的栅格分析模块、矢量点数字化工具、实用工具和用户指南,适用于学生、教师和研究人员。
GeoDa
GeoDa是一个开源软件包,用于空间数据分析、地理可视化、空间自相关和空间建模。它具有强大的空间分析、多元探索性数据分析和全局/局部空间自相关能力,执行线性回归,并支持空间滞后模型和空间误差模型。
uDig
uDig是一个社区开发的GIS软件,基于Eclipse平台,具有完整的分层开放源码GIS。它是用Java编写的,支持GRASS进行复杂矢量运算,并可嵌入JGRASS和专业水文工具,支持多种数据源。
OpenJump
JUMP是一个基于Java的矢量光栅GIS和编程框架。
Diva GIS
DIVA-GIS是一个免费的GIS软件程序,用于分析地理数据,特别是生物多样性的点数据。
FalconView
FalconView是一个地图系统,最初为Windows系列操作系统开发,支持多种地图和地理相关覆盖,主要用于军事任务规划。
OrbisGIS
OrbisGIS是一个开源纯Java GIS应用程序,用于读写矢量和栅格数据、创建专题地图和处理数据。
盘点8个地图开发的开源项目,yyds!
地图开发领域中,开源项目提供了丰富的资源和工具,以下是一些具有代表性的项目,它们在不同方面展现出其独特价值。 Historical-Atlas 这个项目以其直接的命名“历史地图集”吸引了众多关注,作者采用的AGPL-3.0开源协议使得它不仅适合作为参考设计思路或在线服务提供,也鼓励其作为软件产品对外分发时保持开源状态。项目中存在一些遗留问题,如数据库配置和用户信息存储的实现,但通过对照源码,还原表结构并不困难。 vue3-ts-cesium-map-show 由地虎降天龙开发的这个项目,采用MIT开源许可协议,是一个专注于三维可视化数字城市应用,结合Cesium-1.开源库,提供后台可视化编辑与保存功能。 QGIS 作为开源地理信息系统,QGIS支持Windows、Linux、MacOS,拥有强大的地理空间管理与分析能力,包括时间动画、3D地图预览和地图美化等特性,使用户能够生成美观的地图。 react-baidu-map 由uiw开发的react-baidu-map项目,基于React封装了百度地图组件,简化了将地图集成到React项目的过程,使开发者能够快速接入地图功能。 Maptalks Maptalks是一个HTML5地图引擎,基于原生ES6 Javascript开发,提供二三维一体化地图能力,通过二维地图旋转、倾斜增加三维视角,并支持插件化设计。 QuickEarth-Free QuickEarth(QE)是一个面向个人免费开放的二三维一体化Web端矢量和栅格数据渲染引擎,适用于气象、海洋、水文、环境等领域,帮助用户实现数据可视化。 地图下载器 使用Java开发的地图瓦片图下载工具,支持多种地图服务,如OpenStreetMap、天地图、谷歌地图等,提供XYZ瓦片图下载与合并功能,方便用户获取地图数据。 L7 L7是蚂蚁金服AntV推出的一款基于WebGL的开源大规模地理空间数据可视分析框架,专注于数据可视化表达,通过多种视觉变量设置实现信息的有效呈现,满足地图图表、BI系统可视化分析、GIS等领域的需求。 xdh-map xdh-map是一款基于Openlayers的地图应用Vue组件,内置多种地图瓦片,并支持与多个PGIS厂商对接,提供丰富的组件,如文本、图形、热力图等,以及与ECharts结合实现基于地理位置的图表,满足项目常见需求。 这些开源项目在地图开发领域中各具特色,为开发者提供了丰富的选择和强大的技术支持。webGIS实践:3_0_openlayer加载瓦片地图
在webGIS的实践系列中,本章集中于地图的前端渲染,尤其是利用开放源代码库OpenLayer进行操作。由于Geoserver集成的前端工具是OpenLayer,因此本部分重点介绍其使用方法。相较于其他库,OpenLayer的复杂度较高且受众较小,因此对于偏好其他解决方案的读者,后续章节将涵盖Leaflet,以提供多样化的学习路径。
为了深入理解OpenLayer的运作,首先需要下载相关的js库资源。推荐下载OpenLayer的完整包,包括examples、docs与sources,以确保本地开发环境的稳定性和便利性。库的下载链接为:openlayers.org/download...
使用本地资源进行开发时,HTML文件将作为前端页面的核心载体,引入的js库仅包括ol.js和jquery.js,而css文件则为ol.css。JQuery的下载地址为:code.jquery.com/jquery/,选择合适的版本,确保其与项目需求兼容。
在加载瓦片地图的过程中,使用HTML文件夹内的ol文件夹,存放OpenLayer的js和css文件,同时将JQuery文件置于html下。通过创建LoadTileMap.HTML文件,实现腾讯底图与geoserver发布的gismap:v6_time_cnty_pts_utf_wgs图层的加载。
具体实现过程包括在LoadTileMap.HTML文件中引入相应的代码,以便于加载指定的地图资源。在示例代码中,通过指定LAYERS参数来识别图层,从而实现地图的加载。同时,调整单瓦片格式的加载方式,通过修改相关参数,实现地图内容以整张的形式展现,而非小瓦片拼接。
在使用OpenLayer早期版本时,需特别注意设置'singleTile': true,以确保地图返回为一整张,避免注记冗余的问题。此问题已被OpenLayer修复,使得后续的地图渲染更加简洁高效。
至此,地图加载及WMS图层的使用已告一段落,接下来将探讨如何在OpenLayer中渲染并查询矢量要素,进一步提升地图应用的功能性和实用性。