[ArcGIS]특정지점으로 부터 가장 가까운 벡터데이터의 거리 구하기 GIS이야기

 ArcGIS에는 ArcToolbox라고 불리는 다양한 기능을 수행하는 도구들이 있지만 실제로 그것이 어디에 처박혀 있는지 몰라서 끙끙 앓다가 "노가다"를 해버렸던 경험들이 한번쯤 있을 것이다. 이 카테고리의 포스트들은 언젠가 한번씩은 쓸때가 오지만, 정작 쓸 때가 오면 툴의 사용법과 위치를 몰라서 헤메는 것들을 모아보려 한다. 그럼 지금부터 포스팅을 시작하겠다.  
 당신은 지금 특정한 지점(들)으로부터 가장 가까운 특정 대상(들)간의 거리를 구하고 싶다. 가령 예를 들면 특정 건물들로부터 가장 가까운 전철역의 거리 따위를 알고 싶은 상황이라고 가정해 보자. 그런 상황에서는 "Generate Near Table"을 사용하면 된다.

Arc Toolbox의 Analysis Tools 항목에 가면 "Generate Near Table"이라는 항목을 볼 수 있다. 일단 열어보자.

기준점이 될 레이어를 input 항목에 넣고, 그 기준점으로 부터 거리를 재려는 레이어를 Near features에 넣은 다음 결과 테이블의 저장 위치를 정하고 ok를 누른다. 여기서 input은 본인이 특정한 몇 개의 건물들이 될 것이고, 그 건물들을 기준으로 가장 가까운 전철역(Near features)과의 거리가 output 테이블에 기록될 것이다.

output 테이블의 모습이다. IN_FID는 input 항목에 넣었던 레이어의 고유 식별번호(FID)이고, NEAR_FID는 Near features항목에 넣었던 레이어의 고유식별번호(FID)이다. 혹시나 이 결과값을 input 혹은 near 항목과 join을 하고 싶다면 방금 언급한 필드들을 기준으로 join이 가능하다.

input레이어의 속성테이블. 이곳의 FID필드와 output테이블의 IN_FID는 서로 대응된다.
 
near features 레이어의 속성테이블. 이곳의 FID필드와 output테이블의 NEAR_FID는 서로 대응된다. 단, 일치하는 레코드의 수는 레코드가 적은 쪽의 레코드 수와 같다.

앞서 언급한대로 FID를 기준으로 삼아 join을 할 수 있다.


join 결과물. 이로써 각각의 건물들로부터 가장 가까운 전철역까지의 직선거리를 산출할 수 있다.

덧글

댓글 입력 영역


방문자위치