[QGIS-it-user] Etichette "fuori campo" dalla tavola in stampa

G. Allegri giohappy a gmail.com
Mer 11 Ott 2017 23:48:40 PDT


Marco, è esattamente la funzioncina che proponevo. Purtroppo non ho modo di
testarla oggi, ma vedrò se trovo qualche minuto in tarda serata.

giovanni

Il 12 ott 2017 08:26, "Marco Spaziani" <spaziani.marco a gmail.com> ha
scritto:

> Il suggerimento di Allegri mi ha acceso un'altra lampadina, ma chiedo a
> voi di verificarla perchè va oltre le mie capacità.
> Secondo voi, tramite le potenti funzioni di Calcolatore di campo, è
> possibile in Prorietà --> Etichetta impostare una funzioncina (regola) per
> dire a Qgis che le etichette me le deve posizionare sempre e solo entro il
> perimetro di una determinata bbox? (ove la bbox in questione, ovviamente, è
> la feature del layer di copertura della tavola Atlas che sto per stampare
> in quel momento)
>
> Il giorno 11 ottobre 2017 23:06, G. Allegri <giohappy a gmail.com> ha
> scritto:
>
>> Sarei curioso di provare a definire il posizionamento dell'etichetta
>> tramite espressione, probabilmente con l'appoggio di una funzioncina custom:
>>
>> Assumendo la feature di ritaglio rettangolare:
>>
>> - calcolo distanza punto <-> bordo feature dell'atlante
>> - calcolo distanza (con segno) punto <-> centro della feature
>> - in base a questi due valori seleziono il posizionamento dell'etichetta
>> relativa al punto
>>
>> Così sono sicuro che l'etichette saranno posizionate sempre all'interno
>> dell'area di ritaglio.
>>
>> giovanni
>>
>> Il 11 ott 2017 22:17, "Marco Spaziani" <spaziani.marco a gmail.com> ha
>> scritto:
>>
>>> La tua "dritta" (come al solito) funziona, però bisogna tematizzare con
>>> la stessa stringa due volte, una in Proprietà --> Etichetta --> Mostra
>>> etichetta (e si spengono le etichette poste all'esterno dell'elemento di
>>> copertura ...ma continuano a vedersi i punti non etichettati) e un'altra in
>>> Proprietà --> Simbologia --> Abilita Layer ...e si spengono anche i punti
>>> oltre che alle etichette posti esternamente all'elemento e quindi restano
>>> visibili i soli punti e le sole etichette interne all'elemento di
>>> copertura. Grazie.
>>>
>>> Il giorno 11 ottobre 2017 19:25, Marco Spaziani <
>>> spaziani.marco a gmail.com> ha scritto:
>>>
>>>> Se ho capito la logica del tuo suggerimento, la tematizzazione dovrebbe
>>>> servire, più che a far vedere i punti posti entro la feature rettangolare
>>>> del tassello del mosaico layer di copertura, (e questo già lo farebbe
>>>> egregiamente di suo Atlas), a NON far vedere i punti (e le eichette) poste
>>>> al di fuori di questo tassello quando vado ad ampliare la "visuale" di un
>>>> 10-15% per vedere le etichette "fuori campo" dei punti interni al tassello
>>>> ma posti adiacenti al suo bordo. Si, in teoria dovrebbe funzionare. Il
>>>> problema è che il solo pensiero di ampliare la visuale di un 10-15% un po
>>>> mi spaventa perchè, se decidi di continuare alla scala che mi sono imposto
>>>> devo aumentare le dimensioni della "mappa" e quindi devo rieditare
>>>> risquadrare e reimpostare tutto il foglio oppure, lascio il foglio così
>>>> com'è ma, aumentando la visuale del 10-15% automaticamente mi cambia la
>>>> scala della mappa. Ci penserò dopo cena. Grazie.
>>>>
>>>> Il 11 Ott 2017 6:15 PM, "Totò" <pigrecoinfinito a gmail.com> ha scritto:
>>>>
>>>>> Marco wrote
>>>>> > ...P.S. ovviamente potrei risolvere "a manina", punto per punto, con
>>>>> > EasyCustomLabeling ma, a parte che non mi sembra elegante come
>>>>> soluzione
>>>>> > (pur essendo EasyCustomLabeling un ottimo plugin utile per altre
>>>>> > situazioni
>>>>> > e che ho usato con in passato con risultati eccellenti), in più non
>>>>> posso
>>>>> > escludere che vi siano altri, punti oltre ai 4 che ho individuato,
>>>>> che mi
>>>>> > siano sfuggiti e per i quali quindi permane lo stesso problema di
>>>>> > "etichetta fuori campo di stampa". Quindi preferirei una soluzione
>>>>> > "globale" che agisca su tutta la popolazione di punti del layer, a
>>>>> > prescindere se io me ne accorga che c'è un problema o meno
>>>>> >
>>>>> > Il giorno 11 ottobre 2017 10:19, Marco Spaziani <
>>>>>
>>>>> > spaziani.marco@
>>>>>
>>>>> > >
>>>>> > ha scritto:
>>>>> >
>>>>> >> Ho un problema in apparenza banale ma antipaticissimo, brutto a
>>>>> vedersi e
>>>>> >> che non riesco a risolvere in nessun modo (...e non è una cartella
>>>>> di
>>>>> >> Equitalia).
>>>>> >> Ho generato un Atlante di 130 pagine in formato A3 di un territorio
>>>>> molto
>>>>> >> vasto e nel quale è riportato un layer di punti (all'incirca 350
>>>>> punti)
>>>>> >> disseminati variamente su tutto questo territorio.
>>>>> >> Per il 99% va tutto bene.
>>>>> >> In alcune tavole dell'Atlante però, capita che alcuni punti vadano a
>>>>> >> cadere proprio in adiacenza del bordo della tavola (alias, in
>>>>> adiacenza
>>>>> >> del
>>>>> >> bordo del rettangolo del layer di copertura dell'Atlante).
>>>>> >> Ora, il punto, ovviamente, a stampa si vede e viene stampato ma
>>>>> >> l'etichetta associata a questi punti (si tratta, in tutto di 4
>>>>> punti su
>>>>> >> oltre 350), poichè è spostata di qualche millimetro rispetto al
>>>>> punto,
>>>>> >> non
>>>>> >> si vede perchè va fuori campo di stampa, cioè capita fuori l'area
>>>>> del
>>>>> >> rettangolo del layer di copertura dell'Atlanteche in quel momento
>>>>> sta
>>>>> >> andando a stampa.
>>>>> >> Esiste un comando "forzatura" per imporre al compositore di stampe
>>>>> di far
>>>>> >> sempre, comunque e in ogni caso far ricadere entro la tavola tutte
>>>>> le
>>>>> >> etichette associate ai punti ricadenti nella tavola?
>>>>> >> Qualcosa del genere esiste per i poligoni e le linee, perché
>>>>> ricordo bene
>>>>> >> che avendo avuto a che fare con edifici (poligoni) e linee (strade)
>>>>> c'era
>>>>> >> un comando tramite il quale la posizione dell'etichetta veniva
>>>>> "forzata",
>>>>> >> anche ruotandola o capovolgendola, in modo che comunque fosse però
>>>>> sempre
>>>>> >> visibile nella tavola da stampare ...ma un comando analogo per i
>>>>> punti
>>>>> >> non
>>>>> >> lo trovo.
>>>>> >>
>>>>>
>>>>> La cosa più semplice che potresti provare è tematizzare i punti con una
>>>>> regola ( intersects( $geometry, @atlas_geometry  ) =1), questa ti fa
>>>>> visualizzare solo i punti che intersecano con la feature corrente
>>>>> dell'atlante senza vedere altri punti esterni, poi basta dare un
>>>>> 10/15% al
>>>>> 'margine attorno all'elemento'.
>>>>> prova e facci sapere
>>>>>
>>>>> saluti
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -----
>>>>> https://pigrecoinfinito.wordpress.com/
>>>>> --
>>>>> Sent from: http://osgeo-org.1560.x6.nabbl
>>>>> e.com/QGIS-Italian-User-f5250612.html
>>>>> _______________________________________________
>>>>> QGIS-it-user mailing list
>>>>> QGIS-it-user a lists.osgeo.org
>>>>> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
>>>>>
>>>>
>>>
>>> _______________________________________________
>>> QGIS-it-user mailing list
>>> QGIS-it-user a lists.osgeo.org
>>> https://lists.osgeo.org/mailman/listinfo/qgis-it-user
>>>
>>>
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.osgeo.org/pipermail/qgis-it-user/attachments/20171012/c1f265d7/attachment-0001.html>


Maggiori informazioni sulla lista QGIS-it-user