Non tutti sanno che SpatiaLite è un ottimo Spatial DBMS che permette di risolvere qualsiasi problema di spatial processing.
Vediamo come risolvere il seguente problema:
dato uno shapefile lineare (con determinate caratteristiche), trasformarlo in poligono:

- importo lo SHP “siciliano” nella tavola “ambiti_reg”;
- eseguo la Polygonize in forma aggregata:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CREATE TABLE aggr_polyg (id INTEGER PRIMARY KEY); | |
SELECT AddGeometryColumn('aggr_polyg', 'geom', 3004, 'MULTIPOLYGON', 'XY'); | |
INSERT INTO aggr_polyg | |
SELECT NULL, ST_Polygonize(geometry) FROM ambiti_reg; |
ultimo passaggio: ho usato la ElementaryGeometries per “sciogliere” tutti i poligoni elementari.

FAVOLOSO!!!
Note finali: l’uso di un database, con la relativa estensione spaziale, semplifica di molto alcuni processi, come quello esposto sopra, ma occorrono basi SOLIDE di SQL!!!
segnalo per chi non segue la mailing list ufficiale:
– https://groups.google.com/d/msg/spatialite-users/RZPDuFfPhzs/nl0C0xzwAgAJ
– https://groups.google.com/d/msg/spatialite-users/OsaY7kJTLw4/zolyjMgPAwAJ
Mi sembra di grande interesse, a breve ci sarà il rilascio di spatialite_gui NEXT GENERATION cioè la versione 5, nel frattempo è possibile fare dei test.
Buon lavoro e grazie A. Furieri
Grazie totò,
Un chiarimento forse un po’ off topic:
Come fare per salvare le relazioni tra tabelle di vettori Spatialite?
Parto da vettori spatialite, costruisco relazioni nel ‘ layers pannel’, ma poi non le trovo più chiudendo e riaprendo lo spatialite.
Grazie
Cr
"Mi piace"Piace a 1 persona
Le relazioni tra tabelle di un database spatialite vanno definite a livello di ‘creazione’ delle tabelle, cioè quando definisci le tabelle con CREATE TABLE ….
FOREIGN KEY (“pk_uid”) REFERENCES “nomeTabella” (“pk_uid”)
"Mi piace""Mi piace"