[QGIS-it-user] gestione visualizzazione testi

Buongiorno
ho il seguente problema: devo nascondere alcune parti di un disegno con una maschera costituita da uno shp poligonale rettangolare bianco; il problema consiste nel fatto che questo shp nonostante sia nella posizione più alta nell’elenco layer non mi copre uno shp sottostante di testi nè tantomeno le etichette di un altro shp poligonale del quale però copre le geometrie. Qualcuno saprebbe indicarmi come fare affinchè lo shp poligonale riesca a nascondere tutto, testi compresi? Grazie anticipatamente a chi vorrà aiutarmi… ieri ho perso due ore di lavoro e stamattina altre due senza arrivare a una soluzione
grazie mille

Ciao,

con una ricerca veloce ho trovato questo argomento discusso e, sembra, risolto qui: https://gis.stackexchange.com/questions/128195/how-to-mask-labels-in-qgis-using-an-inverted-polygon

Ale

···

On 30/10/18 11:32, Roberta Ciccarelli wrote:

Buongiorno
ho il seguente problema: devo nascondere alcune parti di un disegno con una maschera costituita da uno shp poligonale rettangolare bianco; il problema consiste nel fatto che questo shp nonostante sia nella posizione più alta nell’elenco layer non mi copre uno shp sottostante di testi nè tantomeno le etichette di un altro shp poligonale del quale però copre le geometrie. Qualcuno saprebbe indicarmi come fare affinchè lo shp poligonale riesca a nascondere tutto, testi compresi? Grazie anticipatamente a chi vorrà aiutarmi… ieri ho perso due ore di lavoro e stamattina altre due senza arrivare a una soluzione
grazie mille

_______________________________________________
QGIS-it-user mailing list
[QGIS-it-user@lists.osgeo.org](mailto:QGIS-it-user@lists.osgeo.org)
[https://lists.osgeo.org/mailman/listinfo/qgis-it-user](https://lists.osgeo.org/mailman/listinfo/qgis-it-user)

Alessandro Sarretta

skype/twitter: alesarrett
Web: ilsarrett.wordpress.com

Research information:

Roberta Ciccarelli wrote

Buongiorno
ho il seguente problema: devo nascondere alcune parti di un disegno con
una
maschera costituita da uno shp poligonale rettangolare bianco; il problema
consiste nel fatto che questo shp nonostante sia nella posizione più alta
nell'elenco layer non mi copre uno shp sottostante di testi nè tantomeno
le
etichette di un altro shp poligonale del quale però copre le geometrie.
Qualcuno saprebbe indicarmi come fare affinchè lo shp poligonale riesca a
nascondere tutto, testi compresi? Grazie anticipatamente a chi vorrà
aiutarmi... ieri ho perso due ore di lavoro e stamattina altre due senza
arrivare a una soluzione
grazie mille

Ciao Roberta. Personalmente evito sempre, quando possibile, di usare plugin.
Intanto ti dico che è possibile nascondere le etichette di layer che sono in
relazione spaziale con altri.
Io uso molto il calcolatore di campi e il costruttore di espressioni, ti
consiglio di guardare #HfcQGIS
http://hfcqgis.opendatasicilia.it/it/latest/
Come fare:
Supponiamo di avere – nell’ordine – due layer: regioni e province istat ed
etichetti le province;
anche se province è il layer che sta sotto, le etichette si vedranno.
Prova:
vai sulle proprietà del layer province, etichette, ultima scheda –
visulaizzazione – opzioni etichette –> mostra etichette: qui devi utilizzare
la sovrascrittura definita dai dati; vai su modifica e incolla questa
espressione:

not aggregate(‘regioni’, ‘count’, ‘pk_uid’, intersects ($geometry,
point_on_surface( geometry(@parent))))

questa espressione darà sempre 1 e quindi non mostrerà nessuna etichetta del
layer province;
ulteriore prove del nove:
fai un filtro sul layer regioni in modo da visualizzar solo la Sicilia
(“COD_REG” = 19); cosi facendo vedrai le etichetto il tutta italia tranne la
Sicilia.

Questa espressione deve utilizzarla per ogni layer che sta sotto il layer
regioni.

saluti

-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html

Le etichette possono essere nascoste anche con un trucchetto sulla dimensione del testo e se lo si vuole fare solo su una sigola mappa e/o solo per una singola geometria.
Bisogna innanzitutto assegnare un id alla mappa su cui si vogliono nascondere delle etichette e poi usare la sovrascrittura definita dai dati sulla dimensione del testo dell’etichetta.
esempio
if ( ( @map_id = ‘noFeature_x’ AND “campo_Feature” = ‘x’),0 , @value))

