26 ottobre 2006

Il mio primo MapGuide


Mappa sul Web con il nuovo MapGuide e tecnologia Ajax

Bene, dopo aver tenuto il corso sul nuovo Autodesk MapGuide Enterprise allo User Meeting di Roma, sono andato presso un nostro sviluppatore per tenere un corso più esteso, di una giornata. La preparazione di questo corso mi ha dato l'occasione di utilizzare dati "veri" e di provare a pubblicare le mie prime mappe.
E' stato un po' come tornare agli albori, ai primi anni di questo secolo, ;-) quando ho fatto le prime prove con MapGuide, che da qualche tempo si era fermato. Ma ora la tecnologia ha fatto un grande salto di qualità, ed anche l'aspetto commerciale è completamente cambiato.
Devi sapere, infatti, che Autodesk quest'anno ha violato due tabù.
Ha rilasciato in versione Open Source gran parte della sua nuova tecnologia: MapGuide, FDO, i formati DWF e SDF. Ha reso disponibile MapGuide non solo per Windows ma anche (e soprattutto, direi) per Linux. Non sono diventati matti... ;-) hanno capito due o tre cose del mondo del Web Mapping:

  • Il concorrente che cresce di più è il mondo Open Source
  • Non è possibile ignorare la grande diffusione dei server Linux
  • L'arrivo di Google (e poi di Yahoo e Microsoft) deve essere visto come una opportunità e non come una minaccia

La nuova strategia Autodesk, quindi , nasce dalla semplice constatazione che se non puoi combattere un avversario allora è meglio che te lo scegli come alleato... (ispirata a Sun Tzu?).
A partire dall'anno scorso Autodesk ha avviato colloqui con L'Università del Minnesota, custode di UNM Map Server, il più noto software Open Source per il Web Mapping. Questi colloqui si sono poi estesi a tutto il mondo Open Source "geospatial" (noi diremmo GIS), fino alla nascita di una fondazione, che raccoglie ormai tutti i principali progetti Open Source per il GIS.



Il suo nome è Open Source Geospatial Foundation, per gli amici OSGeo, la puoi trovare all'indirizzo www.osgeo.org. Se ti ricordi ne scrissi già in giugno, nel Post intitolato Web GIS Open Source a Venezia.
Sul sito della Fondazione trovi già pubblicata la Release 1.0.1 di MapGuide Open Source: come ho scritto nel mio Post La carica dell'1.0.1, puoi scaricarla ed utilizzarla per creare i tuoi progetti.

Ma sul piano tecnico, perchè il nuovo MapGuide è molto migliore del precedente? Ecco i 10 motivi principali:

  1. Maggiore scelta nel server: sia Microsoft Windows che Linux
  2. Ambienti di sviluppo più evoluti: PHP, ASP.Net, Java
  3. Nuova tecnologia Ajax per la visualizzazione senza plug-in e per permettere la visualizzazione anche con browser diversi dal solito Internet Explorer, come Safari, Mozilla Firefox e così via
  4. Tecnologia DWF per la visualizzazione vettoriale e la stampa in scala
  5. Nuova Tecnologia FDO per l'accesso ai dati (la stessa di Map 3D!) vettoriali (shp, sdf), raster (tiff, Ecw, MrSID e molti altri), geodatabase (MySQL, ArcSDE), servizi Web (WMS e WFS).
  6. Maggiore efficienza grazie all'architettura basata su Server e su un Database Risorse
  7. Supporto dei True Color e delle etichette dinamiche
  8. Integrazione con Google Earth
  9. Amministrazione remota del Server
  10. Crescita più veloce in futuro grazie all'ambiente Open Source

Ti voglio far notare però che Autodesk ha mantenuto una sua versione commerciale, Autodesk MapGuide Enterprise, per la quale non chiede un costo di licenza, ma il solo abbonamento Subscription, a costi molto contenuti. In cambio di questo abbonamento, chi acquista la versione commerciale ottiene:

  • Tutto il software localizzato in italiano
  • Alcuni Provider FDO in più (Oracle Spatial e Microsoft SQL Server), ed un Provider più evoluto per la gestione delle immagini raster
  • I sistemi di coordinate integrati con quelli di Autodesk Map 3D

