Etichette "fuori campo" dalla tavola in stampa

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
19 messages Options
Reply | Threaded
Open this post in threaded view
|

Etichette "fuori campo" dalla tavola in stampa

Marco
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.

_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Marco
...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 <[hidden email]> 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.


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Totò
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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Marco
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ò" <[hidden email]> 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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Marco
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 <[hidden email]> 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ò" <[hidden email]> 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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

giohappy
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" <[hidden email]> 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 <[hidden email]> 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ò" <[hidden email]> 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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Marco
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 <[hidden email]> 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" <[hidden email]> 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 <[hidden email]> 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ò" <[hidden email]> 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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user



_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

giohappy
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" <[hidden email]> 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 <[hidden email]> 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" <[hidden email]> 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 <[hidden email]> 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ò" <[hidden email]> 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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user



_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Marco
Se riesci a trovare il tempo per provarci, vedi se è possibile sfruttare direttamente e semplicemente una delle potenti armi di Calcolatore di campo, tipo "intersect bbox". Sarebbe una bella soddisfazione, per noi innamorati delle performance di Qgis, risolvere, sulla base del tuo suggerimento, con un semplice "doppio clic" in Calcolatore di campi piuttosto che dettare e scrivere una regola logica (senza nulla togliere al fascino, alla potenza e alla flessibilità delle regole logiche ma, parlando da consumatore finale, nella routine frettolosa del lavoro quotidiano è preferibile risolvere con un "doppio clic"). Facci sapere.

Il giorno 12 ottobre 2017 08:48, G. Allegri <[hidden email]> ha scritto:
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" <[hidden email]> 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 <[hidden email]> 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" <[hidden email]> 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 <[hidden email]> 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ò" <[hidden email]> 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 &lt;

> spaziani.marco@

> &gt;
> 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.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user




_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Totò
Salve,
è da due giorni che ci lavoro,
ma stamani, visto che il problema è parecchio interessante, ho approfondito
un attimo.

Per adesso condivido una soluzione test (un gist [0]) da utilizzare nelle
etichette, cioè per ogni punto mette il label Alto, basso, destra o Sinistra
rispetto al bordo che li contiene.

ho definito una variabile @dist_bordo (distanza dal bordo) in modo da
attivare l'etichetta solo se verificata.

Appena ho un pò di tempo, descrivo meglio tutta l'espressione; questa deve
essere utilizzata, con le dovute modifiche, nel posizionamento delle
etichette.

[0]https://gist.github.com/pigreco/197df427b3a71a83169ce908d1c8f7d6

a dopo





-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Marco
Grande!!!

Il giorno 12 ottobre 2017 11:22, Totò <[hidden email]> ha scritto:
Salve,
è da due giorni che ci lavoro,
ma stamani, visto che il problema è parecchio interessante, ho approfondito
un attimo.

Per adesso condivido una soluzione test (un gist [0]) da utilizzare nelle
etichette, cioè per ogni punto mette il label Alto, basso, destra o Sinistra
rispetto al bordo che li contiene.

ho definito una variabile @dist_bordo (distanza dal bordo) in modo da
attivare l'etichetta solo se verificata.

Appena ho un pò di tempo, descrivo meglio tutta l'espressione; questa deve
essere utilizzata, con le dovute modifiche, nel posizionamento delle
etichette.

[0]https://gist.github.com/pigreco/197df427b3a71a83169ce908d1c8f7d6

a dopo


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Totò
.. ecco l'espressione da utilizzare nel posizionamento delle etichette -
metodo cartographic- position priority

https://gist.github.com/pigreco/20d41b53625873d8a045ed10e52d5eed



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

giohappy
Bravo Totò, è esattamente quello che avevo in mente ;)

giovanni

Il 12 ott 2017 11:44, "Totò" <[hidden email]> ha scritto:
.. ecco l'espressione da utilizzare nel posizionamento delle etichette -
metodo cartographic- position priority

https://gist.github.com/pigreco/20d41b53625873d8a045ed10e52d5eed



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Totò
giohappy wrote
> Bravo Totò, è esattamente quello che avevo in mente ;)
>
> giovanni

Ho scritto un articolo [0] dove spiego tutto o quasi!!!

Approfitto di Giovanni per chiedere come mai QGIS vuole necessariamente la
funzione boundary( ) nella espressione: shortest_line( $geometry,  
boundary( @atlas_geometry ) ) ) altrimenti non calcola nulla!!!

La mia ipotesi è legata al fatto che la funzione boundary( ) tira fuori una
geometry linestring ed allora il calcolo va a buon fine, invece senza tale
funzione la shortest_line non da esito; è un bug oppure è normale?

Saluti

[0]
https://pigrecoinfinito.wordpress.com/2017/10/12/qgis-dimmi-dove-ti-trovi-e-ti-etichetto-bene/



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

giohappy
È normale che serva il boundary, infatti lo specificavo nei punti dell'idea. Il motivo è semplice: un punto che sta su un poligono ha distanza 0 da quel poligono, mentre ha una distanza >0 dal suo bordo (almeno che non si trovi proprio sul bordo).

giovanni

Il 12 ott 2017 17:13, "Totò" <[hidden email]> ha scritto:
giohappy wrote
> Bravo Totò, è esattamente quello che avevo in mente ;)
>
> giovanni

