[Python] Rasterizzare un layer vettoriale usando la libreria GDAL

Maurizio Minissale minimauro a gmail.com
Mar 15 Gen 2013 15:54:36 CET


Grazie innanzitutto per la risposta Riccardo,

effettivamente mi sto basando su quanto riportato nel link che mi hai
postato
.
Praticamente ho eseguito le operazioni riportate nella risposta di
stackoverflow con le modifiche del mio caso specifico (aggiungendo il campo
'Index' allo shp).
Il tuo <quoto: "you have to make the source and destination extents match
or everything is clipped out."> potrebbe essere la risposta...infatti il
risultato da me ottenuto non coincide con il DEM target,
ma piuttosto con gli extents del layer vettoriale, che passo come
nell'esempio da te citato.

Come suggerisci di procedere?

Maurizio


Il giorno 15 gennaio 2013 15:05, <python-request a lists.python.it> ha
scritto:

> Invia le richieste di iscrizione alla lista Python all'indirizzo
>         python a lists.python.it
>
> Per iscriverti o cancellarti attraverso il web, visita
>         http://lists.python.it/mailman/listinfo/python
> oppure, via email, manda un messaggio con oggetto `help' all'indirizzo
>         python-request a lists.python.it
>
> Puoi contattare la persona che gestisce la lista all'indirizzo
>         python-owner a lists.python.it
>
> Se rispondi a questo messaggio, per favore edita la linea dell'oggetto
> in modo che sia più utile di un semplice "Re: Contenuti del digest
> della lista Python..."
>
>
> Argomenti del Giorno:
>
>    1. Re: Rasterizzare un layer vettoriale usando la libreria   GDAL
>       (Riccardo Lemmi)
>    2. [OT] Trello (Giovanni Porcari)
>    3. [django] max_age cache control dinamico (Andrea Ambu)
>    4. Re: [django] max_age cache control dinamico (Marco Beri)
>    5. Re: [django] max_age cache control dinamico (Manlio Perillo)
>    6. Problema avvio python (Lorenzo Macchiavelli)
>    7. Documentazione (Michele Gatti)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 15 Jan 2013 12:11:15 +0100
> From: Riccardo Lemmi <riccardo a reflab.com>
> To: python a lists.python.it
> Subject: Re: [Python] Rasterizzare un layer vettoriale usando la
>         libreria        GDAL
> Message-ID: <kd3dgh$m3c$1 a ger.gmane.org>
> Content-Type: text/plain; charset="UTF-8"
>
> Maurizio Minissale wrote:
>
> > Ciao a tutti,
> >
> > quello che sto cercando di fare è ottenere un layer raster partendo da
> > un vettoriale.
> > Più precisamente ho un vettoriale contenente poligoni e vorrei
> > rasterizzare l'informazione di uno specifico campo, ovvero il campo
> > 'Index' (che ho aggiunto al layer vettoriale originale) contenente
> > valori interi compresi tra 0 e 9.
> >
> > Ho utilizzato l'istruzione:
> >
> > err = gdal.RasterizeLayer(target_ds, (3,2,1), source_layer,
> > burn_values=(0,0,0), options=["ATTRIBUTE= Index"])
> >
> > che effettua la rasterizzazione partendo da un DEM (target_ds) target,
> > ma mi ritrovo una matrice piena di 0 e non i valori del campo.
> >
> > Qualcuno ha qualche suggerimento in merito?
> > Purtroppo la documentazione a riguardo non è molto chiara...
> >
> > Grazie in anticipo,
> > Maurizio.
>
> Questo potrebbe rispondere in parte alla tua domanda:
>
>   http://stackoverflow.com/questions/2220749/rasterizing-a-gdal-layer
>
> quoto: "you have to make the source and destination extents match or
> everything is clipped out."
>
> Sul canale irc #gdal ti possono dare una indicazione migliore sulle cose
> da controllare.
> --
>                                        Riccardo Lemmi
>
>
>
> ------------------------------
>
> Message: 2
> Date: Tue, 15 Jan 2013 12:23:29 +0100
> From: Giovanni Porcari <giovanni.porcari a softwell.it>
> To: python a lists.python.it
> Subject: [Python] [OT] Trello
> Message-ID: <1FAFD885-EC07-4D44-BAF8-A35FC896D267 a softwell.it>
> Content-Type: text/plain; charset=iso-8859-1
>
> Ho da poco conosciuto Trello (www.trello.com) e me ne sono innamorato.
> Per gestire progetti complessi o anche solo per organizzarsi la vita
> è una meraviglia. Il fatto che sia gratuito lo rende perfetto.
>
>
> Un grazie a Giovanni Bajo che me lo ha fatto conoscere.
>
>
> G
>
> ------------------------------
>
> Message: 3
> Date: Tue, 15 Jan 2013 14:23:37 +0100
> From: Andrea Ambu <andreambu a gmail.com>
> To: Discussioni generali sul linguaggio Python
>         <python a lists.python.it>
> Subject: [Python] [django] max_age cache control dinamico
> Message-ID:
>         <
> CAFCbtovRKo+X2-Ry2vrwjr_CzVznP9cCCLqY8TxkCCL5j8SqAg a mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Ciao!
>
> Dunque si puo` facilmente controllare la max_age per una view cosi`:
>
> """""""""""
> from django.views.decorators.cache import cache_control
>
> @cache_control(max_age=3600)
> def my_view(request):
>     # ...
>
> """""""""""
>
> Ma se volessi che il valore di max_age venga deciso _dentro_ my_view come
> posso fare?
>
> Per esempio:
> """""""""""
> def my_view(request):
>     if is_good_to_keep_in_cache_for_a_bit(request):
>         # set max_age to 36000
>     else:
>         # set max_age to 42
>     # ...
> """""""""""
>
> Cheers,
> Andrea
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <
> http://lists.python.it/pipermail/python/attachments/20130115/3dc0a2ed/attachment-0001.html
> >
>
> ------------------------------
>
> Message: 4
> Date: Tue, 15 Jan 2013 14:40:50 +0100
> From: Marco Beri <marcoberi a gmail.com>
> To: Andrea Ambu <andreambu a gmail.com>,  Discussioni generali sul
>         linguaggio Python <python a lists.python.it>
> Subject: Re: [Python] [django] max_age cache control dinamico
> Message-ID:
>         <CAN1J36jHAW4x-kB=
> Lu2FR_9yAemyCNiOzzu33iY41UcaFvPNng a mail.gmail.com>
> Content-Type: text/plain; charset="utf-8"
>
> On Tue, Jan 15, 2013 at 2:23 PM, Andrea Ambu <andreambu a gmail.com> wrote:
>
> > Ciao!
> > Dunque si puo` facilmente controllare la max_age per una view cosi`:
> >
> > """""""""""
> > from django.views.decorators.cache import cache_control
> >
> > @cache_control(max_age=3600)
> > def my_view(request):
> >     # ...
> >
> > """""""""""
> >
> > Ma se volessi che il valore di max_age venga deciso _dentro_ my_view come
> > posso fare?
> >
> > Per esempio:
> > """""""""""
> > def my_view(request):
> >     if is_good_to_keep_in_cache_for_a_bit(request):
> >         # set max_age to 36000
> >     else:
> >         # set max_age to 42
> >     # ...
> > """""""""""
> >
>
> Boh, potresti importare patch_cache_control da django.utils.cache.py e
> fare:
>
>     response = patch_cache_control(response, max_age=<quello che vuoi>)
>
> Oppure provare a passare una property come valore di max_age.
>
> Entrambe idee non provate: lascio al lettore l'onere della prova :-)
>
> Ciao.
> Marco.
>
> --
> http://beri.it/ - Un blog
> http://beri.it/i-miei-libri/ - Qualche libro
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <
> http://lists.python.it/pipermail/python/attachments/20130115/94c55c0b/attachment-0001.html
> >
>
> ------------------------------
>
> Message: 5
> Date: Tue, 15 Jan 2013 14:46:14 +0100
> From: Manlio Perillo <manlio.perillo a gmail.com>
> To: python a lists.python.it
> Subject: Re: [Python] [django] max_age cache control dinamico
> Message-ID: <50F55DA6.6090806 a gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Il 15/01/2013 14:23, Andrea Ambu ha scritto:
> > Ciao!
> >
> > Dunque si puo` facilmente controllare la max_age per una view cosi`:
> >
> > """""""""""
> > from django.views.decorators.cache import cache_control
> >
> > @cache_control(max_age=3600)
> > def my_view(request):
> >     # ...
> >
> > """""""""""
> >
> > Ma se volessi che il valore di max_age venga deciso _dentro_ my_view
> > come posso fare?
> >
>
> Dovresti leggere la specifica del protocollo HTTP, se vuoi sviluppare
> applicazioni web:
> http://tools.ietf.org/html/rfc2616#section-14.9
>
> Mi aspetto (ed è così) che il middleware di Django onori l'header
> Cache-Control, magari (ma non è così) con una estensione per limitare il
> caching internamente (e non inviare l'header al client).
>
> Nel dubbio basta leggere il codice sorgente:
> django/views/decorators/cache.py
> e
> django/utils/cache.py
>
> > Per esempio:
> > """""""""""
> > def my_view(request):
> >     if is_good_to_keep_in_cache_for_a_bit(request):
>           request['Cache-Control'] = 'max-age=3600'
> >         # set max_age to 36000
> >     else:
> >         # set max_age to 42
>           request['Cache-Control'] = 'max-age=42'
> >     # ...
> > """""""""""
> >
>
> Ciao  Manlio
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iEYEARECAAYFAlD1XaYACgkQscQJ24LbaUSkBgCdGpfyolXjBbyVcQsoK4lpG1MU
> x0oAn0kWgfUSCjNyrCSltZf9oeYAWtZl
> =PQeC
> -----END PGP SIGNATURE-----
>
>
> ------------------------------
>
> Message: 6
> Date: Tue, 15 Jan 2013 15:00:42 +0100
> From: Lorenzo Macchiavelli <lmacchiavelli a gmail.com>
> To: Discussioni generali sul linguaggio Python
>         <python a lists.python.it>
> Subject: [Python] Problema avvio python
> Message-ID:
>         <CAC+hpxWN04hbahQcPX=
> RU2oTurOWaX6pN-vtJcn+p_Gmh2mqUw a mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Ciao a tutti,
> sul mio pc utilizzo py 2.7 Ho installato la versione 3.3.0,
> ora quando cerco di avviare o la linea di comando o idle
> su entrambe le versioni parte per un'istante e si chiude senza dare nessun
> messaggio di errore..
>
> qualcuno ha avuto il mio stesso problema??
>
>
> Lorenzo Macchiavelli
>
> web designer
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <
> http://lists.python.it/pipermail/python/attachments/20130115/d07ce734/attachment-0001.html
> >
>
> ------------------------------
>
> Message: 7
> Date: Tue, 15 Jan 2013 15:05:10 +0100
> From: Michele Gatti <mgsoluzioni a gmail.com>
> To: Discussioni generali sul linguaggio Python
>         <Python a lists.python.it>
> Subject: [Python] Documentazione
> Message-ID:
>         <
> CAOvJdBvB7_CNHPmFWPUzqfVfJzZQbm+6kc_x1nVbuCbO27N3Ng a mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Ciao a tutti, avrei bisogno di recuperare la documentazione dei moduli
> della libreria standard di python a runtime
> Come posso fare?
>
>
>   [image: logo]
> *Michele Gatti*
> *"Per imparare un nuovo linguaggio di programmazione ci vuole un sacco di
> lavoro, e le persone non imparano Python perché questo permetterà loro di
> avere un lavoro, ma perché amano genuinamente programmare e non sono
> soddisfatte con i linguaggi che già conoscono."*
>   [image: Flickr] <http://www.flickr.com/photos/gmikele/> [image:
> LinkedIn]<http://it.linkedin.com/in/michelegatti> [image:
> Tumblr] <http://tryexcept.tumblr.com/> [image:
> pinterest]<http://pinterest.com/gmikele/>
>  Get a signature like this:
> <
> http://r1.wisestamp.com/r/landing?promo=29&dest=http%3A%2F%2Fwww.wisestamp.com%2Femail-install%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_campaign%3Dpromo_29
> >
> Click
> here!<
> http://r1.wisestamp.com/r/landing?promo=29&dest=http%3A%2F%2Fwww.wisestamp.com%2Femail-install%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_campaign%3Dpromo_29
> >
> -------------- parte successiva --------------
> Un allegato HTML è stato rimosso...
> URL: <
> http://lists.python.it/pipermail/python/attachments/20130115/8fe96223/attachment.html
> >
>
> ------------------------------
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
>
> Fine di Digest di Python, Volume 83, Numero 14
> **********************************************
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130115/a331c13c/attachment-0001.html>


Maggiori informazioni sulla lista Python