我從兩個角度解決了這個問題,但是我肯定缺少PostGIS庫的知識來實際執行我的需求。多邊形點離質心最遠的距離
基本上我有一個單獨的Polygon(沒有多面體)包含在一個名爲「geom」的列中。它們都是非常簡單的城市邊界形狀。我已經決定如何計算質心,但我想查詢多邊形中最長的點離質心的距離。
更直接:我很難找出如何從我的幾何列中分出點,在頂點和質心之間運行ST_Distance()
並輸出最長距離。
我懷疑我必須使用ST_DumpPoints()
但我不知道如何編寫表達式來完成剩下的工作。
我的解決方案已經看過類似:
SELECT max(ST_Distance(ST_DumpPoints(geom), ST_Centroid(geom))) AS distance
感謝您對此的幫助!我會給你更多的細節,因爲你的解決方案只有一半解釋了我需要去的地方。我的幾何值實際上是一個封閉的多邊形 - 通常具有各種形狀的10-15個頂點。問題是我想計算從質心到每個多邊形的距離以確定最長點。我可以使用最小邊界圓來做到這一點,但似乎是不必要的複雜。 – ddibiase
我工作的一個不同的解決方案,也許更優: SELECT ST_AsText(ST_CENTROID(ST_MinimumBoundingCircle(GEOM)::幾何形狀)), ST_AsText(ST_MinimumBoundingCircle(GEOM)::幾何) FROM 「地區」 我在想,如果我找到MBC並且它的質心可以計算從MBC中返回的任何多邊形的距離。 現在我需要弄清楚如何從質心或直徑計算半徑。這是一種圓滿的方式來完成我想要但可能工作。 – ddibiase
我完全不理解這些評論。帕特里克的答案如何解決您的問題?什麼是「封閉」多邊形而不是多邊形?由於積分沒有長度,什麼是「最長」的一點?這是一種X-Y情況,您尚未描述您的實際問題,而是詢問了您認爲的解決方案? – user464502