zoukankan      html  css  js  c++  java
  • postgis 简单应用

    1.要素的空间对象的文本表示(WKT)的示例如下:

    • POINT(0 0)
      LINESTRING(0 0,1 1,1 2)
      POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2, 1 2,1 1))
      MULTIPOINT((0 0),(1 2))
      MULTILINESTRING((0 0,1 1,1 2),(2 3,3 2,5 4))
      MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0),(1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -2,-2 -2,-2 -1,-1 -1)))
      GEOMETRYCOLLECTION(POINT(2 3),LINESTRING(2 3,3 4))

    2.可使用以下接口在这些格式之间进行转换:

    select ST_AsBinary(geom) from truemap_station_new ;
    select ST_AsText(geom) from truemap_station_new ;
    select ST_GeomFromWKB(ST_AsBinary(geom),4326) from truemap_station_new ;
    select ST_GeometryFromText(ST_AsText(geom),4326) from truemap_station_new ;

    导入shape文件,进入postgresql的bin目录,执行

     D:/test/0531guiji84.shp 0531guiji84 > D:/test/0531guiji84.sql

    再执行sql文件,则可以将shape文件导入到postgresql数据库中。

    3.要素的扩展空间对象的文本表示(EWKT)的示例如下。

    • POINT(0 0 0)-XYZ
      SRID = 32632; POINT(0 0)-带有SRID的XY
      POINTM(0 0 0)-XYM
      POINT(0 0 0 0)-XYZM
      SRID = 4326; MULTIPOINTM(0 0 0,1 2 1)-具有SRID的XYM
      MULTILINESTRING(((0 0 0,1 1 0,1 2 1),(2 3 1,3 2 1,5 4 1))
      POLYGON((0 0 0,4 0 0,4 4 0,0 4 0,0 0 0),(1 1 0,2 1 0,2 2 0,1 2 0,1 1 0))
      MULTIPOLYGON((((0 0 0,4 0 0,4 4 0,0 4 0,0 0 0),(1 1 0,2 1 0,2 2 0,1 2 0,1 1 0)),(( -1 -1 0,-1 -2 0,-2 -2 0,-2 -1 0,-1 -1 0))))
      GEOMETRYCOLLECTIONM(POINTM(2 3 9),LINESTRINGM(2 3 4,3 4 5))
      MULTICURVE((0 0,5 5),CICCULARSTRING(4 0,4 4,8 4))
      POLYHEDRALSURFACE((((0 0 0,0 0 1,0 1 1,0 1 0,0 0 0)),(((0 0 0,0 1 0,1 1 0,1 0 0,0 0 0)), (((0 0 0,1 0 0,1 0 1,0 0 1,0 0 0))),(((1 1 0,1 1 1,1 0 1,1 0 0,1 1 0)),(( 0 1 0,0 1 1,1 1 1,1 1 0,0 1 0)))(((0 0 1,1 0 1,1 1 1,0 1 1,0 0 1)))
      TRIANGLE ((0 0,0 9,9 0,0 0))
      TIN((((0 0 0,0 0 1,0 1 0,0 0 0)),(((0 0 0,0 1 0,1 1 0,0 0 0)))

    可使用以下接口在这些格式之间进行转换:

    select ST_AsEWKB(geom) from truemap_station_new ;
    select ST_AsEWKT(geom) from truemap_station_new ;
    select ST_AsHEXEWKB(geom) from truemap_station_new ;
    select ST_GeomFromEWKB(ST_AsEWKB(geom)) from truemap_station_new ;
    select ST_GeomFromEWKT(ST_AsEWKT(geom)) from truemap_station_new ;

    4一些简单的弯曲几何的示例如下所示:

    CIRCULARSTRING(0 0, 1 1, 1 0)
    CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0 0)
    COMPOUNDCURVE(CIRCULARSTRING(0 0, 1 1, 1 0),(1 0, 0 1))
    CURVEPOLYGON(CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0 0),(1 1, 3 3, 3 1, 1 1))
    MULTICURVE((0 0, 5 5),CIRCULARSTRING(4 0, 4 4, 8 4))
    MULTISURFACE(CURVEPOLYGON(CIRCULARSTRING(0 0, 4 0, 4 4, 0 4, 0 0),(1 1, 3 3, 3 1, 1 1)),((10 10, 14 12, 11 10, 10 10),(11 11, 11.5 11, 11 11.5, 11 11)))

    查找有空间字段的表

    SELECT * FROM geography_columns;
    SELECT * FROM geometry_columns;

    CREATE EXTENSION postgis;
    ALTER TABLE truemap_station ADD COLUMN geom geometry(point, 4326);
    update truemap_station set geom = ST_GeomFromText('Point('|| x ||' ' || y ||')',4326);
    create index geom_index ON truemap_station USING GIST (geom);

  • 相关阅读:
    python学习:两个py文件间的函数调用
    python学习:基础概念
    python学习:Windows 下 Python easy_install 的安装
    Python学习:python网址收集
    Nginx模块之Nginx-Ts-Module学习笔记(一)抢险体验
    PHP 文件加密Zend Guard Loader 学习和使用(如何安装ioncube扩展对PHP代码加密)
    OpenResty 扩展库(二)lua-resty-template
    Github 开源项目(二) jsmpeg-vnc
    info replication
    linux下编译make文件报错“/bin/bash^M: 坏的解释器,使用grep快速定位代码位置
  • 原文地址:https://www.cnblogs.com/hejj-bk/p/12195884.html
Copyright © 2011-2022 走看看