E non è finita: Autodesk ha rilasciato anche un suo prodotto di Authoring, che rende molto facile e veloce tutte le operazioni di caricamento dei dati, vestizione dei layer, composizione delle mappe e pubblicazione sul Web: si chiama Autodesk MapGuide Studio.
L'ho usato intensamente, nelle ultime settimane, ed è veramente comodo, direi indispensabile per ottenere i risultati migliori.


Autodesk MapGuide Studio al lavoro per preparare la pubblicazione di una mappa

Infine il nostro beneamato Autodesk Map 3D.
Anche lui ha un suo ruolo importante, in questa strategia: Map 3D, infatti, è in grado di connettersi (anche in remoto) ai server MapGuide (sia Open Source che Enterprise) e pubblicare i suoi progetti realizzati con FDO. Eh, già, la tecnologia di base è la stessa, quindi non c'è più bisogno di importare o esportare dati: come li vedi in Map 3D, così li vedi pubblicati sulla rete con MapGuide. E' evidente, quindi che Map 3D è fondamentale per la creazione e l'editing dei dati prima della loro pubblicazione.

Ok, spero di averti chiarito le idee sul nuovo MapGuide. Se invece te le ho confuse ;-) oppure hai dubbi lasciami un commento qui sotto. Tieni presente che per evitare spamming i commenti sono moderati, quidni non lo vedrai comparire subito, ma non temere, lo pubblicherò al più presto.

Se vuoi vedere il nuovo MapGuide al lavoro sul Web vai al Post Un nuovo progetto MapGuide.

Alla prossima! Sono in arrivo importanti novità sulle fonti cartografiche...
GimmiGIS

16 commenti:

Anonimo ha detto...

Innanzitutto complimenti per il blog, davvero ben fatto!

Mi chiamo Donato e lavoro presso l'HSH, azienda che ben conosci, ma vengo alla domanda!

Tra le caratteristiche più interessanti c'è sicuramente il supporto PHP finalmente, della tecnologia Ajax e a quanto sembra (sempre finalmente) ci si svincola dal pesante plugin.

Ho capito male?
Ciò che non si evince (o forse sono io a non capire bene) è se le nuove features riguardano solo il Mapguide opensource oppure se fanno parte della nuova release (la 7?) del Mapguide.

Ultima domanda ... ho capito ancora male ma finalmente possiamo usare MySQL come base dati?

Ciao

GimmiGis ha detto...

Ciao Donato, grazie per i complimenti!
Sì, il nuovo MapGuide è veramente ricco di novità, ed hai capito bene:

1) puoi costruire il tuo progetto con Autodesk MapGuide Studio (a pagamento, ad un costo di poche centinaia di euro) o con MapGuide Web Studio (compreso nella Release 1.0.1 di MapGuide Open Source) e poi pubblicare il tuo progetto, a piacere, con tecnologia Ajax (che NON richiede Plugin) o con tecnologia DWF (che invece lo richiede). Ajax perdipiù permette la visualizzazione con tutti i browser, non con il solo IE.

2) Tutte le features che descrivo riguardano entrambe le versioni (Open Source ed Enterprise) TRANNE:
- il Provider FDO per Oracle Spatial e Ms SQL Server, che è disponibile per ora solo nella versione Enterprise. Mi aspetto che il mondo Open Source chiuda presto questa lacuna, visto che la tecnologia FDO è stata resa disponibile in modalità, appunto, Open Source, e sviluppi Provider anche per altri GeoDb, come per esempio PostGres.
- Le altre differenze consistono nel fatto che la versione Enterprise usa un provider proprietario Autodesk per la gestione dei raster (Open SOurce usa la liberia GDAL) ed una libreria proprietaria Autodesk per i sistemi di coordinate.

3) Quindi hai capito bene, puoi usare MySQL per costruire il tuo Geodatabase. E puoi accedere anche ad ArcSDE...

Buon lavoro
GimmiGIS

Anonimo ha detto...

saluto tutti e in particolare Donato.

mi chiamo pietro è ho una banale esperienza con Autodesk MapGuide studio. ritengo che tale strumento sia molto potente e funzionale.

Ma..., non ho capito ancora in cosa differiscono:Autodesk MapGuide, Autodesk MapGuide studio e Autodesk MapGuide Enterprise.

