SuperAPI AI 工具集

qgis-syntax-processing-scripts

通用与其它

查看项目

更新于 10-15 22:18

技能介绍

用途:该技能包用于在 QGIS 中通过 Python 调用处理框架(Processing Framework),运行已有算法、创建自定义算法或串联多个地理处理步骤,并规避硬编码算法 ID、缺少异常处理等常见问题。

主要能力:涵盖 processing.run() 与 processing.runAndLoadResults() 执行算法、QgsProcessingAlgorithm 自定义算法基类、QgsProcessingProvider 分组、QgsProcessingContext 执行环境、QgsProcessingFeedback 进度与取消、QgsProcessingAlgRunnerTask 后台执行,以及通过 QgsApplication.processingRegistry() 查询算法。算法 ID 采用 provider:algorithm_name 格式,如 native:buffer、gdal:warpreproject、grass:v.buffer。

使用方式:运行算法时用 try/except QgsProcessingException 包裹 processing.run();外部提供者算法先用 algorithmById() 验证可用性;自定义算法需实现 name()、displayName()、initAlgorithm()、processAlgorithm()、createInstance(),并在 initAlgorithm() 中声明全部输出;循环中检查 feedback.isCanceled() 并用 setProgress() 报告进度;中间结果使用 'memory:' 或 QgsProcessing.TEMPORARY_OUTPUT,避免硬编码临时路径;插件需在 metadata.txt 中设置 hasProcessingProvider=yes。

适用场景:QGIS 插件开发、批量地理处理、算法链式调用、后台任务执行。

限制:资料未提供具体收费、价格、平台支持范围或效果数据;部分 API 行为与版本相关,需以官方文档为准。