Go to content Go to navigation Go to search

geo-spatial.org: An elegant place for sharing geoKnowledge & geoData

Căutare



RSS / Atom / WMS / WFS


Contact


Lista de discuții / Forum


Publicat cu Textpattern


Comunitatea:

Conferința FOSS4G 2019
Conferința FOSS4G 2018

Importul unui set de date vectorial din format ESRI Shapefile în PostGIS și vizualizarea/interogarea acestuia folosind QGIS, uDig și GeoServer

de Florin Iosub

Publicat la 05 Oct 2009 | Secţiunea: Tutoriale | Categoria: GIS/
Nivel de dificultate:
25.10.2014 Tutorialul de fața folosește o versiunea mai veche a softului prezentat. Va rugăm consultați versiunea actualizată sau contactați autorul.

Introducere

Tutorialul de față își propune prezentarea unor soluții de încărcare, vizualizare, publicare (WMS/WFS) și interogare a unui set de date vectorial din format ESRI Shapefile în PostGIS, folosind aplicații open source.

Pentru acest lucru vom folosi urmatoarele aplicații:

Încărcarea datelor în PostGIS folosind aplicația QGIS

Figura 1.

  • Se pornește aplicația QGIS și se folosește butonul Import Shapefilefiles to PostgreSQL, ca rezultat, deschizându-se o nouă fereastră de unde se va realiza conexiunea către baza de date PostGIS. Dând click pe butonul New din fereastra nou deschisă, se deschide o nouă fereastră unde trebuiesc completate o serie de câmpuri necesare realizari conexiunii. Astfel, în câmpul Name se trece denumirea noii conexiuni create, în cazul de față Județe Romania; în câmpul Host, dacă baza de date este una locală se trece localhost, iar dacă baza de date este pe un alt calculator se trece IP-ul calculatorului respectiv; în câmpul Database se trece denumirea bazei de date create la pasul anterior, în cazul nostru judete, aceasta trebuie să corespundă cu denumirea bazei de date create în PostgreSQL (a se vedea tutorialul Utilizare PostGIS. Partea I: Instalare PostgreSQL + PostGIS); în câmpul Port se introduce numărul portului, în cazul nostru 5432, acesta trebuie să fie identic cu cel folosit la instalarea aplicației PostgreSQL, iar in câmpurile Username și Password se introduce numele de utilizator și parola care trebuie sa fie aceleași cu cele utilizate la instalarea aplicațiilor PostgreSQL și PostGIS; se bifează și căsuța Save Password pentru a nu fi necesară introducerea lor de fiecare dată când ne conectăm. Pentru a verifica dacă conexiunea se poate realiza cu succes se folosește butonul Test connect (Fig. 2).

Figura 2.

  • Se dă iar click pe butonul Import ESRI Shapefilefile to PostgreSQL, ca rezultat, deschizându-se o nouă fereastră de unde se vor încărca datele astfel: în fereastra nou deschisă se selectează conexiunea creată la pasul anterior, în cazul nostru Județe Romania, click pe butonul Connect, apoi pe butonul Add după care se selecteză calea către locul în care sunt stocate datele pe care dorim să le importăm, iar în final click pe butonul OK (Fig. 3).

Figura 3

2. Folosind shp2pgsql

  • Instrumentul shp2pgsql convertește fișiere ESRI în format SQL, adecvate pentru introducerea într-o bază de date Postgis/PostgreSQL. Acest instrument prezintă mai multe moduri de funcționare ce se disting prin linia de comandă. Pentru acest lucru trebuie să avem de asemenea instalate aplicațiile PostgreSQL și PostGIS, după care se crează o bază de date spațială.
  • Conversia se face folosind linia de comandă, dupa cum urmează: Run-în fereastra nou deschisă tastăm cmd , click OK – se deschide fereastra în care se tastează comanda către folder-ul ce conține datele noastre, în cazul de față cd c:\judete_ro și dați Enter (Fig.4).

Figura 4

  • Înainte de a trece la pasul următor, descărcați fișierul pg_setenv și copiați-l în folder-ul în care se găsesc datele ce urmează a fi convertite (a se vedea pasul anterior). Fișierul a fost creat și folosit de Paul Ramsey în prezentarea Introduction to PostGIS la confeința Free and Open Source Software for Geospatial din anul 2007. După ce ați făcut acest lucru, deschideți fișierul respectiv cu un editor text și modificați calea și versiunea de PostgreSQL cu cea pe care o aveți instalată.
  • În linia de comandă, pentru o utilizare facilă a instrumentului, tastați pg_setenv.bat și dați Enter (Fig. 5).

