Δευτέρα 24 Ιανουαρίου 2011

Open Source WebGIS και δεδομένα


Αυτό το άρθρο θα προσπαθήσει να σας εξηγήσει πως να εκμεταλλευτείτε ένα OS WebGIS και πώς να χρησιμοποιείτε τα χωρικά δεδομένα που είναι ενσωματωμένα σε αυτό.


Έχοντας μια καλή εμπειρία για τη δημιουργία των WebGIS OpenSource και συγκεκριμένα για τα WebGIS από ελεύθερα λογισμικά Cartoweb, η εταιρεία εύkartenn σας παρουσιάζει σ'αυτό το ιστολόγιο  πως να αξιολογείτε τα χωρικά δεδομένα για την προσωπική σας ανάγκη...

Κατ'αρχήν πρέπει να πω ότι αυτό το θέμα έχει ως πηγή μια συζήτηση στο ελληνικό forum εδώ.
Ένας μέλος του ανέφερε το μήνυμα και τη διεύθυνση από ένα WebGIS της Ν.Α Μαγνησίας και σκέφτηκα να το μελετήσω λίγο...

Το WebGIS βασίζεται σε γνωστή Open Source τεχνολογία. Είναι ένα λογισμικό που χρησιμοποιεί το Mapserver. Η τεχνολογία είναι αποτελεσματική αλλά λίγο ξεπερασμένη τώρα αφού το RestFull ξεπέρασε την SOAP αρχιτεκτονική του Cartoweb/Mapserver.

Βλέπουμε τότε πιο πολλές εφαρμογές που χρησιμοποιούν OpenLayers και άλλες βιβλιοθήκες όπως Django, ExtJS, JSQuery...


Αν μελετήσω αυτό το WebGIS Μαγνησίας βασισμένο σε Cartoweb, είναι εύκολο να βρούμε τις πηγές και τα χωρικά δεδομένα...

Γενικά οι εταιρείες που δημιουργούν τις εφαρμογές WebGIS παίρνουν τα αρχεία από την επίσημη ιστοσελίδα του λογισμικού και κάνουν την επικόλληση όλων των αρχείων στον εξυπηρετητή. Έτσι έχουμε εφαρμογές που είναι λίγο σαν Copy/Paste από τα Files Source της demo. Είναι εύκολο να ψάξουμε τα αρχεία που ρυθμίζουν και που βρίσκονται τα γεωδεδομένα.

Έχοντας κάνει πάνω από 15 WebGIS OS με CartoWeb (παραδείγματα Καβάλα, Grisi for Soho, εδώ και εδώ), θα σας δείξω πού να βρούμε τα γεωδεδομένα.

Τυπικά, έχουμε όλα τα έργα (Projects) στο φάκελο Projects.
Η διεύθυνση είναι αυτή
http://nam-webgis.gennetsa.com/gis/htdocs/na_magnhsias.php?lang=el
H διεύθυνση καλεί το αρχείο na_magnhsias.php  από το φάκελο htdocs αλλά αυτό είναι μόνο ένα Placemark.

Τότε ψάχνουμε το όνομα του έργου για αυτό το WebGIS. Μπορεί να βρω άλλους φακέλους για άπειρες εφαρμογές...
http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/

Τα αρχεία παραμέτρησης για το WebGIS βρίσκονται στην πλευρά του Server (εξυπηρετητής), εδώ
http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/server_conf/na_magnhsias_xml/
Μπαίνουμε στο φάκελο του έργου /na_magnhsias_xml/...
και έχουμε όλα τα πιο σημαντικά αρχεία της εφαρμογής...

Πρώτα... το na_magnhsias_xml.map
με όλες τις πληροφορίες στο αρχείο http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/server_conf/na_magnhsias_xml/na_magnhsias_xml.map

Τι μαθαίνουμε στο αρχείο αυτό; Ότι τα δεδομένα βρίσκονται στη βάση δεδομένων PostGIS. Τότε δύσκολο να τα πάρουμε

CONNECTIONTYPE POSTGIS
  CONNECTION "user=postgres password=1515 dbname=na_magnhsias host=localhost port=5432"
  DATA "the_geom from bio_pa using unique gid"

Βλέπουμε και άλλο αρχείο Sofades.map 
Μέσα έχουμε SHAPEPATH "data". Αυτό σημαίνει ότι το path για τα γεωδεδομένα είναι στο φάκελο αυτό.

http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/server_conf/na_magnhsias_xml/data/

