smooth delle isoipse (contour)

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

smooth delle isoipse (contour)

alessandro.giordani
Salve,

utilizzando il modulo contour per creare le isoipse le linee vettoriali sono buone ma con tutti gli spigoli con effetto spezzettato.
Esiste un modo per addolcire gli angoli??

Grazie
Alessandro G.

_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666+40 iscritti al 5.6.2014
Reply | Threaded
Open this post in threaded view
|

Re: smooth delle isoipse (contour)

pcav
Il 20/06/2014 15:28, [hidden email] ha scritto:
> Salve,
>
> utilizzando il modulo contour per creare le isoipse le linee vettoriali sono buone ma
> con tutti gli spigoli con effetto spezzettato.
> Esiste un modo per addolcire gli angoli??

GRASS le produce migliori, e le puo' "allisciare" usando v.generalize

--
Paolo Cavallini - www.faunalia.eu
Corsi QGIS e PostGIS: http://www.faunalia.eu/training.html
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666+40 iscritti al 5.6.2014
Reply | Threaded
Open this post in threaded view
|

Re: smooth delle isoipse (contour)

stefano campus
Administrator
In reply to this post by alessandro.giordani
GRASS: modulo v.generalize

SAGA: line simplification

QGIS: 1) modulo v.generalize di grass via processing
         2) modulo line simplification di saga via processing
         3) vector-->geometry tools-->simplify geometries

s.
Reply | Threaded
Open this post in threaded view
|

Re: smooth delle isoipse (contour)

Sandro Santilli
In reply to this post by alessandro.giordani
On Fri, Jun 20, 2014 at 03:28:23PM +0200, [hidden email] wrote:
> Salve,
>
> utilizzando il modulo contour per creare le isoipse le linee vettoriali sono buone ma con tutti gli spigoli con effetto spezzettato.
> Esiste un modo per addolcire gli angoli??

Prova un paio di offset-curve: prima da un lato, poi dall'altro.
Esempio (con PostGIS 2.0+):

 ALTER TABLE mytable ADD geom_dolce;
 UPDATE mytable SET geom_dolce = ST_OffsetCurve(
  ST_OffsetCurve(geom,2), -- curva di qua
                     -2   -- curva di la !
 );

Buon divertimento !

--strk;
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666+40 iscritti al 5.6.2014
Reply | Threaded
Open this post in threaded view
|

Re: smooth delle isoipse (contour)

Sandro Santilli
On Fri, Jun 20, 2014 at 03:53:50PM +0200, Sandro Santilli wrote:

> On Fri, Jun 20, 2014 at 03:28:23PM +0200, [hidden email] wrote:
> > Salve,
> >
> > utilizzando il modulo contour per creare le isoipse le linee vettoriali sono buone ma con tutti gli spigoli con effetto spezzettato.
> > Esiste un modo per addolcire gli angoli??
>
> Prova un paio di offset-curve: prima da un lato, poi dall'altro.
> Esempio (con PostGIS 2.0+):
>
>  ALTER TABLE mytable ADD geom_dolce;
>  UPDATE mytable SET geom_dolce = ST_OffsetCurve(
>   ST_OffsetCurve(geom,2), -- curva di qua
>                      -2   -- curva di la !
>  );

In effetti non funziona, addolcisci da una parte ma perdi la dolcezza
dall'altra. Meglio segmentare e generalizzare, in effetti (con PostGIS
ST_Segmentize e ST_Simplify).

--strk;
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666+40 iscritti al 5.6.2014
Reply | Threaded
Open this post in threaded view
|

Re: smooth delle isoipse (contour)

Giuliano Curti
Il giorno Fri, 20 Jun 2014 06:50:34 -0700 (PDT)
stefano campus <[hidden email]> ha scritto:

> ......
> QGIS: .......
>          3) vector-->geometry tools-->simplify geometries
                                        ^^^^^^^^

Il giorno Fri, 20 Jun 2014 16:23:01 +0200
Sandro Santilli <[hidden email]> ha scritto:

> On Fri, Jun 20, 2014 at 03:53:50PM +0200, Sandro Santilli wrote:
> > On Fri, Jun 20, 2014 at 03:28:23PM +0200,
> > [hidden email] wrote:
> > > ....
>
> ..... Meglio segmentare e generalizzare, in effetti (con PostGIS
> ST_Segmentize e ST_Simplify).
                  ^^^^^^^^^^^


solo per imparare :-)

il termine simplify in letteratura (v. RDP algorithm) mi sembra usato
in senso opposto, cioè per ridurre il numero di vertici di una
linestring all'essenziale; la creazione di un offset _più dolce_ credo
necessiti del contrario, cioè un numero maggiore di vertici: sbaglio,
forse nel capire la domanda iniziale ?


> --strk;


ciao,
giuliano

_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666+40 iscritti al 5.6.2014
Reply | Threaded
Open this post in threaded view
|

Re: smooth delle isoipse (contour)

Sandro Santilli
On Fri, Jun 20, 2014 at 04:49:40PM +0200, giulianc51 wrote:

> il termine simplify in letteratura (v. RDP algorithm) mi sembra usato
> in senso opposto, cioè per ridurre il numero di vertici di una
> linestring all'essenziale; la creazione di un offset _più dolce_ credo
> necessiti del contrario, cioè un numero maggiore di vertici: sbaglio,
> forse nel capire la domanda iniziale ?

No, non sbagli. Per quello ero partito con l'idea dell'offset curve
(con join circolari). In effetti con un dataset di prova la
generalizzazione di un densificato non ha alcun effetto.

Allora conviene tornare all' OffsetCurve e giocarci un po' di piu'.
Una unione dei due round-trip offset e' un superset del risultato voluto:

  update spezza3 x set g = st_union(
    st_offsetcurve(st_offsetcurve(i.g,-2),-2), -- non e' un typo
    st_offsetcurve(st_offsetcurve(i.g,2),-2)
  ) from spezza0 i;

Il risultato ha le smussature _e_ anche gli angoli.

In effetti si direbbe una funzionalita' mancante :)

--strk;
_______________________________________________
[hidden email]
http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
Questa e' una lista di discussione pubblica aperta a tutti.
I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it.
666+40 iscritti al 5.6.2014