ringrazio e saluto
ciao Pietro

GimmiGis ha detto...

Ciao Pietro,
1) MapGuide (senza Autodesk, perchè è un prodotto Open Source) è sostanzialmente la parte server. Quindi tutto quello che ti occorre per gestire su di un server la pubblicazione delle mappa.
2) Autodesk MapGuide Enterprise è la versione commerciale, a pagamento. Si paga solo la manutenzione, che Autodesk chiama Subscription. E' ancora la parte server, ma in più rispetto a MapGuide Open Source contiene alcune funzionalità. In particolare i provider per Oracle Spatial e Microsoft SQL Server ed i sistemi di coordinate condivisi con Map 3D. Inoltre la versione Enterprise è disponibile in italiano.
3) Infine Autodesk MapGuide Studio, che conosci, è anche lui un prodotto commerciale (di basso costo) di Authoring delle mappe. Ti permette di comporre i diversi layer da pubblicare, di deciderne la vestizione, il layout, di personalizzare i comandi e così via.
Buon divertimento con MapGuide!
GimmiGIS

mike ha detto...

Ciao! complimenti per il blog ci voleva proprio!!
ho una question: se io produco dei progetti gis con arcview 9, posso riuscire in qualche modo a pubblicarli nella mia rete intranet con mapguide open source? cioè senza spendere una barca di soldi utilizzando l'arcims?

grazie saluti!

mike

GimmiGis ha detto...

Ciao Mike, sono contento che il Blog ti sia servito. Ti confermo che se salvi i tuoi progetti ArcGIS in formato Shape, puoi pubblicarli tranquillamente con MapGuide. Anche se i progetti sono in un Geodatabase gestito attraverso ArcIms, o in Oracle Spatial, puoi pubblicarli in MapGuide. Salutoni GimmiGIS

Mike ha detto...

grazie per la risposta GimmiGis! avrei un'altra domanda: mapguide open source è scaricabile gratuitamente giusto? cioè non ha una scadenza, a differenza di arcims della esri, permette di visualizzare mappe, ma anche gli attributi di queste mappe?, si possono fare delle query?, scusa se ti faccio domande magari un pò elementari ma è da poco che utilizzo i software gis.

grazie in anticipo!

GimmiGis ha detto...

Ciao Mike, sì, puoi scaricare liberamente MapGuide Open Source dal sito della Fondazione Open Source Geospatial all'indirizzo www.osgeo.org. Non ha nessuna scadenza, anzi, con il passare del tempo troverai disponibili sul sito versioni sempre più evolute, Provider aggiuntivi e così via. E' il bello dell'Open Source. Anche se, attenzione, Open Source non significa Free: c'è una licenza, che ti invito a leggere, che va rispettata. Ad esempio non puoi rivendere il software Open Source. Inoltre con MapGuide puoi visualizzare gli attributi degli oggetti selezionati e puoi costruire layers sulla base di query. MapGuide è un Server cartografico completo, concorrente di ArcIms. Ti invito infine ad esaminare Autodesk MapGuide Studio: è a pagamento (costa pochissimo) ma ti permette di costruire i tuoi progetti molto più comodamente!

Anonimo ha detto...

Complimenti per il Blog!!
Vorrei sapere se attraverso l'FDO Provider per SQL Server posso usare MapGuide per leggere anche i dati spaziali direttamente dal database....e magari se posso anche eseguire analisi spaziali (di prossimità, intersezioni, ecc..)

Grazie per la disponibilità,
Fabio

GimmiGis ha detto...

Certamente. La cosa importante è che u sia riuscito a scrivere dati geospaziali in SQL Server: cosa che puoi fare comodamente con AutoCAD Map 3D, che utilizza la stessa tecnologia FDO

Anonimo ha detto...

Si, utilizzeremo Autocad Map 3D 2008 per creare i dati spaziali e memorizzarli su SQL Server 2005... però volevo capire se, ad esempio, la funzione che ritorna l'intersezione tra due poligoni è disponibile sui dai memorizzati in SQL Server.
Altra cosa...perchè trovo scritto che l'FDO provider per WFS è in sola lettura?? Non si riescono a modificare con il Map 3D le feature messe a disposizione da un servizio WFS??
Grazie di nuovo per le risposte che saprai darmi...