Ho scritto un articolo [0] dove spiego tutto o quasi!!!

Approfitto di Giovanni per chiedere come mai QGIS vuole necessariamente la
funzione boundary( ) nella espressione: shortest_line( $geometry,
boundary( @atlas_geometry ) ) ) altrimenti non calcola nulla!!!

La mia ipotesi è legata al fatto che la funzione boundary( ) tira fuori una
geometry linestring ed allora il calcolo va a buon fine, invece senza tale
funzione la shortest_line non da esito; è un bug oppure è normale?

Saluti

[0]
https://pigrecoinfinito.wordpress.com/2017/10/12/qgis-dimmi-dove-ti-trovi-e-ti-etichetto-bene/


_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Totò
giohappy wrote
> È normale che serva il boundary, infatti lo specificavo nei punti
> dell'idea. Il motivo è semplice: un punto che sta su un poligono ha
> distanza 0 da quel poligono, mentre ha una distanza >0 dal suo bordo
> (almeno che non si trovi proprio sul bordo).
>
> giovanni

Grazie, lo immaginavo, ma la tua conferma è fondamentale. Grazie!!!

Come scritto nell'articolo, il metodo non è generale ma vale solo per
vettore di copertura rettangolari,
occorrerebbe studiare un metodo generale, per vettori di copertura generici
cioè con bordo frastagliato.

grazie,
saluti



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

giohappy
Per dei bordi generici la cosa si complica non poco, perché si deve calcolare l'offset dell'etichetta (il che non sarebbe di per sé troppo complicato con un po' di python) ma per farlo si deve poter calcolare le dimensioni dell'etichetta, il che dipende come minimo da tipo e dimensioni del font, e dal testo dell'etichetta. Niente d'impossibile se si hanno tutte queste informazioni nel contesto della funzione, ma non so se sia possibile averle.
Mi piacerebbe analizzare la cosa ma lascio a chi ha un po' più di tempo...

giovanni

Il 12 ott 2017 17:31, "Totò" <[hidden email]> ha scritto:
giohappy wrote
> È normale che serva il boundary, infatti lo specificavo nei punti
> dell'idea. Il motivo è semplice: un punto che sta su un poligono ha
> distanza 0 da quel poligono, mentre ha una distanza >0 dal suo bordo
> (almeno che non si trovi proprio sul bordo).
>
> giovanni

Grazie, lo immaginavo, ma la tua conferma è fondamentale. Grazie!!!

Come scritto nell'articolo, il metodo non è generale ma vale solo per
vettore di copertura rettangolari,
occorrerebbe studiare un metodo generale, per vettori di copertura generici
cioè con bordo frastagliato.

grazie,
saluti



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

giohappy
A pensarci bene basterebbe anche qualcosa di più semplice: usare lo stesso metodo della feature rettangolare ma calcolando la distanza dal bbox della feature. Ai fini di una stampa l'importante è che l'etichetta stia dentro l'ingombro della feature dell'atlante...

giovanni

Il 12 ott 2017 17:41, "G. Allegri" <[hidden email]> ha scritto:
Per dei bordi generici la cosa si complica non poco, perché si deve calcolare l'offset dell'etichetta (il che non sarebbe di per sé troppo complicato con un po' di python) ma per farlo si deve poter calcolare le dimensioni dell'etichetta, il che dipende come minimo da tipo e dimensioni del font, e dal testo dell'etichetta. Niente d'impossibile se si hanno tutte queste informazioni nel contesto della funzione, ma non so se sia possibile averle.
Mi piacerebbe analizzare la cosa ma lascio a chi ha un po' più di tempo...

giovanni

Il 12 ott 2017 17:31, "Totò" <[hidden email]> ha scritto:
giohappy wrote
> È normale che serva il boundary, infatti lo specificavo nei punti
> dell'idea. Il motivo è semplice: un punto che sta su un poligono ha
> distanza 0 da quel poligono, mentre ha una distanza >0 dal suo bordo
> (almeno che non si trovi proprio sul bordo).
>
> giovanni

Grazie, lo immaginavo, ma la tua conferma è fondamentale. Grazie!!!

Come scritto nell'articolo, il metodo non è generale ma vale solo per
vettore di copertura rettangolari,
occorrerebbe studiare un metodo generale, per vettori di copertura generici
cioè con bordo frastagliato.

grazie,
saluti



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user

_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user
Reply | Threaded
Open this post in threaded view
|

Re: Etichette "fuori campo" dalla tavola in stampa

Totò
giohappy wrote
> A pensarci bene basterebbe anche qualcosa di più semplice: usare lo stesso
> metodo della feature rettangolare ma calcolando la distanza dal bbox della
> feature. Ai fini di una stampa l'importante è che l'etichetta stia dentro
> l'ingombro della feature dell'atlante...
>
> giovanni

Ho appena fatto una rapida prova,
sembra che il caso generico sia più semplice del caso rettangolare grazie
alla tua osservazione, cioè basti prendere il bbox della feature corrente
dell'atlas...

ecco il gist
https://gist.github.com/pigreco/78dbe36583f958ea19cb9fe8d2102395

saluti



-----
https://pigrecoinfinito.wordpress.com/
--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html
_______________________________________________
QGIS-it-user mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/qgis-it-user