Figura 5

  • Dacă tastăm comanda shp2pgsql, vom afla informații despre fiecare opțiune a acestui instrument (Fig. 6).

Figura 6

  • Se tastează o comandă de genul:shp2pgsql [opțiuni] [ESRI Shapefilefile] [denumire tabel] [denumire bază de date], în cazul de față comanda fiind următoarea: shp2pgsql –s 31700 judete_ro.shp judete_ro > judete_ro.sql , apoi apăsați tasta Enter (31700 reprezintă codul EPSG pentru proiecția Stereografic 1970) (Fig.7).

Figura 7

  • În final tastați următoarea comandă: psql –U postgres –f judete_ro.sql –d judete (Fig. 8).

Figura 8

  • Toate operațiile sunt exemplificate în figura (Fig. 9).

Figura 9

Vizualizarea datelor încărcate în PostGIS folosind aplicații open source

1. Vizualizarea datelor încărcate în PostGIS folosind aplicația QGIS

  • Se pornește aplicația QGIS și se folosește butonul Add PostGis Layer, se deschide o nouă fereastră unde se va selecta noua conexiune creată; click pe butonul Connect, se selectează fișierul dorit (în cazul nostru cel ce conține județele), iar apoi se click pe butonul Add (Fig. 10).

Figura 10

  • Rezultatul este cel afișat în figura 11.

Figura 11

2. Vizualizarea datelor încărcate în PostGIS folosind aplicația uDig

  • Se deschide aplicația uDig și se folosește butonul Layer – Add, se deschide o nouă fereastră în care trebuie să selectăm tipul bazei de date, în cazul nostru PostGIS, click pe butonul Next ce duce la deschiderea unei noi ferestre asemănătoare cu cea din QGIS, unde trebuie completate date cum ar fi denumirea bazei de date, numele de utilizator, parolă, etc (la fel ca în QGIS), iarăși click pe butonul Next din fereastra nou deschisă, se selectează fișierul dorit (în cazul nostru cel ce conține județele), iar în final click pe butonul Finish (Fig. 12).

Figura 12

  • Rezultatul este cel afișat în figura 13.

Figura 13

3. Vizualizarea datelor încărcate în PostGIS folosind aplicația “GeoServer”

Figura 14

  • În fereastra nou deschisă click pe butonul New, se selectează în câmpul Feature Data Set Description tipul, în cazul nostru PostGIS, iar în câmpul Feature Data Set ID cum dorim să denumim setul de date, în cazul nostru „Judete_Romania” și click pe butonul New (Fig. 15).

Figura 15

  • Se deschide o nouă fereastră unde trebuie completate date cum ar fi denumirea bazei de date, numele de utilizator, parolă, etc (la fel ca in QGIS și uDig), după care se dă click pe butoanele Submit – Apply – Save (Fig. 16).

Figura 16

  • Dacă totul a mers normal, trebuie să vedeți un mesaj de genul “Data loaded without incident” (Fig. 17).

Figura 17

  • Click în continuare pe butoanele FeatureTypes – New se alege la Feature Type Name “Judete_Romania” și iar click pe butonul New (Fig.18).

Figura 18

Click-type-click-...

Figura 19 Imagine preluată din tutorialul Soluții WMS open source – Partea I

  • Dacă totul a mers fără probleme puteți da click pe link-ul de Welcome și în continuare pe Demo. Veți găsi noul set de date în secțiunea Map Preview sub numele topp:judete_ro. Click pe acesta iar rezultatul trebuie să fie ca în figura 20.

Figura 20

Bibliografie

  1. Documentație GeoServer
  2. Instalare Tomcat 6 pe Windows
  3. Introduction to PostGIS de Paul Ramsey
  4. Tutorial Open Layers de Vasile Crăciunescu
  5. Tutorial Soluții WMS open source – Partea I de Marius Jigmond.
  6. Tutorial Utilizare PostGis. Partea I: Instalare PostgreSQL + PostGIS de Ion Nedelcu.
  7. Using PostGIS: Data Management and Queries
Discută articolul (0 comentarii)

Categorii