- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我现在已经从两个角度解决了这个问题,但我肯定缺少 PostGIS 库的知识来实际执行我的需求。
基本上,我在名为“geom”的列中包含一个多边形(没有多边形)。它们都是非常简单的城市边界形状。我已经确定了如何计算质心,但我想查询多边形中最长的点是从质心开始的。
更直接:我无法找出如何从我的几何列中分解点,在顶点和质心之间运行 ST_Distance()
并输出最长距离。
我怀疑我必须使用 ST_DumpPoints()
但我不明白如何编写表达式来完成剩下的工作。
我的解决方案看起来与此类似:
SELECT max(ST_Distance(ST_DumpPoints(geom), ST_Centroid(geom))) AS distance
最佳答案
ST_DumpPoints()
函数返回一组 (geom, path) 行,其中 geom
是来自多边形的点,path
是一个整数数组(在本例中)位置 1 处的多边形和位置 2 处环内 POINT 的索引。由于 ST_DumpPoints()
是一个返回集合的函数,因此应该在 FROM
中使用它条款。 (虽然这些示例都是函数式的,但 PostGIS 文档在 SELECT
子句中使用了该函数,但这是不好的做法,不推荐这样做。)
为了使其全部正常工作,您需要制作一个 LATERAL JOIN
:在加入的“表”dump
中,您使用了先前指定表 my_table t
中的列。当完成一个函数时,如本例所示,LATERAL JOIN
是隐式允许的。
SELECT t.id AS city_id,
ST_Centroid(t.geom) AS center,
max(ST_Distance(dump.geom, ST_Centroid(t.geom))) AS distance,
dump.path AS path_to_the_burbs
FROM my_table t
JOIN ST_DumpPoints(t.geom) dump ON true
GROUP BY 1, 2, 4
ORDER BY 1;
关于postgresql - 多边形点距其质心的最远距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31497071/
前言 一年一度的虐狗节终于过去了,朋友圈各种晒,晒自拍,晒娃,晒美食,秀恩爱的。程序员在晒什么,程序员在加班。但是礼物还是少不了的,送什么好?作为程序员,我准备了一份特别的礼物,用以往发的微博数据
默认情况下,我有一个 V3 map 加载并以特定的经度/纬度为中心。加载后,用户可以输入他们的地址以获取前往该地点的路线。发生这种情况时, map 会调整大小以适应其左侧的方向框。因此,路线在 map
我是一名优秀的程序员,十分优秀!