이것은 좋은 질문입니다. 최근에 비슷한 것을해야했지만 훨씬 더 작은 데이터 세트를 사용했기 때문에 시각적 품질 검사가 추가 된 간단한 교차로를 사용할 수 있었고 괜찮 았습니다.
그러나 여기에 코드가 없지만 이것에 대한 아이디어가 있으며, 이는 일종의 무거운 프로세스입니다. 먼저 전체 데이터 세트의 샘플로 확실하게 테스트하십시오. 여기에 유용한 코드가있을 수 있습니다. (들여 쓰기는 아래에서 약간 이상해졌습니다.) :
좋은 지오메트리 세트 (속성을 끝내고 자하는 곳)를 가져 와서 버퍼를 만듭니다. *
각 버퍼 기능을 반복하십시오.
2a. 지형지 물의 일반적인 방향을 계산합니다 (max_y-min_y / max_x-min_x 또는 이와 유사한 것)
2b. 이 단일 기능을 사용하여 다른 레이어에서 위치별로 쿼리를 선택하십시오.
위치 별 선택 쿼리와 일치하는 둘 이상의 기능이 있으므로 선택한 기능을 반복하고 각 기능의 방향을 계산하십시오.
버퍼 피처와 가장 가까운 방향을 가진 피처에서 속성을 가져옵니다.
* 매우 작은 거리 (하나의지도 단위 또는 다른 것)로 시작한 다음 거리를 늘리면서이 프로세스를 실행하면서 이미 전송 한 속성을 덮어 쓰지 않도록주의합니다.
** 실제로 버퍼 기능을 만드는 것을 잊어 버릴 수 있으며 버퍼 거리가있는 위치 별 선택 쿼리를 수행하면됩니다. QGIS에 익숙하지는 않지만 그렇게 할 수 있다고 확신합니다.
이것이 모든 기능에 완벽하게 작동하는 방법은 없지만 시작입니다. 그런 다음 전송을 확인하고 완료하기위한 좋은 QA / QC 전략을 개발해야합니다.
편집 이것에 대해 더 생각해 보면, 아주 작은 버퍼 거리로 시작하고 권장하는 방향과 가장 일치하는 기능을 선택하면 시스템을 완전히 파괴하는 기본 예가 있습니다.
잘못된 빨간색 선의 속성이 사용됩니다. 이를 피하기 위해 일종의 공차를 작성하고 오리엔테이션 (원래 파란색 피쳐의 방위와 비교할 때)의 방위가 해당 공차 내에있는 경우에만 피쳐의 속성을 사용할 수 있습니다.
편집 2 죄송합니다,이 다각형입니까? 방금 그들이 회색 배경에 선이라고 생각합니다. 그것들이 다각형이라면, 나는이 방향 개념이 좋은 것인지 잘 모르겠습니다. 그러나 모든 교차 기능을 선택하고 가장 겹치는 부분을 파악할 수 있습니다 (유니온 유형 도구를 실행 한 다음 가장 큰 면적의 다각형 사용).