(x non nel senso di coordinata, ma di variabile generica)

Martina

Il giorno mar 30 ott 2018 alle ore 15:14 Totò <pigrecoinfinito@gmail.com> ha scritto:

Roberta Ciccarelli wrote

Buongiorno
ho il seguente problema: devo nascondere alcune parti di un disegno con
una
maschera costituita da uno shp poligonale rettangolare bianco; il problema
consiste nel fatto che questo shp nonostante sia nella posizione più alta
nell’elenco layer non mi copre uno shp sottostante di testi nè tantomeno
le
etichette di un altro shp poligonale del quale però copre le geometrie.
Qualcuno saprebbe indicarmi come fare affinchè lo shp poligonale riesca a
nascondere tutto, testi compresi? Grazie anticipatamente a chi vorrà
aiutarmi… ieri ho perso due ore di lavoro e stamattina altre due senza
arrivare a una soluzione
grazie mille

Ciao Roberta. Personalmente evito sempre, quando possibile, di usare plugin.
Intanto ti dico che è possibile nascondere le etichette di layer che sono in
relazione spaziale con altri.
Io uso molto il calcolatore di campi e il costruttore di espressioni, ti
consiglio di guardare #HfcQGIS
http://hfcqgis.opendatasicilia.it/it/latest/
Come fare:
Supponiamo di avere – nell’ordine – due layer: regioni e province istat ed
etichetti le province;
anche se province è il layer che sta sotto, le etichette si vedranno.
Prova:
vai sulle proprietà del layer province, etichette, ultima scheda –
visulaizzazione – opzioni etichette –> mostra etichette: qui devi utilizzare
la sovrascrittura definita dai dati; vai su modifica e incolla questa
espressione:

not aggregate(‘regioni’, ‘count’, ‘pk_uid’, intersects ($geometry,
point_on_surface( geometry(@parent))))

questa espressione darà sempre 1 e quindi non mostrerà nessuna etichetta del
layer province;
ulteriore prove del nove:
fai un filtro sul layer regioni in modo da visualizzar solo la Sicilia
(“COD_REG” = 19); cosi facendo vedrai le etichetto il tutta italia tranne la
Sicilia.

Questa espressione deve utilizzarla per ogni layer che sta sotto il layer
regioni.

saluti


https://pigrecoinfinito.wordpress.com/

Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html


QGIS-it-user mailing list
QGIS-it-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

Purtroppo i metodi proposti si basano inevitabilmente sulla geometria e non sul testo. (essendo un gis non è possibile fare altrimenti). per cui capita che un punto sia a cavallo e che il testo finisca fuori mappa per un pezzo soltanto pur essendo la geometria interna all’area.

A tal proposito vi chiedo se qualcuno di voi sa se è possibile estrarre il rettangolo di ingombro del testo e trasformarlo in una geometria… sarebbe utilissimo.

Segui i consigli che ti hanno dato prima, se ci sono ancora etichette che spuntano fuori puoi risolvere così:
stampi due carte, una con le etichette e una muta (senza testi). le due carte devono essere identiche. Le porti in gimp o altri editor di immagini e le sovrapponi come livelli tenendo il livello etichettato sopra. poi cancelli le etichette che non vuoi vedere. infine salvi un unica immagine.

è un po’ laborioso e sorpatutto non automatizzabile ma se cerchi un risultato grafico molto buono così puoi ottenerlo.

saluti

···

Sergio Gollino

Questo messaggio, comprensivo di eventuali allegati, è ad uso esclusivo del destinatario e potrebbe contenere informazioni riservate; se è stato recapitato per errore ci scusiamo per l’accaduto e Vi invitiamo cortesemente a darcene notizia provvedendo alla sua distruzione.

Vi ricordiamo che la diffusione, l’utilizzo e/o la conservazione dei dati ricevuti per errore costituiscono violazione alle disposizioni del D.Lgs. n. 196/2003 “Codice in materia di protezione dei dati personali”.