我想检查几何体值的区域。
几何体值为POLYGON
或POINT
或MULTI POLYGON
。字段的类型为geometry
我检查geom字段的srid:
select st_srid(geometry)
from my_table
我得到srid=32636。
我在这里检查过:https://epsg.io/32636单位似乎是米。
现在我想得到每个值的面积(以米为单位(:
select st_area(geometry)
from my_table
我得到了非常小的值(0.0002,或0.000097,或0.33,…(
我想确定:
- 这些值是指平方米吗
- 那么这些数值小于1平方米
由于SRS单位为米,ST_Area
将返回以平方米为单位的面积。以下示例使用具有不同单位的SRS计算多边形的面积:
WITH j (geom) AS (
VALUES ('SRID=32636;
POLYGON((-1883435.029648588 6673769.700215263,-1883415.1158478875 6673776.142528819,-1883411.8478185558 6673765.073005969,-1883431.7724919873 6673758.967942359,-1883435.029648588 6673769.700215263))'::GEOMETRY))
SELECT
ST_Area(geom) AS sqm,
ST_Area(
ST_Transform(geom,2249)) AS sqft
FROM j;
sqm | sqft
-------------------+-------------------
237.6060612927441 | 2341.135411173445
- EPSG 32636:单位为米(椭球WGS84(
- EPSG 2249:单位为英尺(椭球GRS1980(
回答您的问题:
这些值是否意味着平方米(m^2(?
是。
那么这些值是否小于1平方米?
是。我很好奇你的几何图形是关于什么的。也许你混淆了不同的SRS?
不相关注意:具有相同单元的SRS的空间操作可能仍然会产生不同的结果,因为它们也可能使用不同的ellipsoids
。以下示例将使用SRS计算相同几何形状的面积,SRS以米为单位,但使用不同的椭球体。注意结果的差异:
WITH j (geom) AS (
VALUES ('SRID=32636;
POLYGON((-1883435.029648588 6673769.700215263,-1883415.1158478875 6673776.142528819,-1883411.8478185558 6673765.073005969,-1883431.7724919873 6673758.967942359,-1883435.029648588 6673769.700215263))'::GEOMETRY))
SELECT
ST_Area(geom) AS sqm_32636,
ST_Area(
ST_Transform(geom,26986)) AS sqm_26986
FROM j;
sqm_32636 | sqm_26986
-------------------+--------------------
237.6060612927441 | 217.49946674261872
- EPSG 32636:单位为米(椭球WGS84(
- EPSG 26986:单位为米(椭球GRS1980(
。。但如果你坚持使用相同的椭球体和单位,数学计算更有意义:
WITH j (geom) AS (
VALUES ('SRID=32636;
POLYGON((-1883435.029648588 6673769.700215263,-1883415.1158478875 6673776.142528819,-1883411.8478185558 6673765.073005969,-1883431.7724919873 6673758.967942359,-1883435.029648588 6673769.700215263))'::GEOMETRY))
SELECT
ST_Area(
ST_Transform(geom,2249)) AS sqft_2249,
ST_Area(
ST_Transform(geom,2249)) * 0.3048 ^ 2 AS sqm_2249, -- manually converted from sqm to sqft
ST_Area(
ST_Transform(geom,26986)) AS sqm_26986
FROM j;
sqft_2249 | sqm_2249 | sqm_26986
-------------------+--------------------+--------------------
2341.135411173445 | 217.49859674966302 | 217.49946674261872
演示:db<>fiddle