GimmiGis ha detto...

Fammi capire cosa intendi per "la funzione che ritorna l'intersezione tra due poligoni". Con Map 3D 2008 ad esempio puoi creare buffers e poi utilizzarli per selezionare tutti i poligoni che vi sono contenuti o che li intersecano... E' questo che intendi?

Per quanto riguarda WFS, visto che si tratta di un servizio via Web, di solito è in sola lettura. Può essere interessante pensare di modificare i dati serviti con WFS, ma non so cosa può succedere dal punto di vista delle prestazioni. Comunque non ti preoccupare: i dati caricati con gli altri provider vettoriali (da SHP a SDF, da SQL Server ad Oracle...) sono modificabili.

Anonimo ha detto...

Mi ha fatto piacere ieri vedere che eri relatore alla GIS Group Conference a Conegliano...subito dopo pranzo ho anche cercato invano di scovarti per porti delle domande di persona...ma puff..scomparso!!!! ;)

Comunque per "funzione che ritorna l'intersezione tra due poligoni" intendo una funzione di MapGuide che mi ritorni il valore dell'area di intersezione tra due poligoni che si sovrappongono...
Mi spiego meglio, io ho sviluppato un algoritmo per il calcolo dell'area di intersezione tra poligoni in javascript proprio per sopperire alla carenza che aveva il vecchio MapGuide in questo senso...Vorrei sapere se ora, con la nuova tecnologia, potrò avere a disposizione questa funzione da applicare agli oggetti selezionati dall'utente...(naturalmente ora la funzione, se presente, dovrebbe essere prevista dalle API e venire eseguita lato server...)

...avrai sicuramente pensato alla Certificazione di Destinazione Urbanistica come applicazione di questa funzione...

A presto, Fabio

GimmiGis ha detto...

Caro Fabio ciao,

Mi dispiace che tu non mi abbia trovato, purtroppo dopo pranzo sono dovuto tornare indietro (abito a Monza) altrimenti sarei arrivato a casa veramente molto tardi. Infatti sono sfuggito per un pelo al blocco del passante di Mestre a causa di un incidente.

Dopodiché Thomas di Intelligence Software mi ha informato sugli aspetti, molto interessanti, di utilizzo di dati da Laserscanner di cui ho scritto nel mio ultimo articolo, dedicato proprio all'incontro di Conegliano.

Venendo a MapGuide, devi tenere presente che la programmazione non è il mio campo... Ma quello che ti posso dire è che il nuovo MapGuide permette la programmazione in Java, quindi penso sia molto probabile che tu possa applicare lo stesso algoritmo che avevi preparato per il vecchio MapGuide.

Da questo punto di vista ti può essere molto utile Autodesk MapGuide Studio, che facilita di molto la creazione di Layout e soprattutto il modo in cui vengono richiamati script esterni.

Alla prossima
GimmiGIS

Anonimo ha detto...

ciao gimmi sono un appassionato di GIS nonchè utilizzatore a livello professionale, anche se ancora agli albori. avevo una domanda da porti vista la tua piena preparazione sull'argomento GIS e Autodesk. Ti volevo chiedere un consiglio: secondo te quale DB dovrei usare tra SQL server 2005 e Oracle 10g? perchè? che differenze potrei trovare? E scelto un DB quale versione di quest'ultima è sufficiente per la pubblicazione di un ottimo GIS completo di tutto?

GimmiGis ha detto...

Per quanto riguarda i database per memorizzare informazioni geospaziali, Oracle è sicuramente il migliore. Da molti anni Autodesk lo supporta pienamente, e la versione più indicata è sicuramente la più recente, la 10g. SQL Server invece è suppportato solo da un paio di anni, ed in realtà non è predisposto per memorizzare informazioni geospaziali. Questa infatti vengono conservate in campi di tipo Blob, che poi la tecnologia FDO di Map 3D e MapGuide gestiscono in modo adeguato. Gli unici vantaggi di SQL Server stanno nel costo più basso e nella sua maggiore diffusione. Quindi, se puoi scegliere liberamente, usa Oracle.

Buon lavoro!