![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PostGIS
文章平均质量分 84
guzicheng1990
这个作者很懒,什么都没留下…
展开
-
PostGIS 关于数据库储存格式
在项目中遇到一个情况,需要将所有的要素信息入库,后续需要做空间查询(比如缓冲区分析等),又要使前端能获取值后直接操作。所有问题来了,以什么样的格式入库最好呢?查询耗时:13-20ms。查询耗时:13-15ms。原创 2024-06-12 10:36:40 · 302 阅读 · 0 评论 -
PostGIS FME导入fbx格式模型
使用FME导入模型数据到PostGISFME支持模型格式:fbx、obj、dae、stl、3ds(目前仅打通fbx)环境:Win10FME2020Fbx格式数据操作说明:1、打开FME2、新建场景3、添加reader(表示从哪里读数据)4、数据源选择Autodesk FBX,并选择文件,其他默认即可5、数据载入完成后,会在主控面板出现reader数据流6、选择工具栏上Writer(表示输出到哪里)7、writer弹窗中,Format选择PostGIS,Connectio原创 2022-03-24 09:30:04 · 875 阅读 · 0 评论 -
PostGIS 报错libcrypto
说明在安装完Postgresql以后,打postgis扩展时,报错ERROR: could not load library "/usr/pgsql-12/lib/rtpostgis.so": /usr/pgsql-12/lib/libpq.so.10: symbol X509_get_signature_nid, version libcrypto.so.10 not defined in file libcrypto.so.10 with link time reference出现问题环境原创 2021-03-23 08:52:43 · 1254 阅读 · 1 评论 -
PostGIS 爆管分析实战记录之更新日志&&BUG修改
随着爆管分析运用场景越来越多,算法的问题也逐渐突显。在此新开一贴,专门记录算法的优化以及bug的更正(根据进程不断更新此贴)问题一:寻找上游阀门性能优化参考:https://www.cnblogs.com/giser-s/p/12091219.html问题二:查找周围所有阀门:遍历死角遇到这样的情况:爆点所在管段的source和target端都有阀门,但是算法给出的结果是另一个管段上的阀门。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2ol7f00K-158976原创 2020-05-18 09:56:44 · 699 阅读 · 6 评论 -
PostGIS 缓冲区分析(查询距离范围内要素)
说明:遇到个需求:需要查询事发点周围100米内的人和车,这个通过PostGIS的ST_DWithin函数很容易实现。但是在实现过程中,遇到了三个不同的问题,在此总结一下。解决方案:方案一:这种方式适用于PostGIS库,在库里直接写SQL实现,入参直接可以用PostGIS的geometry格式。--调用方式(参数:表名,坐标系id,表主键ID,缓冲区半径,中心点)select * f...原创 2020-03-16 16:26:42 · 6861 阅读 · 5 评论 -
Openlayers ol与Postgis交互
说明PostGIS栏目中,讨论了入库的存储格式到底是以PostGIS的Geometry格式,还是WKT格式入库比较好。此篇紧接着话题,讨论Openlayers与PostGIS数据的交互。Geometry格式,例:‘0101000020110F0000F2D24D3662CA6841480C02EB46545241’WKT格式,例:‘POINT(12988813.522 4798555.07...原创 2020-03-05 15:55:46 · 1330 阅读 · 0 评论 -
PostGIS 爆管分析管网、阀门数据处理,并导出shp
背景在做爆管分析时,需要制作一些模拟数据。我先制作了一些管网以后,再将阀门数据放到管网上操作数据处理:将管网表表x1、y1字段更新到阀门表,这里因为是模拟数据,所以思路是将gid相等的管网和阀门放一起update fm a set x1 = b.x1,y1=b.y1 from zy b where a.gid = b.gid检查数据更新对不对select a.gid,a.x...原创 2020-03-02 17:29:50 · 954 阅读 · 0 评论 -
PostGIS postgresql12安装postgis/mysql_fdw/pgrouting
环境linux centOS 7.4postgresql 12.2postgis 2.5mysql_fdw 1.1pgrouting 2.6.3操作步骤前面写过一篇postgresql安装和使用mysql_fdw,但是那篇用的是postgresql9.4,现在该版本已经停止维护了。所以与时俱进,更新一版postgresql12的安装方式:postgres下载大全https:...原创 2020-03-02 17:15:48 · 2065 阅读 · 0 评论 -
PostGIS 爆管分析之找出上游阀门(优化版)
说明 前面描述过利用postgis查找上游阀门的原理,以及代码,其实当初写完就发现又很大的优化空间,但一直没有时间去做。 最近遇到一个情况,处理60w+条管网数据时,效率太慢了,于是腾时间优化了一版。 解决方案 主要优化了两个点: 1. 这次拿到手的数据处理的很不好,好多阀门点没有在管线上,碍于数据处理工作量大,于是用缓冲区的方式做了个容差范围。...原创 2019-12-24 14:23:05 · 1124 阅读 · 2 评论 -
PostGIS 爆管分析之找出总阀门
这个算法算是被摒弃了,但是很多自己思考过后留下的成果,虽然不用了,留着做记录。算法目的是为了发生爆管后找到总阀门,这里分了几个步骤:1、找到爆管点所在管段2、通过遍历找到爆管点所有影响的阀门3、找到影响阀门中的上游阀门4、在上游阀门中进行遍历,看相互关系,与其他阀门都联通的则视为总阀门5、找出阀门中的总阀门#考虑了一下,所有与爆点相连的上游阀门其实在爆管发生后都需要关闭...原创 2019-10-21 17:34:13 · 781 阅读 · 1 评论 -
PostGIS 爆管分析之找出上游阀门
环境:Win10ArcMap10.4(用于数据处理)postgresql9.4postgis2.2.3pgRouting2.3(postgresql插件)说明:继上一篇文章做了爆管分析找出周围所有影响阀门后(参见:https://www.cnblogs.com/giser-s/p/11662932.html),发现在业务上使用有局限性,因为通常爆管以后我并不需要关闭所有...原创 2019-10-21 17:33:45 · 1096 阅读 · 0 评论 -
PostGIS 爆管分析之根据爆点找出所有影响阀门
环境:Win10ArcMap10.4(用于数据处理)postgresql9.4postgis2.2.3pgRouting2.3(postgresql插件)说明:做爆管分析的第一步,需要先将数据做拓扑处理(方法见博文《PostGIS 结合Openlayers以及Geoserver实现最短路径分析》,共三篇:https://www.cnblogs.com/giser-s/p...原创 2019-10-12 17:59:47 · 2269 阅读 · 2 评论 -
PostGIS 存储过程返回类型
Postgresql存储过程返回值的方式有很多,在此先只记录一下自己用到过的,慢慢拓展1、type型,这里geometry可以是任何postgresql支持的类型(integer/text/character varying.....)CREATE OR REPLACE FUNCTION test( tbl character varying) RETURNS geometr...原创 2019-10-12 17:58:19 · 1110 阅读 · 0 评论 -
PostGIS 查询点在线上
1、缓冲区法:查询数据库fm表里,与坐标(12989691.512 4798962.444)相距0.0001米的数据(3857坐标系)SELECT id FROM fm where st_intersects(st_transform(st_buffer(st_transform(st_geomfromtext('point(12989691.512 4798962.444)',3857),...原创 2019-10-12 17:57:29 · 1451 阅读 · 0 评论 -
PostGIS 递归方法
在Oracle数据库中,有可以实现递归的函数select * from table_namestart with [condition1]connect by [condition2]最近发现Postgresql数据库也有类型递归查询的方法,与Oracle不同的是,Postgresql没有现成的关键字表示层级和路径,需要自己构造(如下path和depath)#前提数据必须是树...原创 2019-10-12 17:56:37 · 283 阅读 · 0 评论 -
PostGIS 结合Openlayers以及Geoserver实现最短路径分析(三)
接上篇,前面在ArcMap中和Postgis中将数据都已经进行了预处理。接下来回到Geoserver中,进行数据发布。1、新建工作区2、填写完工作区信息3、打开数据存储,添加新的数据存储4、新建数据源,选择PostGIS5、依次填写完如下信息,保存即可6、添加新图层7、新建图层,将前面处理好的图层发布...原创 2019-10-12 17:54:16 · 2313 阅读 · 2 评论 -
PostGIS 结合Openlayers以及Geoserver实现最短路径分析(二)
前文讲述了怎么用ArcMap制作了测试数据,并导入了PostGIS,接下来我们需要结合PgRouting插件,对入库的数据再进行一下处理。1、在pgAdmin中,执行下面的sql语句 --添加起点字段sourceALTER TABLE zy ADD COLUMN source integer;--添加终点字段targetALTER table zy add column tar......原创 2019-10-12 17:50:28 · 2349 阅读 · 7 评论 -
PostGIS 结合Openlayers以及Geoserver实现最短路径分析(一)
环境:Win10ArcMap10.4(用于数据处理)postgresql9.4postgis2.2.3pgRouting2.3(postgresql插件)##附上本文配套素材下载地址:https://download.csdn.net/download/guzicheng1990/11830419说明:在做网络分析中,最麻烦的莫过于数据的配合了。接口写对了,但是数据...原创 2019-10-12 17:48:57 · 1642 阅读 · 3 评论 -
PostGIS 存储过程调试
说明:在使用Postgis做路径分析时需要用到数据库的存储过程,但是存储过程逻辑很复杂,很想看一下每步的执行结果。百度了一下,发现postgresql有插件可以支持调试存储过程。解决方案:1、打开pgAdmin2、选择文件==>打开postgresql.conf3、对话框中找到安装目录/版本号/data下的postgresql.conf文件...原创 2019-10-12 17:40:34 · 612 阅读 · 0 评论 -
PostGIS mysql_fdw操作日志(留观)
#####Linux终端操作命令记录,留做自己后面研究,绿色部分为成功部分错误: 服务器"mysql_server" 不存在postgres=# create user mapping for postgres server mysql_server1 options(username 'foo1',password 'bar1');CREATE USER MAPPINGpostgres...原创 2019-08-20 09:46:37 · 499 阅读 · 0 评论 -
PostGIS mysql_fdw使用(Linux)
##前文讲了mysql_fdw的安装,此文主要讲mysql_fdw的配置以及使用##附上前文链接:https://www.cnblogs.com/giser-s/p/11208803.html背景需求业务平台数据库用的是MySQL,地图引擎用的是ArcGIS,ArcSDE不支持MySQL作为空间数据库,因此我们将空间数据库搭在了PostgreSQL上。考虑到业务信息与空间信息没法完...原创 2019-08-20 09:47:13 · 180 阅读 · 0 评论 -
PostGIS mysql_fdw安装(Linux)
##本人在安装过程中,可能因为系统环境因素或是其他原因,参考网上的文章没有一篇是非常顺利的,所以自己总结一下。##安装过程中非常坎坷,有些地方反复了好几次,弄的有点模糊,但模糊的地方在文中我会指出。安装环境:CentOS7-x86_64postgresql9.4postgis2.4mysql_fdw2.12mysql_5.5步骤:一、安装MySQL1. 下...原创 2019-08-20 09:48:09 · 243 阅读 · 0 评论 -
PostGIS 安装教程(Linux)(二)
##接上篇,上篇讲述了Postgresql的安装,此篇介绍postgis的安装##附上上篇链接:https://www.cnblogs.com/giser-s/p/11195419.html二、安装PostGIS1.安装epel#网上资料说,由于2.0中引入了GDAL和JSON等依赖关系,PostGIS有很多依赖关系,因此安装之前需要先安装依赖项。[root@psql_...原创 2019-08-20 09:49:05 · 352 阅读 · 0 评论 -
PostGIS 安装教程(Linux)(一)
##本文分两部分,第一部分讲linux下postgresql的安装,第二部分讲postgis的安装##感谢作者:https://www.linuxidc.com/Linux/2017-10/147536.htm安装环境:CentOS7-x86_64postgresql9.4postgis2.4步骤:一、安装PostgreSQL1.安装rpm[root@psql...原创 2019-08-20 09:50:31 · 1020 阅读 · 0 评论 -
PostGIS 查看表属性(字段、类型、是否为空)
SELECTa.attnum,a.attnameASfield,t.typnameAStype,a.attlenASlength,a.atttypmodASlengthvar,a...原创 2019-08-20 09:51:05 · 1056 阅读 · 0 评论 -
PostGIS 用Navicat工具添加自增
1、新建查询,新增序列(从66开始,每次自增1):CREATE SEQUENCE seq_areaINCREMENT 1MINVALUE 66MAXVALUE 999999999START 66CACHE 12、给t_area表,增加自增序列:alter table t_area alter column objectid set default nextval('seq_a...原创 2019-08-20 09:51:37 · 789 阅读 · 0 评论 -
PostGIS 导入SHP文件并与ArcGIS连接
运行环境:ArcGIS10.4PostGreSql9.4PostGIS2.2(需勾选空间数据库,否则需要重新安装)实现步骤:方法一:1、打开pgAdminIII,数据库节点上右键,新建数据库2、输入名称/所有者3、模板选择安装好的空间数据库的模板,表空间选择default即可(如果遇到提示说postgis_22_sample被占用,则在数据库中将postgi...原创 2019-08-20 09:52:16 · 1171 阅读 · 0 评论 -
PostGIS 安装教程
安装环境:win10专业版postgresql-10.6-1-windows-x64---因为使用的是ArcGIS10.4版本,pg10.6对于ArcGIS10.4版本过高,建议选择安装pg9.4+postgis2.2。安装步骤基本相同。步骤:一、PostGreSQL安装1、安装进程默认下一步,可选择安装文件夹以及数据存放位置。2、设置登陆密码3、端口...原创 2019-08-20 09:53:10 · 1204 阅读 · 0 评论 -
PostGIS 报错为org.postgresql.util.PSQLException:错误: Operation on mixed SRID geometries
说明:在用Openlayers与Geoserver进行开发,做在线编辑功能时,出现一个问题:每当我新增了一根要素后,再次用wfs的方式进行点击查询时,会报错mixed SRID。通过研究发现在数据导入Postgis时,默认geom(空间属性字段)会为0,但是我在线编辑插入要素时,赋予了空间坐标系3857。SELECT st_srid(geom) FROM public.t_press...原创 2019-09-17 18:01:34 · 808 阅读 · 0 评论 -
PostGIS 使用Mysql_fdw同步ArcGIS填坑记录
##实现Mysql_fdw数据同步过程中,出现过很多坑,开此贴记录一下1、触发器记录这里insert的时候,采用过insert into f_pressureline select new.*,出现objectid永远插入为0的情况,所以改动如下:CREATE OR REPLACE FUNCTION func_pressureline()RETURNS trigger AS$BOD...原创 2019-08-20 09:46:08 · 136 阅读 · 0 评论