postgis st_area计算多边形的面积

WGS84(4326)是以度为单位。

st_transform函数是用来将几何体转换到以米为单位的坐标系中
ST_SetSRID函数是用来更改某条轨迹的空间参考标识符(SRID)
ST_GeomFromText 把wkt数据转为Geometry数据。
所以用以下sql脚本,用来计算某个多边形的面积。单位是万平方公里。
用st_transform函数转换成米单位的。然后设置空间标识符为4527(2000坐标系平面计算精准)标识符。

select round(st_area(st_transform(
  ST_SetSRID(ST_GeomFromText(
'POLYGON (('|| #{shape} ||'))'),4326),4527))/10000000000)

你可能感兴趣的:(java,postgresql,gis)