|
|
(Není zobrazeno 49 mezilehlých verzí od stejného uživatele.) |
Řádek 1: |
Řádek 1: |
| [[Image:spatialite-logo.png|175px|right]]
| | {{freegiswiki|SpatiaLite}} |
| Prostorové rozšíření [http://www.gaia-gis.it/spatialite/ SpatiaLite] umožňuje ukládat v databázi [[SQLite]] geoprostorová data - podobně jako např. [[PostGIS]] pro databázový systém [[PostgreSQL]].
| |
| __TOC__
| |
| === Založení databáze ===
| |
| | |
| Nejprve stáhneme inicializační soubor, např.
| |
| | |
| wget http://www.gaia-gis.it/spatialite/init_spatialite-2.3.sql.gz
| |
| gzip -d init_spatialite-2.3.sql.gz
| |
| | |
| Vytvoříme a inicializujeme databázi (metadatové tabulky <tt>geometry_columns</tt> a <tt>spatial_ref_sys</tt>).
| |
| | |
| spatialite gisdb.sqlite < init_spatialite-2.3.sql
| |
| | |
| Na serveru josef
| |
| | |
| spatialite gisdb.sqlite < /usr/local/share/init_spatialite-2.3.sql
| |
| | |
| Nyní je databáze připravena pro práci s geoprostorovými daty.
| |
| | |
| spatialite gisdb.sqlite
| |
|
| |
| spatialite> .tables
| |
| geom_cols_ref_sys geometry_columns spatial_ref_sys
| |
| spatialite> .exit
| |
| | |
| == Import dat ==
| |
| | |
| Pro tento účel můžeme vyexportovat data např. z [[Cvičná databáze PostGIS|cvičné databáze PostGIS]].
| |
| | |
| pgsql2shp pgis_student gis1.obce
| |
| | |
| Data naimportujeme např.
| |
| | |
| spatialite_tool -i -shp obce -d gisdb.sqlite -t obce -c UTF-8 -s 2065 -g the_geom
| |
| | |
| anebo přímo z interpretu SpatiaLite
| |
| | |
| spatialite> .loadshp ./obce obce UTF-8 2065 the_geom
| |
| | |
| Ukázka jednoduchého dotazu
| |
| | |
| <source lang="sql">
| |
| spatialite> SELECT nazev,Area(the_geom)/1e6 AS plocha FROM obce ORDER BY plocha DESC LIMIT 5;
| |
| Praha|496.077202708984
| |
| Hradiště|328.857295861328
| |
| Brdy|259.774799202647
| |
| Libavá|238.31301229512
| |
| Brno|230.03067746875
| |
| </source>
| |
| | |
| === OGR ===
| |
| | |
| Pro import/export dat lze využít i knihovnu [[GDAL/OGR|OGR]], která volitelně SQLite podporuje.
| |
| | |
| Příklad konverze dat z PostGIS do SpatiaLite.
| |
| | |
| ogr2ogr -f SQLite gisdb.sqlite pg:dbname=pgis_student gis1.obce
| |
| | |
| Poznámka: Před importem dat je nutné vložit [[PostGIS#Definice S-JTSK (ESRI:102067)|SRID 102067]] do tabulky 'spatial_ref_sys'.
| |
| | |
| <source lang="sql">
| |
| INSERT into spatial_ref_sys (srid, auth_name, auth_srid, ref_sys_name, proj4text) values
| |
| (9102067, 'esri', 102067, 'S-JTSK', '+proj=krovak +lat_0=49.5 +lon_0=24.83333333333333
| |
| +alpha=30.28813975277778 +k=0.9999 +x_0=0 +y_0=0 +ellps=bessel +units=m +no_defs');
| |
| </source>
| |
| | |
| == Virtuální tabulky ==
| |
| | |
| Příklad přípojení dat ve formátu Shapefile jako virtuální tabulku.
| |
| | |
| <source lang="sql">
| |
| CREATE VIRTUAL TABLE obce USING VirtualShape(obce, UTF-8, 2065);
| |
| </source>
| |
| | |
| == Vizualizace dat v [[QGIS|QGISu]] ==
| |
| | |
| [[QGIS]] nabízí od verze 1.1.0 zásuvný modul pro SpatialLite.
| |
| | |
| [[Image:qgis-spatialite.png|center|frame|Přidání SpatiaLite vrstvy v QGISu (1)]]
| |
| | |
| [[Image:qgis-spatialite-2.png|center|frame|Přidání SpatiaLite vrstvy v QGISu (2)]]
| |
| | |
| Poznámka: V současné době neumožňuje QGIS vizualizovat data připojené jako virtuální tabulky.
| |
| | |
| == Související články ==
| |
| | |
| * [[SQLite]]
| |
| * [[PostGIS]]
| |
| | |
| == Externí odkazy ==
| |
| | |
| * [http://www.gaia-gis.it/spatialite/spatialite-tutorial-2.3.0.html Tutoriál] SpatiaLite (angličtina)
| |
| * [http://www.scribd.com/doc/15063620/Spatialite-CGS-2009 SpatiaLite CGS 2009] by Alex Mandel
| |
| * [http://grass.osgeo.org/wiki/Spatial_SQL Spatial SQL at GRASSWiki]
| |
| | |
| {{Databáze}}
| |
| {{GIS}}
| |
| {{GFOSS}}
| |