携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第31天
获取几何图形元数据信息:
ST_GeometryType(geometry) —— 返回几何图形的类型
ST_NDims(geometry) —— 返回几何图形的维数
ST_SRID(geometry) —— 返回几何图形的空间参考标识码
postgis=# select name,ST_GeometryType(geom),ST_NDims(geom),ST_SRID(geom) from t_gis;
name | st_geometrytype | st_ndims | st_srid
-----------------+-----------------------+----------+---------
Point | ST_Point | 2 | 4326
Linestring | ST_LineString | 2 | 4326
Polygon | ST_Polygon | 2 | 4326
PolygonWithHole | ST_Polygon | 2 | 4326
Collection | ST_GeometryCollection | 2 | 4326
(5 rows)
返回点坐标信息:
postgis=# select st_x(geom),st_y(geom) from t_gis where name='Point';
st_x | st_y
------+------
0 | 0
(1 row)
计算长度:
postgis=# select st_length(geom) from t_gis where name='Linestring';
st_length
------------------
3.41421356237309
(1 row)
计算面积:
postgis=# select st_area(geom) from t_gis where name='Polygon';
st_area
---------
1
(1 row)
不仅仅是规则图形,不规则图形的面积也可以直接计算:
postgis=# select st_area(geom) from t_gis where name='PolygonWithHole';
st_area
---------
99
(1 row)
更多的函数使用可以参考官方文档:
postgis.net/docs/manual…