Geo&GIS

mapgis文件(*.wt,*.wl,*.wp)无损解析和读取

第一部分:mapgis 文件解析 mapgis矢量文件格式(*.wt,*.wl,*.wp)是由国内著名的GIS厂商-中地数码公司-研发的一套闭源矢量文件格式,是目前国内地学工程和科研领域最重要的矢量数据存储格式。随着近年来地质调查工作的转型升级,其对国民经济的支撑领域越来越广,与其他学科的交叉融合也越来越广泛、深入。在这种背景下,一种能够无损解析mapgis矢量文件空间数据的开源工具包愈发重要,对于地质空间数据交换,多源数据集成,及大数据挖掘等新形势下地调事业转型发展的现实需求具有积极意义。 坐标系解析 对于wt、wp、wl文件,其坐标系数据的保存位置和结构完全一致,主要内容如下: 内容 字节位置 字节数 类型 说明 投影类型 109 1 uint8 投影类型索引 椭球体类型 110 1 uint8 椭球体索引 比例尺 143 8 double 比例尺分母 椭球体索引系指mapgi安装路径中椭球体索引文件(一般位于mapgis67\program\ellip.dat)中的索引,投影类型索引类似。从此可知,mapgis矢量文件作为一种空间矢量数据本身是不完备的,文件不包含对坐标系的完备描述,文件的解析依赖于软件环境。 一般,...

Openlayers入门教程

简介 OpenLayers 使在任何网页中放置动态地图变得容易。它可以显示从任何来源加载的地图图块、矢量数据和标记。 OpenLayers 的开发旨在进一步使用各种地理信息。 它是完全免费的开源 JavaScript,在 2 条款 BSD 许可证(也称为 FreeBSD)下发布。 官网:https://openlayers.org/ 设置环境 下载并安装 VS Code 新建文件夹:F:\Openlayers_Tutorials VS Code打开文件夹:F:\Openlayers_Tutorials 新建文件和文件夹(均为空) 至 https://openlayers.org/download/ 下载 v6.14.1-dist.zip 并解压 将文件夹v6.14.1-dist放置在libs文件夹中 第一个web应用 在index.html中写入: <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width...

三维四面体剖分(基于TetGen)

在三维建模中,对建模空间进行四面体剖分是常见的应用需求。 关于TetGen TetGen:A Quality Tetrahedral Mesh Generator and a 3D Delaunay Triangulator 主要优势:开源免费、质量高、精度高、速度快 TetGen 是一个构建3D四面体网格的程序。TetGen可以生成精确约束的 Delaunay 四面体化、符合边界的 Delaunay 网格和 Voronoi 网格。 TetGen 提供各种功能来生成适用于数值方法(例如有限元或有限体积方法)的高质量和自适应四面体网格。 TetGen 是一个用于生成高质量四面体网格的 C++ 程序,旨在支持数值方法和科学计算。质量四面体网格生成问题受到许多理论和实践问题的挑战。TetGen 使用基于 Delaunay 的算法,具有理论上的正确性保证。它可以稳健地处理任意复杂的 3D 几何图形,并且在实践中速度很快。TetGen 的源代码是免费提供的。 TetGen is a program to generate tetrahedral meshes of any 3D polyhedral domains. TetGen ...

地球科学数据(地质、地球物理、水文等) | 总结篇

No Data, No Paper! 数据是科学研究的粮食,尤其是大数据时代! 本文将总结我在近些年来收集的地质数据源,希望对大家有所帮助。 个人收集的数据范围难免有所遗漏,如有补充请留言。 另外我在github上创建了一个名为iEarthDatasets的资源库,方便大家一同维护和提交。 【注意】有些网址可能需要科学上网 地质类 政府、机构、科研院所的公开数据 中国 地质云 全国地质资料馆 国家气象科学数据中心 美国 美国 政府公开数据 该网站覆盖的数据集数目和类型均最为丰富。 美国 地质调查局 美国 地质调查局出版物仓库 美国 得克萨斯州经济地质局 美国 科罗拉多石油和天然气保护委员会 美国 俄克拉荷马州地质调查局:报告、地图、统计数据 美国 俄克拉荷马公司委员会:数字化测井、生产、油井信息 美国 俄克拉荷马 钻井搜索 美国 路易斯安那州自然资源部(SONRIS – GIS、石油和天然气数据、测井信息) 美国 宾夕法尼亚石油和天然气资源 美国 俄亥俄州:信息/测井数据库 美国 纽约:石油、天然气、其他数据 美国 42,000 口深井 美国 新墨西哥州:测井/数据 美国 加利福尼亚 美国 怀俄明州 美国 北达科他州 美国...

PSO粒子群优化简介|附Python代码

PSO是我使用过的一种非线性优化算法,属于群智能优化。在本博文中使用python代码比较直观的实现了PSO算法。 以我的经验,优化参数越少效果越好,待优化参数较多时候,会出现维度灾难(Curse of Dimensionality),最大数目差不多200个。 原理 粒子群优化是由 Kennedy 和 Eberhart 于 1995 年提出的。 正如原始论文中提到的,社会生物学家认为,一群鱼或一群鸟“可以从所有其他成员的经验中受益”。换句话说,例如,当一只鸟在飞行并随机寻找食物时,鸟群中的所有鸟都可以分享他们的发现并帮助整个鸟群获得最好的狩猎。 这就是粒子群优化的方式。类似于鸟群寻找食物,我们从平面上的一些随机点(称为粒子)开始,让它们在随机方向上寻找最小点。在每一步,每个粒子都应该围绕它曾经找到的最小点以及整个粒子群找到的最小点进行搜索。经过一定的迭代,我们认为函数的最小值点是这群粒子曾经探索过的最小值点。 主要研究内容 PSO 的研究主要是关于如何确定超参数w、c_1 和 c_2 或随着算法的进展改变它们的值。例如,有使惯性权重线性减小的方法。也有建议试图使认知系数c_1减少,而社会系数c_2增加,以在开始时带来更多的探...

fatiando安装和实验测试|地球物理

fatiando是为地球物理数据分析和新方法的开发提供的一个全面且可扩展的框架。主要通过python编写。 原工程位于:https://github.com/fatiando/fatiando 我转到了国内gitee镜像:https://gitee.com/zyabo/fatiando 这个包在国内很少有资源介绍,加上我在使用过程中发现了其官网对其介绍不够充分,有一些地方可能犯错。 为了便于大家使用该第三方包,本文介绍了我安装fatiando第三方包的具体过程以及实验测试,希望能对大家有所帮助。 安装 极简步骤(安装最新版) 确保已经安装VS2015或以上的C++编译器 有朋友提问“装的时候显示缺 error: Microsoft Visual C++ 14.0 or greater is required.” 因为fatiando为了加速计算,内有10%左右的代码是C++编写的,需要C++编译器编译。 如果是windows系统,建议在电脑上安装VS2015(对应C++ 14.0 )或以上版本。 这儿提供了百度网盘VS2015社区版的下载链接。 链接:https://pan.baidu.com/s/1903HcFBoU42...