POSTGIS는 다각형의 최대 길이와 평균 너비를 얻습니다.


13

postgis에 다각형 유형 테이블이 있습니다.

다각형의 최대 길이를 자동으로 계산해야합니다.

여기에 이미지 설명을 입력하십시오

두 번째는 평균 너비입니다.

여기에 이미지 설명을 입력하십시오

모든 다각형이 다른 경우 거의 직사각형이지만 실제로는 모호 할 수 있으며 너비와 높이를 구별하는 것이 거의 불가능하므로 이것이 가능하다면 이제는 의문의 여지가 있습니다.

누군가가 이것에 빛을 비출 수 있는지 봅시다.

문안 인사,


흥미로운 질문이며 확실히 가능합니다. 최소한 모든 정점에서 다른 모든 다항식 런타임까지 확실하게 선을 그립니다. 보다 우아한 솔루션을 보려면 gis.stackexchange.com/questions/32552/…를
John Powell

"최대 길이"에 대한 설명은 명확 해 보이지만 "avg 너비"의 예는 해당 길이와 수직이 아닙니다. 그렇지 않습니까? 그런 다음 "높이"를 언급합니다. 조금 혼란스러워!
Martin F

이 평균 너비 개념, 특히 사용중인 실제 형상의 예에 대해 더 자세한 정보가 필요하다고 생각합니다.
raphael

답변:


13

질문의 첫 부분 : 입력과 동일한 형상을 두 번 사용하는 ST_LongestLine어떻 습니까?

SELECT 
  ST_Length(ST_LongestLine(
   (SELECT geom FROM mylayer WHERE gid=1),
   (SELECT geom FROM mylayer WHERE gid=1))
);

질문의 두 번째 부분 :

다각형의 평균 너비 계산과 관련하여 몇 가지 흥미로운 답변을 찾을 수 있습니다. 다각형의 평균 너비는 어떻게 계산할 수 있습니까?


그것은 영리합니다. 그 기능을 몰랐습니다.
존 파월

매우 유용합니다. 이 결과 가장 긴 선에서 폴리 라인을 만드는 방법이 있습니까?
user1655130

7

1 부에서는 ST_MaxDistance를 사용 하십시오.

투영 된 단위로 두 선 스트링 사이의 2 차원 최대 거리를 반환합니다. g1과 g2가 동일한 지오메트리 인 경우이 지오메트리에서 가장 멀리있는 두 정점 사이의 거리를 반환합니다.

예:

SELECT
gid,
ST_MaxDistance(geom, geom) AS "Max Length"
FROM layer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.