SELECT ST_Buffer(geom, 400)
FROM my_table;
此查询创建 400 度的缓冲区。我怎样才能将其更改为在点周围有 400m 缓冲区?
我尝试使用 ST_Transform
和 ST_SetSRID
但出现错误。很可能是因为我的查询结构错误。
感谢您的帮助。
最佳答案
ST_buffer
使用投影单元。您可以将geometry
转换为geography
以使用米,或依赖单位为米的合适本地投影。
SELECT ST_Buffer(geom::geography, 400)
FROM my_table;
如果尚未设置,您可能需要先设置原始CRS
SELECT ST_Buffer(st_setSRID(geom,4326)::geography, 400)
FROM my_table;
关于postgresql - 如何在 PostGIS 中将缓冲区大小从度数更改为距离米?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62514871/