Έχουμε όλα τα δεδομένα σε μορφή Shapefile. Μπορούμε να τα αποθηκεύσουμε.

  • Έχουμε και na_magnhsias_xml.ini για την εμφάνιση των γεωδεδομένων :

; plugin configuration and loading
mapInfo.loadPlugins = hilight, mapOverlay,  outline, edit

mapInfo.initialMapStates.default.location.bbox = "369381.9062788, 4311951.000929, 528537.374904, 4400157.31261"
;mapInfo.initialMapStates.default.layers.orthomosaic.selected = false
mapInfo.initialMapStates.default.layers.Nomos.selected=true
mapInfo.initialMapStates.default.layers.Aktogrammi.selected=true
mapInfo.initialMapStates.default.layers.Dimoi.selected=true
mapInfo.initialMapStates.default.layers.ODIKO_Arc.selected=true
mapInfo.initialMapStates.default.layers.Oikistiko_Diktyo.selected=true
mapInfo.initialMapStates.default.layers.OSE.selected=true
mapInfo.initialMapStates.default.layers.BIO_PA.selected=true

;mapInfo.initialMapStates.default.layers.satelite.unfolded = true

; Charset encoder class
;EncoderClass.config = EncoderISO
EncoderClass.config = EncoderUTF
  •  layers.ini για το plugin που αφορά τη δομή των γεωδεδομένων στο δένδρο (Tree)

Τέλος, έχουμε στο Client_server ένα σημαντικό αρχείο client.ini που μας ενδιαφέρει για να ξέρουμε ποια plugin δουλεύουν στο WebGIS, η κωδικοποίηση των γραμμάτων και ποιο είναι το .map του έργου.(na_magnhsias_xml):

mapId = na_magnhsias_xml
;## Plugins ##
; the list of plugins to load, separated by comma
loadPlugins = checkInstall, bboxHistory,  outline, auth, edit
 
; Encoding for search plugin
EncoderClass.searchDb = EncoderISO

EncoderClass.config = EncoderUTF
EncoderClass.output = EncoderUTF

EncoderClass.data = EncoderISO_1253
EncoderClass.value_iso = EncoderISO_1253
 
Αν είστε ακόμη περίεργοι για την παραμέτρηση της αρχικής σελίδας. Μπορείτε να ρίξτε μια ματιά στο αρχείο αυτό :
http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/templates/cartoclient.tpl 

Αν είστε συνηθισμένοι με τον κωδικό, τα λεει όλα...σχεδόν!


Προσωπικά μ'ενδιαφέρουν πολύ τα περίπτερα και η τοποθέτηση τους...οι ταβέρνες. Τότε πήρα τα δεδομένα (όπως τα παρουσίασα παραπάνω) για να σας δείξω ένα χάρτη από τον υπολογιστή μου. Έτσι σας δείχνω ότι τελικά η εφαρμογή μπορεί να μας δώσει λίγο υλικό (δεδομένα) αν ψάχνουμε καλά. 



Είναι μάλλον ...Πεταμένα λεφτά αλλά αν γίνεται να πάρουμε κάτι...

Σας εύχομαι μια καλή δημιουργία χαρτών λοιπόν. 
 


-----------------------------------------------------------------------------------------------





This post tries to explain you how to use an OS WebGIS in order to extract spatial data for your needs. It is not a closed application, it is possible to export something just for you.


Having an experience for building the WebGIS OpenSource, I will present you how to exploit an WebGIS like a Cartoweb application. The evkartenn company presents you in this blog a demarch to find the geodata and to extract them for your needs...

Firstly, it is necessary to say that the origin to create this post has an origin with a discussion from the greek forum here.
One of the members spoke about a URL address for the WebGIS of the  Magnesia's Prefecture. It was a discussion about an impossible reuse of this application and data. That's why I studied just a little this application.

WebGIS is based on a famous pen Source technology . It uses a cartographic engine: Mapserver. It is an efficient technology but it is out-of-date now when we look the others webgis applications on the international market. A RestFull architecture surpasses the SOAP like this of Cartoweb/Mapserver.

This new architecture uses more and more applications like OpenLayers and Django, ExtJS, JSQuery...


If I study this WebGIS of Magnisia, finally it is not very difficult to identify where are the geodata...

Generally the companies use the files from the download pages of the OS applications. So, we have a copy/paste and it is easy to understand how is installed the application. I use this fact to present you how to found the geodata of Magnesia.

