Python 限制postgis查询中检索的点数?

Python 限制postgis查询中检索的点数?,python,leaflet,postgis,geopandas,Python,Leaflet,Postgis,Geopandas,简短问题:假设postgis中有一个表,其中有一个几何图形,一个由1000个点组成的圆,是否可以检索一些点以获得几何图形的整体形式? 例如: 从“分辨率”为100点的表格中选择几何图形 长问题:我将几何图形存储在表格中,需要使用传单在网页中绘制。目前一切正常,架构如下: 但是我需要提高web页面的性能,因为加载时间很长,因为需要从数据库中存储的几何体检索和构建大的geojson,这消耗了大量带宽。我的一些想法是,不检索构成圆(几何体)的所有点,只检索同样允许绘制几何体的子集。如果用户对几何体的

简短问题:假设postgis中有一个表,其中有一个几何图形,一个由1000个点组成的圆,是否可以检索一些点以获得几何图形的整体形式? 例如: 从“分辨率”为100点的表格中选择几何图形

长问题:我将几何图形存储在表格中,需要使用传单在网页中绘制。目前一切正常,架构如下:


但是我需要提高web页面的性能,因为加载时间很长,因为需要从数据库中存储的几何体检索和构建大的geojson,这消耗了大量带宽。我的一些想法是,不检索构成圆(几何体)的所有点,只检索同样允许绘制几何体的子集。如果用户对几何体的特定区域进行缩放,应用程序将仅检索传单地图中可见的部分,并以非等比方式刷新几何体以提高分辨率(几何体的点数)。

PostGIS有一个名为
ST_Simplify
()的函数,它正好可以做到这一点。它使用Ramer–Douglas–Peucker算法()简化(多)线串和(多)几何体。您可能需要一些缓存,以便在不同的缩放中使用不同的分辨率。

从p省选择ST_Npoints(几何体)、ST_Npoints(ST_SimplifiedPreserveTopology(几何体,0.001))、ST_SimplifiedPreserveTopology(几何体,0.001);我得的不是5667分,而是592分。这正是我要找的。