[Gfoss] Spatial Join con SpatiaLite

Massimiliano Moraca massimilianomoraca a gmail.com
Dom 12 Nov 2017 11:14:00 CET


Buongiorno e buona domenica a tutti.
Sto provando uno spatial join sfruttando un buffer a 250 m da un punto, ma
non riesco a capire perchè non funziona.

Come dato di base sto sfruttando le celle censuarie ISTAT che potete
scaricare da qui
<http://www.istat.it/storage/cartografia/basi_territoriali/WGS_84_UTM/2011/R15_11_WGS84.zip>,
le ho chiamate *test_celle*.  Poi c'è un punto che ha come attributo il
solo ID e di cui faccio(vorrei fare) un buffer a 250m.
Il tutto voglio farlo confluire in una view chiamata *spatial_join*.
Inserisco il codice che ho usato:

> CREATE VIEW spatial_join AS
>
> SELECT *
>
> FROM
>
> test_celle AS target,
>
> (SELECT ST_BUFFER(geom, 250) AS geom
>
> FROM input) AS buffer
>
> WHERE ST_CONTAINS (target.geom, buffer.geom)
>
>
Per aggirare il problema volevo eseguire lo spatial_join in QGIS avendo
preventivamente creato una view con il buffer a 250m. Usando questa
sintassi in un virtual layer:

> SELECT st_buffer(geometry, 250)
>
>  FROM input
>
> ottengo correttamente un buffer dinamico ma in SpatiaLite ottengo invece
un vettore puntuale il cui punto non è nemmeno visibile in QGIS(quando lo
carico in QGIS mi dice che è un vettore MULTIPOINT).

Dove sbaglio?

In allegato c'è uno screenshot; come vedete tutti i field delel celle
censuarie sembrano correttamente importati ma se voglio visualizzare la
view non ho risultati.
____________

Massimiliano Moraca <https://www.facebook.com/massimilianomoraca/>


Maggiori informazioni sulla lista Gfoss