查看某一個點是否在某個多邊形內 使用ST_Contains函數


查看某一個點是否在某個多邊形內  使用ST_Contains函數

--LINESTRING ( 121.312350 30.971457 , 121.156783 31.092221 , 121.353250 31.278195 , 121.509125 31.157431 , 121.312350 30.971457 )  是把連續的點圍成一個多邊形

--st_point(a,b) 表示為一個點

--查看某一個點是否在某個多邊形內 返回t表示在范圍內
SELECT  ST_Contains( ST_MakePolygon(ST_GeomFromText('LINESTRING ( 121.312350 30.971457 , 121.156783 31.092221 , 121.353250 31.278195 , 121.509125 31.157431 , 121.312350 30.971457 ) ')) ,st_point(121.332378,31.07106) )
--查看某一個點是否在某個多邊形內 返回f表示不在范圍內
SELECT  ST_Contains( ST_MakePolygon(ST_GeomFromText('LINESTRING ( 121.312350 30.971457 , 121.156783 31.092221 , 121.353250 31.278195 , 121.509125 31.157431 , 121.312350 30.971457 ) ')) ,st_point(121.632378,31.07106) )

 

----------------

PostgreSQL 是一種對象-關系型數據庫管理系統(ORDBMS),也是目前功能最強大、特性最豐富和最復雜的自由軟件數據庫系統。它起源於伯克利(BSD)的數據庫研究計划,目前是最重要的開源數據庫產品開發項目之一, 有着非常廣泛的用戶。PostGIS在對象關系型數據庫PostgreSQL上增加了存儲管理空間數據的能力,相當於Oracle的spatial部分。PostGIS最大的特點是符合並且實現了OpenGIS的一些規范,是最著名的開源GIS數據庫。

PostGIS特性

  PostGIS支持所有的空間數據類型,這些類型包括:點(POINT)、線 (LINESTRING)、多邊形(POLYGON)、多點(MULTIPOINT)、多線(MULTILINESTRING)、多多邊形 (MULTIPOLYGON)和集合對象集(GEOMETRYCOLLECTION)等。PostGIS支持所有的對象表達方法,比如WKT和WKB。   PostGIS支持所有的數據存取和構造方法,如GeomFromText()、AsBinary(),以及GeometryN()等。   PostGIS提供簡單的空間分析函數(如Area和Length)同時也提供其他一些具有復雜分析功能的函數,比如Distance。   PostGIS提供了對於元數據的支持,如GEOMETRY_COLUMNS和SPATIAL_REF_SYS,同時,PostGIS也提供了相應的支持函數,如AddGeometryColumn和DropGeometryColumn。   PostGIS提供了一系列的二元謂詞(如Contains、Within、Overlaps和Touches)用於檢測空間對象之間的空間關系,同時返回布爾值來表征對象之間符合這個關系。   PostGIS提供了空間操作符(如Union和Difference)用於空間數據操作。比如,Union操作符融合多邊形之間的邊界。兩個交迭的多邊形通過Union運算就會形成一個新的多邊形,這個新的多邊形的邊界為兩個多邊形中最大邊界。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM