26.6. De interface Batch-processing
26.6.1. Introductie
Alle algoritmes (inclusief modellen) kunnen worden uitgevoerd als een batch-proces. Dat is, zij kunnen niet slechts met één enkele set van invoer worden uitgevoerd, maar met meerdere daarvan, het algoritme net zo vaak uitvoerende als nodig is. Dit is handig bij het verwerken van grote hoeveelheden gegevens, omdat het niet nodig is het algoritme vele keren vanuit de Toolbox te starten.
Kik met rechts op de naam in de Toolbox en selecteer de optie Uitvoeren als batch-proces in het pop-upmenu dat verschijnt om een algoritme als een batch-proces uit te voeren.
Indien u het dialoogvenster van de uitvoering van het algoritme hebt geopend, kunt u van daar uit ook de interface voor het batch-proces starten, klik op de knop Run as batch process….
26.6.2. De tabel met parameters
Uitvoeren van een batch-proces is soortgelijk aan het eenmalig uitvoeren van een algoritme. Waarden voor parameters moeten worden gedefinieerd, maar in dit geval hoeven we niet één enkele waarde voor elke parameter op te geven, maar in plaats daarvan een set, één voor elke keer dat het algoritme moet worden uitgevoerd. Waarden worden ingevoerd met behulp van een tabel zoals die welke hierna wordt weergegeven, waar elke rij een doorloop is en kolommen de parameters van het algoritme zijn.
Vanaf de bovenste werkbalk kunt u:
Regel toevoegen: voegt een nieuw item voor configuratie voor Processing toe.
Rij(en) verwijderen: verwijdert geselecteerde rijen uit de tabel. Selecteren van rijen wordt gedaan door te klikken op het nummer links en staat de combinatie voor het toetsenbord voor meervoudige selectie toe.
Open een configuratiebestand voor verwerken van batch in Processing
Opslaan de configuratie van batch voor Processing opslaan naar een bestand
.JSON
dat later kan worden uitgevoerd
Standaard bevat de tabel slechts twee rijen:
De eerste rij geeft in elke cel een keuzemenu opties om snel de cellen eronder te vullen. Beschikbare opties zijn afhankelijk van het type parameter.
metDe tweede regel (als ook elke daarop volgende) vertegenwoordigt één enkele uitvoering van het algoritme, en elke cel bevat de waarde van één van de parameters. Het is soortgelijk aan het dialoogvenster Parameters dat u ziet bij het uitvoeren van een algoritme vanuit de Toolbox, maar met een andere schikking.
Aan de onderzijde van de tabel, kunt u instellen of Lagen laden bij voltooien moet worden uitgevoerd.
Als de grootte van de tabel eenmaal is ingesteld, moet die worden gevuld met de gewenste waarden.
26.6.3. Vullen van de tabel met parameters
Voor de meeste parameters is het instellen triviaal. De van toepassing zijnde widget, hetzelfde als in het dialoogvenster voor één proces, wordt verschaft, wat het mogelijk maakt eenvoudigweg de waarde in te typen, of die te selecteren uit een lijst met mogelijke waarden, afhankelijk van het type parameter. Dit is inclusief, indien compatibel, voor de widget data-bepaald.
Voor het automatiseren van de definitie van het proces voor de batch en het vermijden van het cel na cel vullen van de tabel, wilt u misschien het menu Autom. vullen… van een parameter openen met het pijltje ernaast en een van de volgende opties selecteren om waarden in de kolom te vervangen:
Naar beneden vullen zal de invoer voor het eerste proces nemen en dat in alle andere processen invoeren.
Berekenen met expressie… zal u toestaan een nieuwe expressie voor QGIS te maken om te gebruiken voor het bijwerken van alle bestaande waarden binnen die kolom. Bestaande waarden voor parameters (inclusief die uit andere kolommen) zijn beschikbaar om te gebruiken binnen de expressie via variabelen. Bijv. instellen van het aantal segmenten, gebaseerd op de bufferafstand van elke laag:
CASE WHEN @DISTANCE > 20 THEN 12 ELSE 8 END
Waarden toevoegen met expressie… zal nieuwe rijen toevoegen met de waarden vanuit een expressie die een array teruggeeft (tegengesteld aan Bereken met expressie…, die alleen op bestaande rijen werkt). Het bedoelde geval voor het gebruiken is om het mogelijk te maken het dialoogvenster voor de batch te vullen met complexe numerieke series. Bijvoorbeeld het toevoegen van rijen voor elke batch-buffer met de expressie
generate_series(100, 1000, 50)
voor de parameter voor de afstand resulteert in nieuwe rijen met de waarden 100, 150, 200, … 1000.Bij het instellen van parameters voor een bestand of laag worden opties verschaft:
Bestanden toevoegen op patroon…: voegt nieuwe rijen toe aan de tabel voor bestanden waarvan de naam overeenkomt met een Patroon bestand in een map Kijken in. Bijv.
*.shp
zal alle bestandenSHP
in de map toevoegen aan de lijst. Selecteer Recursief zoeken om ook in submappen te zoeken.Bestanden selecteren… individueel op schijf
Alle bestanden uit een map toevoegen…
Uit geopende lagen selecteren… in het actieve project
Parameters voor de uitvoergegevens geven dezelfde mogelijkheden weer als bij het uitvoeren van het algoritme als één enkel proces. Afhankelijk van het algoritme, kan de uitvoer:
worden overgeslagen, als de cel leeg is
als een tijdelijk bestand worden opgeslagen: vult de cel met
TEMPORARY_OUTPUT
en onthoud om het keuzevak Lagen laden bij voltooien te selecteren.worden opgeslagen als een gewoon bestand (
.SHP
,.GPKG
,.XML
,.PDF
,.JPG
,…) waarvan het pad kan worden ingesteld met de opties voor Autom. vullen zoals eerder weergegeven. Bijv. gebruiken van Berekenen met expressie… om de namen voor uitvoerbestanden voor complexe expressies in te stellen als:'/home/me/stuff/buffer_' || left(@INPUT, 30) || '_' || @DISTANCE || '.shp'
U kunt ook het bestandspad direct intypen of het dialoogvenster voor het kiezen van een bestand gebruiken dat verschijnt bij het klikken op de betreffende knop …. Als u eenmaal het bestand hebt geselecteerd, wordt een nieuw dialoogvenster weergegeven om automatisch vullen voor andere cellen in dezelfde kolom mogelijk te maken (dezelfde parameter).
Als de standaardwaarde (Niet automatisch aanvullen) is geselecteerd, zal het eenvoudigweg de geselecteerde bestandsnaam in de geselecteerde cel van de tabel met parameters zetten. Als een van de andere opties is geselecteerd, zullen alle cellen onder de geselecteerde automatisch worden gevuld, gebaseerd op gedefinieerde criteria.
Vullen met getallen: voegt een automatisch verhogend nummer toe aan de bestandsnaam
Vullen met parameterwaarden: u kunt een parameter selecteren waarvan de waarde in dezelfde rij wordt toegevoegd aan de bestandsnaam. Dit is in het bijzonder nuttig voor het benoemen van objecten van de uitvoergegevens overeenkomstig die van de invoer.
worden opgeslagen als een laag binnen een container voor een database:
# Indicate a layer within a GeoPackage file ogr:dbname='C:/Path/To/Geopackage.gpkg' table="New_Table" (geom) # Use the "Calculate By Expression" to output to different layers in a GeoPackage 'ogr:dbname=\'' || @project_folder || '/Buffers.gpkg\' table="' || @INPUT || '_' || @DISTANCE || '" (geom)'
26.6.4. Uitvoeren van het batch-proces
Klik eenvoudigweg op Uitvoeren om het batch-proces uit te voeren als u eenmaal alle noodzakelijke waarden hebt ingevuld. Het paneel Log wordt geactiveerd en geeft details en stappen van de uitvoering weer van het uitvoeringsproces. De voortgang van de globale taak voor de batch zal worden weergegeven in de voortgangsbalk aan de onderzijde van het dialoogvenster.