将OSM的点线面数据导入pgsql并进行简单渲染发布服务

时间:2024-03-19 20:40:50

一、在PostgreSQL的操作步骤
1、下载PostgreSQL安装包并且同时安装postgis拓展,在PostgreSQL中建立自己的数据库yrj.
2、在yrj数据库中添加拓展,如图
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图一 添加拓展
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图二 结果图
二、安装Python,同时配置变量
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图三 添加系统变量
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图四 添加path变量
三、使用osm2pgsql
需要在Github官网中下载default.style文件(*不能在网页中直接下载,一开始就是在网页中下载导致导入数据出错,不能读取OSM文件),然后将style文件和在osm数据一同放入osm2pgsql文件夹中,接下来打开cmd命令,导入数据,结果如图
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图五 导入数据
在pgsql中打开数据库yrj,查看导入的数据,如图
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图六 查看数据
四、使用TileMill渲染
新建项目,然后通过postgis添加图层(*connection中的user和password还有dbname都是基于pgsql中创建的数据库),下图是导入osm_roads的截图
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图七 添加图层
结果图如下
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图八 结果图
五、使用Geoserver发布服务
创建新的工作区yrj,然后添加数据(来源于TileMill渲染的数据),下图是添加其中一个数据的截图,然后倒入其它数据,生成图层

将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图九 添加数据
然后添加一个图层组将导入的图层添加,然后利用OpenLayers显示,结果图如下
将OSM的点线面数据导入pgsql并进行简单渲染发布服务
图十 结果图
*注意点:
1、用osm2pgsql导入数据时需要default文件,文件下载错误或者没有文件,软件将读取不出来OSM数据或者导入数据出现错误;
2、TileMill与Geoserver的操作都是基于Pgsql中的数据库进行操作的。