概述:

在进行地理信息系统开发的过程中,经常使用的空间数据库有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. C++11:using 的各种作用

    C++11中using关键字的主要作用是:为一个模板库定义一个别名. 文章链接:派生类中使用using别名改变基类成员的访问权限  一.<Effective Modern C++>里有比较 ...

  2. 梦想CAD控件关于比较问题

    全图比较 怎么比较两个CAD图纸文件修改前后的不同部分呢?在工程图纸设计中,我们更多情况下可能需要对同一张工程图的前后修改部分进行对比,以确定工程图纸的改动部分及追溯原因,本教程演示了几种常见的比较方 ...

  3. 06C语言运算符

    C语言运算符 算术运算符 运算符 描述 + 把两个操作数相加 - 从第一个操作数中减去第二个操作数 * 把两个操作数相乘 / 分子除以分母 % 取模运算符,整除后的余数 ++ 自增运算符,整数值增加 ...

  4. org-table

    ‎ Table of Contents 1. table 1.1. 创建方式 1.2. 重新对齐 1.3. 行列编辑 1.4. 区域 1.5. 计算 1.6. 其他的 1.7. 行宽度 1.8. 列分 ...

  5. 我的第一次"闭包"应用

    结论: 闭包可以当作强类型语言如C++.Java的全局变量使用,非常巧妙 需求: ssm项目,使用pagehelper分页,在写前一页.后一页.第一页.最后一页等页面跳转时,遇到了问题,如果查询全部的 ...

  6. 魂酥的NOIP2018(真实)游记

    NOIP之后才开博客 作为一个高一零基础蒟蒻 想说什么似乎也没什么可说的 才学几个月似乎也没什么发言权就是了 Day -1 期中考爆0,似乎是班里学OI的考得最惨的一个 岂不美哉 要么我也没想考好 也 ...

  7. 洛谷 2146 [NOI2015]软件包管理器

    [题解] 每个软件只依赖另一个软件,且依赖关系不构成环,那么很容易想到这是树形结构. 我们用1表示以安装,用0表示未安装或已卸载:那么安装一个软件,就是把它到树根的路径上所有的点都改为1:卸载一个软件 ...

  8. Python网络编程—socket(二)

    http://www.cnblogs.com/phennry/p/5645369.html 接着上篇博客我们继续介绍socket网络编程,今天主要介绍的内容:IO多路复用.多线程.补充知识点. 一.I ...

  9. spring boot 的使用(一)

    1.  启动spring-boot项目 mvn spring-boot:run cd target java -jar xxxx.jar xxxx代表生成的jar包

  10. RabbitMQ-高级特性(六)

    存储机制 待... 消息结构 惰性队列 惰性队列会尽可能将消息存入到磁盘中,消费者消费相应的消息才会加载到内存,它可以支持更长的队列 默认情况下生产者消息会尽可能存储到内存中就算设置持久化消息 也会再 ...