Abfragen einzelner Attribute eines Features in Quantum GIS

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
sven h.
User
Beiträge: 2
Registriert: Montag 6. August 2012, 10:18

Hallo Leute,

ich weiß nicht ob solch eine Frage schonmal gestellt wurde (ich habe zumindest nichts gefunden) und vllt. könnt ihr mir ja helfen. Ich arbeite aktuell mit Python und Quantum GIS (QGIS) und möchte gerne die Attributwerte eines selektierten Features auslesen. Ein Feature ist hierbei z.B. eine angeklickte Stadtzelle in einem Verbund von mehreren Stadtzellen. Ich möchte also nicht die gesamten Datenbankinhalte der DB Stadtzellen, sondern nur die Einträge des selektieren Features.

In QGIS ist es möglich den aktivierten Layer anzusprechen, das ist aber eben die gesamte DB. Gibt es eine Möglichkeit nur den selektieren Bereich anzusprechen und die Datenbankeinträge hierfür auszulesen?

Grüße
Sven
deets

Ich glaube, fuer solche Fragen ist dieses Forum hier nicht geeignet. Das ist zu speziell auf die API dieser Software gemuenzt. Da solltest du lieber spezialisierte Foren bzw. die API-Doku befragen. Wenn du Probleme hast, die im Python-Syntax/Semantik-Bereich liegen, dann kann man dir hier weiterhelfen.
sven h.
User
Beiträge: 2
Registriert: Montag 6. August 2012, 10:18

Ich habe es herausgefunden... auch wenn das hier scheinbar das falsche Forum ist, möchte ich die Lösung trotzdem präsentieren. Vllt. verirrt sich hier ja mal ein QGIS Nutzer hin und hat dieselbe Frage :wink: .

Lösung:

Code: Alles auswählen

layer = qgis.utils.iface.activeLayer()
selected_features = layer.selectedFeatures()
for i in selected_features:
    attrs = i.attributeMap()
    for (k,attr) in attrs.iteritems():
        print "%d: %s" % (k, attr.toString())
Mit diesem Code werden alle Attributwerte des selektierten Features erfasst und ausgegeben.

Grüße
Zuletzt geändert von Anonymous am Montag 6. August 2012, 15:02, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Code-Tags gesetzt.
Antworten