2017-01-26 4 views

답변

0
파이썬 콘솔에서 당신에게 쉼표로 구분 된 목록을 제공 하나 개의 잠재적 인 솔루션은 파이썬 콘솔에서 작은 스크립트를 실행하는 것입니다

:

mapcanvas = iface.mapCanvas() 
layers = mapcanvas.layers() 

for a in layers[0].getFeatures(): 
    for b in layers[1].getFeatures(): 
     if a.geometry().intersects(b.geometry()): 
      print a.id(),",",b.id() 

이의 결과를 생성한다 한 기능이 다른 기능과 교차하는 경우. 내 테스트에서는 레이어의 순서는 중요하지 않지만 두 레이어 모두 동일한 좌표 참조 시스템을 사용해야하므로 두 레이어 모두 다른 참조 시스템을 사용하는 경우 데이터를 다시 계획해야 할 수도 있습니다. 이것은 다각형과 폴리곤을 교차하는 점에 효과적이었습니다 (선과도 잘 맞을 것이라고 확신합니다).

https://gis.stackexchange.com/questions/168266/pyqgis-a-geometry-intersectsb-geometry-wouldnt-find-any-intersections과 같은 답변은 이러한 스크립트의 세부 조정에 도움이 될 수 있으며이 답변의 주된 소스였습니다.