Having made more of 15 WebGIS OS with CartoWeb (examples of Κavala, Grisi for Soho, here and here),typically the project of Magnesia is in this folder
http://nam-webgis.gennetsa.com/gis/htdocs/

The URL address calls a .php  file in the htdocs folder but it works just like a   Placemark. Then, it is possible to identify some folders but they don't interest us, they are like demo or tries...
http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/

The configuration file for the WebGIS takes place on the server side
http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/server_conf/na_magnhsias_xml/
It is necessary to enter in /na_magnhsias_xml/...
and we have all the more important files of this application:

Firstly...  na_magnhsias_xml.map
with all the information. It is th MapFile http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/server_conf/na_magnhsias_xml/na_magnhsias_xml.map

We learn that this project uses a Database and a cartographic addon PostGIS:

CONNECTIONTYPE POSTGIS
  CONNECTION "user=postgres password=1515 dbname=na_magnhsias host=localhost port=5432"
  DATA "the_geom from bio_pa using unique gid"

But we remark others demo/applications like this Sofades.map 
Ok, very good, MapFile informs us that the geodata have a SHAPEPATH "data". This is the path! No problem, data are in Shapefile format...

http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/server_conf/na_magnhsias_xml/data/

Just to download them!

  • There is a na_magnhsias_xml.ini file for the configuration of the visibility and plugins on the home page :

; plugin configuration and loading
mapInfo.loadPlugins = hilight, mapOverlay,  outline, edit

mapInfo.initialMapStates.default.location.bbox = "369381.9062788, 4311951.000929, 528537.374904, 4400157.31261"
;mapInfo.initialMapStates.default.layers.orthomosaic.selected = false
mapInfo.initialMapStates.default.layers.Nomos.selected=true
mapInfo.initialMapStates.default.layers.Aktogrammi.selected=true
mapInfo.initialMapStates.default.layers.Dimoi.selected=true
mapInfo.initialMapStates.default.layers.ODIKO_Arc.selected=true
mapInfo.initialMapStates.default.layers.Oikistiko_Diktyo.selected=true
mapInfo.initialMapStates.default.layers.OSE.selected=true
mapInfo.initialMapStates.default.layers.BIO_PA.selected=true

;mapInfo.initialMapStates.default.layers.satelite.unfolded = true

; Charset encoder class
;EncoderClass.config = EncoderISO
EncoderClass.config = EncoderUTF
  •  layers.ini file configures the Tree Layers of the application

And finally, it is possible to discover on the Client side one important file : client.ini . It informs us about the loading plugins and the encoder (important for the greek language and the translations)

mapId = na_magnhsias_xml
;## Plugins ##
; the list of plugins to load, separated by comma
loadPlugins = checkInstall, bboxHistory,  outline, auth, edit
 
; Encoding for search plugin
EncoderClass.searchDb = EncoderISO

EncoderClass.config = EncoderUTF
EncoderClass.output = EncoderUTF

EncoderClass.data = EncoderISO_1253
EncoderClass.value_iso = EncoderISO_1253
 
If you are curious, you have the TPL file for the template of the application :
http://nam-webgis.gennetsa.com/gis/projects/na_magnhsias_xml/templates/cartoclient.tpl 

Personally, I have an interest for the local activities like kiosks, taverns. So, I downloaded the data in order to make a simple map on my computer...
From a URL address I made a map this geodata on my Ubuntu laptop!
So it is possible to re-use an application like this Cartoweb Application for making a map with the data its...
Lack of security, it is good for us!



Enjoy to map your Magnesian data!

3 σχόλια:

  1. αντιμετωπίζω δυσκολία με τρια από τα 5 παραδείγματα... μετά από κάποια ώρα άλλοτε αμέσως άλλοτε αργότερα εμφανίζονται μηνύματα λάθους
    (MS windows, Mozilla 3.6.13)

    "an error has occured. Press to reload application"

    ΑπάντησηΔιαγραφή
  2. Αν κατάλαβα καλά, αυτό μπορεί να είναι σε σχέση με το Cache. Δεν πρέπει να έχετε 2ή 3 καρτέλες ανοίχτες για 2 ή 3 διαφορετικές εφαρμογές Cartoweb.
    Mozilla τα μπερδευέται και βγαίνει ένα μήνυμα σφάλματος...

    ΑπάντησηΔιαγραφή
  3. Από τότε, δεν λειτουργεί η εφαρμογή της Μαγνησίας...

    ΑπάντησηΔιαγραφή

Αφήστε το σχόλιό σας εδώ...