Programování v GIS 4
2024-11-03
QgsProcessingAlgorithm či QgsProcessingFeatureBasedAlgorithmQgsProcessingAlgorithmname(), displayName(), group(), groupId(), shortHelpString(), icon()initAlgorithm() kde pomocí funkce self.addParameter() přidáváme jednotlivé parametry (třídy odvozené od QgsProcessingParameterDefinition)processAlgorithm() kde dojde k samotnému zpracování datQgsProcessingParameterDefinition a odvozené třídyself.parameterAs...() v QgsProcessingAlgorithm objektuQgsProcessingContext a QgsProcessingFeedbackprocessAlgorithm()QgsProcessingFeedback slouží ke komunikaci s uživateleQgsProcessingContext obsahuje informace o prostředí, ve kterém se algoritmus provádí (často není třeba, ale může se hodit)checkParameterValues(self, parameters, context) -> Tuple[bool, str]True pokud je vše v pořádku, jinak False a chybovou hláškuQgsProcessingAlgorithm, která vždy vrací (True, "")postProcessAlgorithm(self, context: QgsProcessingContext, feedback: QgsProcessingFeedback), kde můžeme výsledek algoritmu ještě dále zpracovatprocessAlgorithm() a měla by vrace stejný Python objekt, který byl vrácen v processAlgorithm()processAlgorithm() a postProcessAlgorithm(), je třeba vytvořit proměnnou třídy, která bude uchovávat výsledek (tzn. self.result = ...)QgsProcessingFeatureBasedAlgorithmQgsProcessingAlgorithm určená pro modifikaci vektorových datprocessFeature() pro zpracování jednotlivých prvkůQgsProcessingAlgorithm, alespoň v pluginechQgsProcessingMultiStepFeedback pro zobrazení průběhu)Materiály dostupné: https://jancaha.github.io/vsb-vyuka/