중요
번역은 여러분이 참여할 수 있는 커뮤니티 활동입니다. 이 페이지는 현재 100.00% 번역되었습니다.
17.26. 배치 공간 처리 인터페이스
참고
이 수업에서 여러 개의 서로 다른 입력값들로 단일 알고리즘을 실행할 수 있게 해주는 배치(batch) 공간 처리 인터페이스를 소개합니다.
가끔 지정한 알고리즘을 서로 다른 입력물들을 사용해서 몇 번이고 실행해야 할 때가 있습니다. 이를 테면 입력 파일 한 무리를 기존 포맷에서 다른 포맷으로 변환해야 하는 경우입니다. 또는 지정한 투영체를 사용하는 레이어 몇 개를 다른 투영체로 변환해야 하는 경우도 있겠죠.
이런 경우, 툴박스에서 알고리즘을 몇 번이고 호출하는 것이 최선은 아닙니다. 그 대신 지정한 알고리즘의 다중 실행을 훨씬 단순화해주는 배치 공간 처리 인터페이스를 사용해야 합니다. 배치 공간 처리로 어떤 알고리즘을 실행하려면, 툴박스에서 알고리즘을 선택한 다음 더블클릭하지 말고 오른쪽 클릭하면 나타나는 컨텍스트 메뉴에서 Run as batch process 를 선택하십시오.
![../../../_images/batch_menu.png](../../../_images/batch_menu.png)
이 예제에서는 Reproject algorithm 을 사용하겠습니다. 앞에서 설명한 대로 시작하십시오. 다음 대화창이 나타날 것입니다.
![../../../_images/batch_dialog.png](../../../_images/batch_dialog.png)
이 수업을 위한 데이터를 살펴보았다면, 셰이프파일 3개를 담고 있지만 QGIS 프로젝트 파일은 없다는 것을 알 수 있을 것입니다. 왜냐 하면 알고리즘을 배치 공간 처리로 실행할 때, 입력 레이어를 현재 QGIS 프로젝트 또는 파일에서 선택할 수 있기 때문입니다. 이렇게 하면, 예를 들어 지정한 폴더 안에 있는 모든 레이어와 같은, 많은 레이어를 더 쉽게 처리할 수 있게 해줍니다.
배치 공간 처리 대화창에 있는 테이블의 각 행은 해당 알고리즘의 각 실행을 나타냅니다. 각 행의 셀들은 알고리즘에 필요한 파라미터에 해당합니다. 이 파라미터들은 일반적인 단일 실행 대화창처럼 위아래로 배열되어 있는 것이 아니라 각 행에 나란히 배열되어 있습니다.
이 테이블을 대응하는 값들로 채워 실행할 배치 공간 처리를 정의하십시오. 대화창에 이 작업을 쉽게 할 수 있는 몇몇 도구들이 있습니다.
각 필드를 하나씩 채워봅시다. 첫 번째 열이 Input layer 필드입니다. 처리하고자 하는 각 레이어의 이름을 입력하는 대신, 모든 레이어를 선택해서 대화창이 각 행에 채워넣도록 할 수 있습니다. 좌상단의 셀 옆에 있는 버튼을 클릭하면 파일 선택 대화창이 뜹니다. 재투영할 파일 세 개를 선택하십시오. 각 행에 파일 하나씩 필요하기 때문에, 다른 두 개를 아래 행들에 채울 것입니다.
![../../../_images/first_column_filled.png](../../../_images/first_column_filled.png)
행의 기본적인 개수는 3개로, 변환해야 할 레이어들의 숫자와 일치합니다. 그러나 더 많은 레이어를 선택할 경우, 자동적으로 새 행이 추가될 것입니다. 각 항목을 수동으로 추가하고자 할 경우, Add row 버튼을 사용해서 더 많은 행을 추가할 수 있습니다.
모든 레이어를 EPSG:23029 좌표계로 변환할 것이기 때문에, 두 번째 필드에 해당 좌표계를 선택해야 합니다. 모든 행에 동일한 좌표계를 선택할 것이지만 각 행마다 해당 좌표계를 선택할 필요는 없습니다. 그 대신 (맨 위에 있는) 첫 번째 행의 해당 셀 옆에 있는 버튼을 클릭해서 좌표계를 설정한 다음, 해당 열의 헤더를 더블클릭하십시오. 해당 열의 모든 셀을 맨 위 셀의 값으로 채울 것입니다.
![../../../_images/second_column_filled.png](../../../_images/second_column_filled.png)
마지막으로 각 실행에 해당하는 재투영된 레이어를 담고 있는 산출물 파일을 선택해야 합니다. 다시 한 번 첫 행에 대해서만 실행해봅시다. 맨 위 셀에 있는 버튼을 클릭한 다음, 산출물 파일을 저장하고자 하는 폴더에 파일 이름을 (예를 들면 reprojected.shp
) 입력하십시오.
이제 파일 선택 대화창의 OK 를 클릭하면, 셀에 파일 이름이 자동적으로 채워지는 것이 아니라 다음과 같은 입력 대화창이 대신 나타납니다.
![../../../_images/autofill.png](../../../_images/autofill.png)
첫 번째 옵션을 선택할 경우 현재 셀만 채워질 것입니다. 다른 옵션을 선택한다면, 아래쪽의 모든 행을 지정한 패턴으로 채울 것입니다. 이 경우 Fill with parameter value 옵션을 선택한 다음 그 아래 있는 드롭다운 메뉴에서 Input Layer 옵션을 선택하십시오. 이렇게 하면 Input Layer (즉 레이어 이름) 값을 우리가 설정했던 파일 이름에 추가해서 각 산출물의 파일 이름을 서로 다르게 만들 것입니다. 이제 배치 공간 처리 테이블이 다음과 같이 보여야 합니다.
![../../../_images/complete.png](../../../_images/complete.png)
마지막 열은 결과물 레이어를 현재 QGIS 프로젝트에 추가할 것인지 아닌지를 설정합니다. 이 예제의 결과를 볼 수 있도록 기본값인 Yes 옵션을 변경하지 마십시오.
OK 를 클릭해서 배치 공간 처리를 실행합니다. 오류가 발생하지 않았다면, 모든 레이어가 처리되어 새 레이어 3개가 생성되었을 것입니다.