gpt4 book ai didi

Postgresql 使用 ST_removePoint 更新多边形几何

转载 作者:行者123 更新时间:2023-11-29 11:25:50 24 4
gpt4 key购买 nike

我有一个名为 geofences 的表,它在名为 geometry 的列中存储多边形类型的几何图形。我通过从现有几何体中仅删除一个点来更新多边形。为此,我使用了查询:

 UPDATE gfe_geofences
SET geometry = ST_RemovePoint(geometry, ST_NPoints(ST_GeomFromText(
'POINT(23.1446787840563 96.002746420167)', 0) ) - 1)
WHERE is_active = true
AND ST_IsClosed(the_geom) = true;

但它给了我错误:

ERROR: lwline_deserialize: attempt to deserialize a line which is really a Invalid type

你能帮我更新几何吗?

提前致谢。

最佳答案

ST_RemovePoint 仅适用于线串(参见 http://postgis.refractions.net/docs/ST_RemovePoint.html。我会做的是,使用 ST_Boundary 获取多边形的边界,对其调用 ST_RemovePoint,然后使用 ST_MakePolygon 构建新的多边形。

关于Postgresql 使用 ST_removePoint 更新多边形几何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12176479/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com