548-0141/01 – Programming in GIS 4 (PvGIS4)

Gurantor departmentDepartment of GeoinformaticsCredits5
Subject guarantordoc. RNDr. Jan Caha, Ph.D.Subject version guarantordoc. RNDr. Jan Caha, Ph.D.
Study levelundergraduate or graduateRequirementCompulsory
Year1Semesterwinter
Study languageCzech
Year of introduction2021/2022Year of cancellation
Intended for the facultiesHGFIntended for study typesFollow-up Master
Instruction secured by
LoginNameTuitorTeacher giving lectures
CAH0021 doc. RNDr. Jan Caha, Ph.D.
KUK064 Ing. Pavel Kukuliač, Ph.D.
RUZ02 Ing. Kateřina Růžičková, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Credit and Examination 2+2
Part-time Credit and Examination 8+8

Subject aims expressed by acquired skills and competences

The aim of the course is to teach students to create their own tools (plugins) for QGIS software in Python. Students gain following skills: - installation and setup of open-source GIS tools (QGIS, GDAL) with Python API - QGIS using via Python console - creation of tools for QGIS in Python with qgis.core objects - creating of own plugin for QGIS - creating tests for own plugin - creation of graphical user interface for Python tools within QGIS

Teaching methods

Lectures
Tutorials

Summary

Course is focusing on developing own tools (plugins) in Python language for software QGIS while using QGIS API. Students will be introduced to possibilities of data processing automation while using QGIS functionality and will learn how to develop tools for these purposes.

Compulsory literature:

LAWHEAD, J.: QGIS Python Programming Cookbook. Birmingham: Packt Publishing Ltd. 2015. ISBN 1-78398-498-8. GRASER, A., OLAYA, V.: Processing: A Python Framework for the Seamless Integration of Geoprocessing Tools in QGIS. ISPRS International Journal of Geo-Information, 4(4), 2219-2245, doi:10.3390/ijgi4042219. 2015. GRASER, A.: Learning QGIS. Third edition. Birmingham: Packt Publishing Ltd. 2016. ISBN 978-1-78588-033-9. PyQGIS Developer Cookbook. Available online from: https://docs.qgis.org/3.16/en/docs/pyqgis_developer_cookbook/index.html

Recommended literature:

QGIS API Documentation. https://qgis.org/api/modules.html CUTTS, A., GRASER, A. Learn QGIS: your step-by-step guide to the fundamental of QGIS 3.4. 4th edition. Birmingham: Packt Publishing Ltd. 2018. ISBN 978-1-78899-742-3. GRASER, A., MANDEL, A., FERRERO, V., BRUY, A., MEARNS, B.: QGIS: Becoming a GIS Power User. Birmingham: Packt Publishing. 2017. ISBN 978-1-78829-972-5. MENKE, K., SMITH, R., PIRELLI, L., VAN HOESEN, J.: Mastering QGIS. Second Edi. Birmingham: Packt Publishing Ltd. 2016. ISBN 978-1-78646-037-0.

Way of continuous check of knowledge in the course of semester

Students are asked about knowledge from areas that they should have already known from previous lectures. They work on individual project. Written and oral exam.

E-learning

Other requirements

No additional requirements are imposed on the student.

Prerequisities

Subject has no prerequisities.

Co-requisities

Subject has no co-requisities.

Subject syllabus:

1. PyCharm IDE, installation and setup of open-source GIS tools (QGIS, GDAL) with Python API 2. Python in QGIS - Models, Scripts, GUI 3. QGIS usage via Python console 4. Creation of tools for QGIS in Python (Scripts) - tool structure, basic data processing 5. QGIS API - division, main parts - modules qgis.core, qgis.analysis, qgis.processing 6. Basic objects for creating tools from the qgis.core module 7. Creating tools for QGIS in Python with qgis.core objects - introduction, basic elements of the interface 8. Creating tools for QGIS in Python with qgis.core objects - vector data 9. Creating tools for QGIS in Python with qgis.core objects - raster data 10. Plugin creation - structure, requisites, tools for creation 11. Creating tests (Python module unittest) for own plugin 12. Creating more complex GUIs for Python tools within QGIS 13. Python programs using QGIS API without direct access to QGIS

Conditions for subject completion

Part-time form (validity from: 2021/2022 Winter semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of pointsMax. počet pokusů
Credit and Examination Credit and Examination 100 (100) 51
        Credit Credit 33  17
        Examination Examination 67 (67) 18 3
                Written part of exam Written examination 52  18
                Oral part of exam Oral examination 15  0
Mandatory attendence participation: Lectures optional, exercises 80%.

Show history

Conditions for subject completion and attendance at the exercises within ISP: Lectures for self-study of course material available at https://geoinformatika-1.vsb.cz/kuk064/. Consulations with the lecturer can be held online or in person. Participation in exercises according to the student's availability. To obtain credits, the student must complete and hand-in a final project assigned by the instructor no later than the end of the examination period of the semester. The exam must be taken in person.

Show history

Occurrence in study plans

Academic yearProgrammeBranch/spec.Spec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2024/2025 (N0532A330039) Geoinformatics GIT K Czech Ostrava 1 Compulsory study plan
2024/2025 (N0532A330039) Geoinformatics GIT P Czech Ostrava 1 Compulsory study plan
2023/2024 (N0532A330039) Geoinformatics GIT K Czech Ostrava 1 Compulsory study plan
2023/2024 (N0532A330039) Geoinformatics GIT P Czech Ostrava 1 Compulsory study plan
2022/2023 (N0532A330039) Geoinformatics GIT P Czech Ostrava 1 Compulsory study plan
2022/2023 (N0532A330039) Geoinformatics GIT K Czech Ostrava 1 Compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner

Assessment of instruction



2023/2024 Winter
2022/2023 Winter