使用PostGIS / PostgreSQL从Linestring到Polygon的偏移曲线

时间:2016-11-06 22:28:59

标签: postgresql width polygon postgis multilinestring

我在Windows 7(x64)计算机上的PostgreSQL 9.5数据库(PostGIS 2.2)中有街道(线串)和建筑物(多边形)表格。

street_with_buildings

我试图通过绘制街道周围的偏移曲线来计算街道的宽度。我们的想法是在街道周围绘制平行线(偏移曲线),然后使用ST_Distance()计算它们之间的距离(宽度)。使用以下查询,我可以使用PostGIS函数ST_OffsetCurve()在街道两侧绘制平行线。两个表都使用EPSG:3044。

SELECT 
f.gid,
ST_Union(
    ST_OffsetCurve(ST_LineMerge(f.geom), 6.0, 'quad_segs=4 join=round'),
    ST_OffsetCurve(ST_LineMerge(f.geom), -6.0, 'quad_segs=4 join=round')
    ) as track
FROM
street f;

以上查询如下所示:

enter image description here

到目前为止,这些偏移曲线距离街道6米的固定距离。对于每条街道,我想沿着建筑立面(面向街道的多边形边缘)绘制这些偏移曲线。有人可以帮我怎么做吗?

0 个答案:

没有答案