본문 바로가기
카테고리 없음

[GIS] GEOMETRY RELATE 위치관계 정리

by 북클릿 2022. 10. 19.
반응형

이번 글에서는 GEOMETRY가 가질 수 있는 위치 관계에 대해 적어보려고 한다.

 

여기서 GEOMETRY는 2차원 데이터의 (POINT, LINESTRING, POLYGON, MULTI[POINT,LINESTRING,POYLGON])

으로 제한하도록 하겠다.

 

==

TODO : DE-9IM 소개글 링크

==

 

지난 글에서 다룬 DE-9IM 모델을 사용하면, 3 X 3의 행렬을 얻을 수 있고 각 성분의 값은 (F, 0, 1 2) 중 하나다.

위의 마스킹 테이블을 이용하면, 두 GEOMETRY의 위치관계를 빠르게 알아낼 수 있다.

 

Postgis 기준으로는 ST_Relate를 이용해서 각각의 위치관계에 대해서 검증 할 수 있고,

Oracle Spatial DB 기준으로는 SDO.Relate로 검증 하거나, SDO_GEOM.RELATE 로 알아낼 수 있다.

 

Postgis 기준으로 2차원상의 두 도형에 대한 위치관계를 간략하게 소개해 보겠다.

Disjoint - 교점이 없음

Intersects, - 교점이 있음

Covers, - A가 B를 포함함

Contains, - A가 B를 포함하는데 InteriorPoint 도 하나 이상 포함됨 

ContainsProperly, - A의 Interior가 B를 포함함

CoveredBy, - B가 A를 포함함, 즉 Covers(B,A)와 동치

Within - B가 A를 포함하는데 InteriorPoint 도 하나 이상 포함됨, 즉 Contains(B,A)와 동치

Equals - A와 B가 같은 도형임

Touches - A와 B가 만나긴 하는데 Boundary 에서만 만남

Crosses - (차원이 다른 A,B가 만나는데, 안만나는 점도 있음) 또는 (둘중 하나가 선(들)인데, Interior의 교집합이 점(들)임)

Overlaps - A와 B가 같은 차원이고, 교집합도 있는데 교집함도 같은 차원임

 

참 많기도하다.. Crosses가 제일 복잡하다.

이렇게 보면 동시에 해당되는 위치관계도 있고, 매번 마스킹 테이블을 보면서 해독하기 머리아파서 테크트리를 정리해보았다.

 

 

우측으로 갈 수록 강력해진다. 즉 벤다이어그램으로 치면 더 안쪽에 위치하게 된다.

참고로, Contains와 Within을 모두 만족하면 Equals이다.

 

 

[개발자 필독]

텀블벅에서 진행한 전자책이 너무 잘되어서, 크몽으로도 상륙하게 되었습니다!

https://kmong.com/self-marketing/457491/ZAUx7MErx0

 

IT 초보자를 위한 하루만에 배우는 데이터베이스 | 15000원부터 시작 가능한 총 평점 0점의 전자책,

0개 총 작업 개수 완료한 총 평점 0점인 팀플러머의 전자책, 직무스킬 전자책 서비스를 0개의 리뷰와 함께 확인해 보세요. 전자책, 직무스킬 전자책 제공 등 15000원부터 시작 가능한 서비스

kmong.com

 

반응형

댓글