[FOSSGIS-Talk] QGIS 3.16.16 / Beschriftungen mit darüber liegendem Polygonlayer überdecken
Nane
russlanderfahrung at gmx.de
Do Okt 5 16:55:02 CEST 2023
Hallo David,
da ich erst heute dazu gekommen bin, mich wieder meinem Problem zu
widmen, melde ich mich erst jetzt zurück. Vielen Dank für Deine Hilfe!
Ich hatte gehofft, es gibt eine Einstellung mit der man einfach die
Darstellungsreihenfolge ändern kann, aber das scheint nicht so zu sein.
Daher funktioniert es wohl nur, wie Du es vorgeschlagen hast, mit einer
regelbasierten Beschriftung. Und die vorgeschlagenen Beschriftungsregeln
funktionieren auch! Ich musste aber etwas grübeln, bis ich den Ausdruck
verstanden habe. Es funktioniert auch mit einem etwas einfacheren
Ausdruck, es ist ein Art Kombination aus Deinem Vorschlag und dem von
Thomas:
overlay_within('mainz_umkreis_ac1e568e_9ef8_44e9_a3d4_9787642e187f',
filter:= "kurz" = 'G') -> grüne Beschriftung**
overlay_within('mainz_umkreis_ac1e568e_9ef8_44e9_a3d4_9787642e187f',
filter:= "kurz" != 'G') -> rote Beschriftung *
*
Viele Grüße und nochmals danke
Nane
Am 30.09.2023 um 16:17 schrieb David Koster:
> Hello again,
>
> ich habe mir die Sache nochmal angeschaut und etwas getestet.
>
> In meinem Beispiel wären die blauen Polygone die Stadtteile und die
> roten Punkte ein gegebener anderer Layer.
> Die Punkte in Stadteil G haben eine andere Beschriftung als der Rest.
>
> Folgende Beschriftungsregeln stehen dahinter:
>
> *if
> (array_to_string(overlay_within('mainz_umkreis_ac1e568e_9ef8_44e9_a3d4_9787642e187f',
> "kurz" = 'G')), "name" ,'')**
> *-> grüne Beschriftung*
> **
> **if
> (array_to_string(overlay_within('mainz_umkreis_ac1e568e_9ef8_44e9_a3d4_9787642e187f',
> "kurz" = 'G')), '',"name")**
> *-> rote Beschriftung *
>
> *mainz_umkreis_ac1e568e_9ef8_44e9_a3d4_9787642e187f ist der
> Stadtteillayer. *
>
> *Vielleicht hilft das etwas weiter. Viel Erfolg!
>
> David
>
>
>
>
>
>
> Am 29.09.2023 um 18:00 schrieb David Koster:
>> Okay, ich glaube ich habe es besser verstanden.
>>
>> Das klingt grundsätzlich nach einer *regelbasierten Beschriftung*,
>> die lässt sich in den Beschriftungseinstellungen auswählen.
>>
>> Dort könnte dann quasi eine Regel für Stadtteil A und eine Regel für
>> den Rest erstellt werden.
>> Wie die Regel genau formuliert sein muss, müsste man sicher genauer
>> angucken. Aber vielleicht führt das zumindest in die richtige Richtung.
>>
>> Schöne Grüße
>> David
>>
>>
>> Am 29.09.2023 um 17:40 schrieb Nane:
>>> Hallo David,
>>>
>>> ich versuche mein Problem besser zu erklären: Angenommen ich habe
>>> Punkt-
>>> und Flächen-Objekte in einer Stadt verteilt und ich beschrifte diese
>>> mit
>>> einer laufenden Nummer. Alle in der gleichen Farbe und Stärke. Darüber
>>> liegt ein Polygonlyayer mit den Stadtteilen. Nun will ich nur den
>>> Stadtteil A betrachten und die restlichen ausblenden, bzw. schwächer
>>> darstellen. Ich nutze die Stadtteile also als eine Art Maske: Ich
>>> stelle
>>> den Stadtteil A nur mit einer Umrisslinie dar (alle dort vorhandenen
>>> Informationen sind gut erkennbar) und die restlichen Stadtteile in weiß
>>> mit leichter Transparenz, so dass die die dort vorhandenen
>>> Informationen
>>> noch leicht durchscheinen, aber stark abgeschwächt sind. Die Label der
>>> Objekte kann ich aber nicht abdecken, bzw, abschwächen, sondern sie
>>> liegen immer als oberstes in der ursprünglichen Farbe und Stärke. Ich
>>> hoffe, mein Problem ist nun etwas verständlicher geworden?
>>>
>>> Viele Grüße
>>> Nane
>>>
>>> Am 29.09.2023 um 17:15 schrieb David Koster:
>>>> Hallo Nane,
>>>>
>>>> in den Beschriftungseinstellungen lässt sich ja die Deckkraft
>>>> einstellen, aber wahrscheinlich meintest du noch mehr.
>>>>
>>>> Ich habe noch nicht genau verstanden wann genau welche Beschriftung
>>>> angezeigt werden soll und wann nicht.
>>>>
>>>> Schöne Grüße
>>>> David
>>>>
>>>>
>>>> Am 29.09.2023 um 16:37 schrieb Nane:
>>>>> Hallo zusammen,
>>>>>
>>>>> ich habe in einem Projekt mehrere Punkt- und Polygon-Layer mit
>>>>> Beschriftung (Label). Darüber, ganz oben in der Layerreihenfolge,
>>>>> liegt
>>>>> ein Polygonlayer, der die Layer mit den Beschriftungen zum Teil
>>>>> überdeckt. Von den unteren Layern sind die Beschriftungen
>>>>> allerdings von
>>>>> allen Objekten als oberste Darstellung zu sehen. Ich würde nun aber
>>>>> gerne nicht nur von dem obersten Layer die darunter liegenden Flächen
>>>>> und Punkte überlagern (bzw. bei transparenter Darstellung
>>>>> abschwächen),
>>>>> sondern auch deren Beschriftungen. Geht das, vielleicht kann mir
>>>>> jemand
>>>>> von Euch auf die Sprünge helfen?
>>>>>
>>>>> Vielen Dank schon mal!
>>>>>
>>>>> Herzliche Grüße
>>>>>
>>>>> Nane
>>>>>
>>>>
>>>
>>
>
Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste