1
使用PostGIS沿极包裹海岸线进行点采样
我正在执行一项任务,要求我在海岸线上每1000公里获取一次采样点,并且遇到了南极洲的问题。据我所知,在函数中使用几何图形似乎是一个问题,而实际上我认为应该将地理信息用于此操作。 使用这个非常相似的问题中的函数,我可以产生如下所示的结果:。 如您所见,ST_AddMeasure()并且ST_LocateAlong()似乎没有球形地处理几何,这导致许多点位于南极上。甚至沿日期线(左侧)在剪辑上添加了一个点。根据这两个函数的文档,只能使用几何。 可以在此处找到用于生成多边形和点的代码,但这是用于生成点的SQL: CREATE TABLE atest AS WITH line AS (SELECT id, ST_ExteriorRing((ST_Dump(geom)).geom) AS geom FROM line_sample_test), linemeasure AS (SELECT ST_AddMeasure(line.geom, 0, (ST_Length(line.geom))::int) AS linem, generate_series(0, (ST_Length(line.geom))::int, 10) AS i FROM line), geometries AS ( SELECT i, ST_LocateAlong(linem, i) AS geom FROM linemeasure) SELECT * from geometries; 如何在此海岸线上每1000公里产生一个点?