概述:

在进行地理信息系统开发的过程中,经常使用的空间数据库有esri的sde,postgres的postgis以及mySQL的mysql gis等等,在本文。给大家介绍的是有关postgis的一些经常使用函数的意思以及使用。

说明:

本文中所使用postgres的版本号为9.4.0。你可从我的百度网盘获取相关的安装包,安装包地址例如以下:

postgres:http://pan.baidu.com/s/1o69WORK

postgres空间扩展:http://pan.baidu.com/s/1c0fPfpe

先安装postgres。在安装postgres的空间扩展,软件安装好之后就開始了解下postgres的经常使用函数吧。

wkt简单介绍:

WKT(Well-known text)是一种文本标记语言。用于表示矢量几何对象、空间參照系统及空间參照系统之间的转换。WKT能够表示的几何对象包含:点,线,多边形,TIN(不规则三角网)及多面体。能够通过几何集合的方式来表示不同维度的几何对象。
几何物体的坐标能够是2D(x,y),3D(x,y,z),4D(x,y,z,m),加上一个属于线性參照系统的m值。

下面为几何WKT字串例子:
POINT(6 10)
LINESTRING(3 4,10 50,20 25)
POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2))
MULTIPOINT(3.5 5.6, 4.8 10.5)
MULTILINESTRING((3 4,10 50,20 25),(-5 -8,-10 -8,-15 -4))
MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1),(2 2,2 3,3 3,3 2,2 2)),((6 3,9 2,9 4,6 3)))
GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10))
POINT ZM (1 1 5 60)
POINT M (1 1 80)
POINT EMPTY
MULTIPOLYGON EMPTY

函数介绍:

1、怎样找到postgres的函数

安装完毕之后,打开pgAdmin,打开之后。打击点开例如以下图:

注意:

图中数据库lzugis是一个空间数据库,找到框架->public,展开public之后例如以下图:

看到了吧,我们所要找的函数就在这个下面,此外。经常使用的还有数据表,触发器函数等,函数展开之后截图例如以下:

图中,下面划线开头的表示系统函数,在寻常应用中是使用不到的,不下面划线开头是咱们有可能用到的函数。所以。在使用的过程中可要细致看看了。

2、经常使用函数

wkt和geometry的互换

postgres中,能够通过函数st_astext(geom)实现geometry到wkt的转换,通过st_geomfromtext(wkt。wkid)实现wkt到geometry的转换,详细使用例如以下:

st_astext(geom)


通常,我们通过此函数将数据库中的对象取出来用曾经台的展示。

st_geomfromtext(wkt。wkid)

通常。我们通过此函数将前台操作完的数据提交到后台,进行入库或者别的空间相关的操作。比方缓冲区分析,距离计算等。

获取点的x和y坐标值,获取线/面的xmin,ymin,xmax。ymax

能够通过函数st_x(geom)和st_y(geom)函数获取点对象的x和y坐标值。

能够通过st_xmin(geom)。st_ymin(geom),st_xmax(geom),st_ymax(geom)函数获取线/面对象的四至。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />

距离,长度和面积计算

能够通过函数st_distance(geom,geom)或者st_distance(wkt,wkt)函数计算两点的距离

能够通过st_length(geom)或者st_length(wkt)计算线的长度。

能够通过函数st_area(geom)或者st_area(wkt)计算面积。

缓冲区计算

能够通过函数st_buffer(geom,distance)或者st_buffer(wkt,distance)实现缓冲区的计算

postgis经常使用函数介绍(一)的更多相关文章

  1. (转)postgis常用函数介绍(一)

    http://blog.csdn.net/gisshixisheng/article/details/47701237 概述: 在进行地理信息系统开发的过程中,常用的空间数据库有esri的sde,po ...

  2. PostgreSQL+PostGIS的使用 函数清单

    一. PostgreSQL与PostGIS的关系 PostgreSQL 是世界上技术最先进的开源数据库,其前身是1977年一个源于Berkeley名为Ingres的非关系型数据库,其项目领导人为Mic ...

  3. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  4. PHP ob_start() 函数介绍

    ob_start() 函数介绍: http://www.nowamagic.net/php/php_ObStart.php ob_start()作用: http://zhidao.baidu.com/ ...

  5. Python开发【第三章】:Python函数介绍

    一. 函数介绍 1.函数是什么? 在学习函数之前,一直遵循面向过程编程,即根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复 ...

  6. row_number() OVER(PARTITION BY)函数介绍

      OVER(PARTITION BY)函数介绍 开窗函数               Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个 ...

  7. select与poll函数介绍

    select与poll函数介绍 在所有依从POSIX的平台上,select函数使我们可以执行I/O多路转接.传向select的参数告诉内核: 1)我们所关心的描述符 2)对于每个描述符我们所关心的状态 ...

  8. swift1.2语言函数和闭包函数介绍

    swift1.2语言函数和闭包函数介绍 在编程中,随着处理问题的越来越复杂,代码量飞速增加.其中,大量的代码往往相互重复或者近似重复.如果不采有效方式加以解决,代码将很难维护. swift1.2语言函 ...

  9. ZLG_GUI配置与函数介绍

    http://www.docin.com/p-825479457.html ZLG_GUI配置与函数介绍

随机推荐

  1. Gitlab forbidden

    搭建使用了两年的gitlab 抽风了居然forbidden # vim /etc/gitlab/gitlab.rb gitlab_rails['rack_attack_git_basic_auth'] ...

  2. clock_gettime 用法

    #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/sta ...

  3. HDU - 6266 - HDU 6266 Hakase and Nano (博弈论)

    题意: 有两个人从N个石子堆中拿石子,其中一个人可以拿两次,第二个人只能拿一次.最后拿完的人胜利. 思路: 类型 Hakase先 Hakase后 1 W L 1 1 W W 1 1 1 (3n) L ...

  4. vue中axios设置

    //设置默认全局baseURL axios.defaults.baseURL=process.env.BASE_API; //设置默认全局携带浏览器cookie axios.defaults.with ...

  5. mybatis写当天 当月的数据 时间段数据https://www.cnblogs.com/xzjf/p/7600533.html

    mybatis写当天 当月的数据 时间段数据----https://www.cnblogs.com/xzjf/p/7600533.html

  6. 仪仗队(codevs 2296)

    题目描述 Description 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来 ...

  7. java查询MySQL时,MySQL中tinyint长度为1时转换为boolean

    看到别人代码,MySQL数据库中,有下面这个字段,tinyint(1) 这时候java代码中取出来的数据类型就是boolean类型,如果长度 > 1的话,就会变成int类型,特意查了一下,这里参 ...

  8. 稍微成型点的用WEBSOCKET实现的实时日志LOG输出

    难的是还是就地用JS显示出来相关的发布进度. 还好,花了一下午实现了. 可以移植到项目中去罗... websocket.py: import tornado.ioloop import tornado ...

  9. 在docker上安装运行mysql实例

    ps:实验环境是:CentOS Linux release 7.3  64位1.获取mysql镜像从docker hub的仓库中拉取mysql镜像docker pull mysql查看镜像docker ...

  10. Ubuntu 16.04安装Synaptic Package Manager图形化APT管理工具

    安装: sudo apt-get install synaptic 启动: