Daha çox

QGIS-Python qatın hazırkı səviyyədə olub olmadığını yoxlamalı və onu aktivləşdirməlidir

QGIS-Python qatın hazırkı səviyyədə olub olmadığını yoxlamalı və onu aktivləşdirməlidir


QGIS üçün bir plagin hazırlayıram. İstifadəçi bir mahal və koordinat cütü daxil edir. Daha sonra plagin mahal məlumatlarına əlavə edir və verilən koordinatları yaxınlaşdırır.

Məsələ burasındadır ki, eyni adlı birdən çox bölgə var, koordinat cütlüyünə yaxınlaşdırıldıqda, mahal məlumatları görünə bilər, lakin eyni ad əlavə edilmiş bir neçə təbəqə olduğu üçün aktiv deyil.

Kətandakı mövcud vəziyyətdə görünən / görünən / görünə bilən təbəqəni aktivləşdirmək üçün bir yola ehtiyacım var. Mən cəhd etdim:

idxal qgis idxal qgis.utils kətan = qgis.utils.iface.mapCanvas () təbəqələr = qgis.utils.iface.legendInterface (). qat () i = qgis.utils.iface əfsanə = i.legendInterface () #iter qatlardakı təbəqə üçün əfsanə təbəqələri: # əgər təbəqənin adı, əgər istifadəçi daxil etdiyi ilə eynidir, əgər qat.name (). alt () == county.lower (): # və onu kətanda görə bilərsiniz) / ölçüdə / əgər buna baxırsınızsa canvas.extent () == layer.extent (): # qatı aktivləşdirin, beləliklə iface.setActiveLayer (qat) seçim edə və ya müəyyənləşdirə bilərəm.

legend.isLayerVisible (qat)axtardığım şey deyil, təbəqələri dəyişdirir, məlumatlar artıq görünür, indiki vəziyyətimdəki təbəqəyə ehtiyacım var.


Videoya baxın: QGIS Python PyQGIS - Calculate Field Values Field Calculator