Software GE SmallWorld Core Spatial Technology® - lezione 1 Caricare, visualizzare e consultare dati vettoriali 1) Costruire una vista sui dati geografici Il software GIS GE Smallworld gestisce i dati geometrici come un continuum territoriale utilizzando un unico database eventualmente suddiviso in partizioni logiche denominate dataset . Tipicamente vengono create partizioni logiche differenti per la cartografia di sfondo e per i dati gestiti dal GIS. Ogni dataset è gestito a versioni e può contenere dati memorizzati con sistemi di coordinate differenti. E’ pertanto l’applicazione a farsi carico di trasformare dinamicamente i dati e visualizzarli fisicamente sulla stessa mappa. Nel corso della esercitazione oggetto di questa lezione verranno visualizzati su Smallworld dei file in formato ESRI Shape. Tali file verranno inizialmente visualizzati in sola consultazione senza alcuna operazione di import. Il secondo passo sarà quello di verificare come tali dati, seppur non localizzati all’interno del database Smallworld possano essere interrogati, tematizzati e gestiti, per quanto riguarda la consultazione, esattamente come se risiedessero su Smallworld. Dopo aver esaminato gli aspetti predetti verranno costruite su Smallworld le tabelle necessarie per poi importare i dati direttamente nel database Smallworld. Alla luce di quanto appena detto, ai fini della costruzione di una vista sui dati, sono possibili due differenti approcci: a) Non importare i dati in Smallworld, bensì lasciarli nel formato originale b) Importare i dati nel database una volta identificati o eventualmente creati le tabelle con i relativi attributi alfanumerici e geometrici In entrambi i casi i dati possono essere consultati, navigati ed interrogati esattamente nello stesso modo. Possono inoltre essere gestiti gli stili di visualizzazione, l’ordine e le scale di visualizzazione nonché la modalità di accesso in base ai diritti in proprio possesso (authorisation). Nel caso in cui i dati non siano caricati in Smallworld ma risiedano su un sistema esterno (ipotesi di cui al punto a) le eventuali modifiche operate su tali dati nei sistemi originali vengono dinamicamente acquisite da Smallworld che ha pertanto la possibilità di accedere sempre alla versione aggiornata del dato. Ovviamente se si desidera accedere ai dati in modifica è necessario importarli all’interno di Smallworld, da cui potranno facilmente essere esportati o condivisi con altri sistemi. Gli elementi fondamentali che contraddistinguono una vista e che possono essere configurati attraverso strumenti grafici sono: • Diritto di accesso (se l’utente può o meno visualizzare dati, tabelle e attributi e eventualmente se può modificarli) • Visibilità (a quali scale vedere i diversi oggetti e con quali stili di rappresentazione) • Definizione delle schede (editor) per ogni oggetto: è possibile configurare, eventualmente per ogni utente o gruppo di utenti, quali informazioni visualizzare sugli editor delle diverse classi di oggetto e l’ordine con cui mostrare tali campi 2) Informazioni sui dati vettoriali Smallworld è dotato di un proprio ambiente di sviluppo e di un linguaggio ad oggetti molto simile a Java (denominato Magik) che consentono di apportare qualsiasi tipo di personalizzazione al sistema. Ne consegue che possono essere scritte procedure di visualizzazione o caricamento dati GEOforUS – Geography & Technology Network – www.geoforus.it 1 completamente personalizzate e collegare al sistema file e dati aventi qualsiasi tipo di struttura o tipologia. Una volta importate o collegate a Smallworld, le basi di dati vengono gestite tutte nello stesso modo, con le medesime primitive di stampa, disegno ed interrogazione. I formati più diffusi sul mercato che possono essere collegati a Smallworld senza necessità di personalizzazioni software, sono di seguito riportati: • AutoCAD DXF/DWG • ER Mapper ECW • ESRI Shape • General Rasters • IBM GFIS IFF • MapInfo MID/MIF • MicroStation DGN • MrSID • OpenGIS WMS In fase di caricamento le procedure possono prendere in esame anche file con dati descrittivi utilizzando diverse strategie: • Collegamento a database esterni via ODBC/JDBC • Collegamento di file Excel utilizzando driver OLE • Procedure ad hoc scritte una volta nota la struttura dei file con i dati descrittivi Per quanto riguarda le geometrie e le interazioni topologiche tra gli oggetti, Smallworld gestisce diverse tipi geometrici: • Linee e polilinee (chain e simple_chain) • Aree (area e simple_area) • Punti (point e simple_point) • Testi (text) Le geometrie di tipo simple differiscono rispetto alle altre in quanto non interagiscono topologicamente con le altre geometrie. Smallworld prevede la gestione delle manifold rule, ovvero delle reciproche interazioni tra le geometrie delle diverse classi di oggetto. E’ per esempio possibile configurare il comportamento della geometria lineare di un’asse strada nel momento in cui incrocia un altro asse strada oppure una linea cartografica. Le manifold rule impostate nell’applicazione possono essere facilmente consultate e modificate in qualsiasi momento. A meno di impostazioni particolari, le modifiche apportate saranno attive solo per le geometrie inserite successivamente. Dal menu Tools accedere alla voce Edit Topology e quindi selezionare la voce Manifold. GEOforUS – Geography & Technology Network – www.geoforus.it 2 Si apre una maschera che permette di verificare quali comportamenti sono previsti nell’interazione tra le geometrie. Nella gestione di una rete del ciclo integrato dell’acqua (acqua e fognatura) ad esempio si farà in modo che se due condotte dell’acqua si incrociano venga automaticamente inserito un elemento di giunzione e le assi geometriche siano fisicamente spezzate (split chain). Qualora invece si accavallino una condotta di rete idrica e una di rete fognaria, nulla deve avvenire alle due geometrie che topologicamente appartengono a mondi distinti. Segue un’immagine del pannello di gestione delle regole. Premendo il bottone “Explicit” si apre la maschera che permette di modificare il valore dell’interazione topologica. I comportamenti più comuni sono: • No interaction: nessun tipo di interazione • Connect: connessione tra due geometrie • Connect Ends: connessione tra due geometrie nella coordinata finale (qualora si tratti di geometrie assiali) • Split Chain: spezzatura dell’asse in due geometrie assiali • Split Link: suddivisione logica dell’asse in due rami Nel momento in cui si caricano dati vettoriali in nuove tabelle è importante esplicitare le regole di interazione topologica qualora le nuove tabelle siano dotate di campi geometrici non di tipo simple. 3) Caricare dati vettoriali Per caricare nuovi dati vettoriali (in particolare i file in formato ESRI Shape oggetto della esercitazione corrente) è necessario prima di tutto collegare tale base di dati al database Smallworld GEOforUS – Geography & Technology Network – www.geoforus.it 3 come livello esterno. A questo scopo si utilizza il modulo Spatial Object Manager (SOM). Dal menu Tools selezionare la voce Configure Som e aprire la maschera di interazione con lo strumento. Selezionare dal menu a tendina il formato dei file che si desidera visualizzare (ad es. Shape) quindi caricare tali file da Maps Adds Files. I file scelti vengono visualizzati nella maschera. A questo punto è possibile impostare, per ogni file, il nome della tabella con cui li si vuole consultare sul GIS e soprattutto il sistema di coordinate in cui i dati sono georiferiti. Qualora i dati non siano riferiti in un sistema noto è possibile impostare manualmente una trasformata (es. una traslazione di x e y come transform.new().translate(x,y). Per impostare tali informazioni selezionare i file, premere il bottone destro del mouse e fare click sulla voce Configure. Nell’esercitazione in esame è necessario selezionare il sistema di coordinate come Roma40/EST e nel campo Tablename inserire arbitrariamente il nome della tabella (ad es. centri_abitati, comuni e strade). GEOforUS – Geography & Technology Network – www.geoforus.it 4 Dopo aver impostato sistema di coordinate e tablename premere Apply o OK per confermare le modifiche. A questo punto è necessario salvare la configurazione complessiva con un nome (ad es. “esercitazione”) attraverso File Save As. E’ ora possibile attivare la visualizzazione di questi nuovi strati informativi con Dataset Open. Ad apertura avvenuta posizionarsi sulla vista tramite Maps Goto. Si noti che nell’Object Control dell’applicazione (l’albero in cui sono riportati tutti i dataset e tutti gli oggetti visibili) è comparso un nuovo dataset con il nome “esercitazione” che era stato assegnato precedentemente alla configurazione del SOM. La nuova vista è completamente navigabile e consultabile. Malgrado i dati siano stati collegati senza alcuna operazione di import, è comunque possibile modificare gli stili di visualizzazione con cui gli oggetti sono visibili (si veda a questo proposito il passo successivo di questa esercitazione). Qualora si vogliano caricare i dati è necessario preventivamente creare delle nuove tabelle ad hoc. A questo scopo si può utilizzare lo strumento di Smallworld denominato CASE Tool. Si tratta di uno strumento completamente grafico che permette anche ad utenti non sviluppatori di configurare il modello dei dati (insieme di tabelle, attributi e relazioni) di ogni dataset. Nel CASE Tool gli oggetti sono raffigurati graficamente mentre gli attirbuti dei diversi tipi di oggetto possono essere aggiunti utilizzando apposite maschere. Ai fini dell’esercitazione è necessario aggiungere 3 nuove tabelle, rispettivamente denominate • • • Comune(DBkprior) Strada (DBkprior) Centro Abitato (DBkprior) Prima di tutto occorre però mettersi in scrittura nel CASE Tool dal menu System Version Management Al comune sono stati assegnati i seguenti attributi: GEOforUS – Geography & Technology Network – www.geoforus.it 5 Denominazione Stringa (lungh.50) Codice Provincia Stringa (20) Codice Comune Stringa (20) Codice Regione Stringa (20) Anno Unsigned Int Nome Provincia Stringa(20) Numero Abitanti Unsigned Int Da file Excel Numero Abitazioni Unsigned Int Da file Excel Area Simple Area Si noti che i campi “Numero Abitanti” e “Numero Abitazione” non sono presenti negli Shape File. Tali informazioni saranno infatti prelevate dal file descrittivo Excel utilizzando il campo “codice_comune” come chiave. Alla tabella Strada (DBkprior) sono stati assegnati i seguenti attributi: Nome Stringa (lungh.150) Codice Ente Stringa (150) Origine Stringa(50) Codice Regione Stringa(5) Asse Simple Chain La tabella Centro Abitato (DBkprior) sarà invece valorizzata con le seguenti informazioni: Comune Stringa (lungh.50) Località Stringa (lungh.50) Nome Provincia Stringa (lungh.50) Codice Comune Stringa(20) Codice Provincia Stringa(20) Codice Regione Stringa(20) Anno Unsigned Int GEOforUS – Geography & Technology Network – www.geoforus.it 6 Area Simple Area Una volta inserite le nuove tabelle ed assegnati opportunamente i campi, salvare le modifiche (System Commit) quindi applicare le nuove tabelle ad uno dei dataset presenti nel database (Case Apply to Database). Si apre dunque la seguente maschera che permette l’applicazione delle modifiche nel database: GEOforUS – Geography & Technology Network – www.geoforus.it 7 Selezionare il dataset in cui si vogliono applicare le modifiche dalla voce “Target View”. A questo punto da Edit Target Version Management assicurarsi di essere in scrittura in tale dataset e possibilmente di essere nell’alternativa padre (denominata Top). E’ consigliabile infatti applicare modifiche al modello dei dati direttamente sulla versione Top (quella alla radice dell’albero) per poi eseguire un’operazione di Merge su tutte le eventuali alternative figlie. Si ricorda che oltre ad aggiungere nuove tabelle è possibile, con le medesime modalità, utilizzare il Case Tool per modificare la struttura delle tabelle esistenti. Anche a database popolato, il modello dei dati può essere aggiornato, modificato ed integrato in qualsiasi momento. Una volta che si è impostato dataset di destinazione ed eventualmente il nome di un checkpoint da creare su tale dataset in modo da “fotografare” la situazione immediatamente prima delle modifiche, selezionare dal CASE Tool le tabelle che si vogliono applicare quindi premere Apply Apply Selection. Si chiarisce che un checkpoint è un’istantanea che viene “scattata” in un’alternativa di un determinato dataset. In qualsiasi momento è possibile tornare al checkpoint in consultazione per valutare la situazione del database in quel dato momento oppure è possibile fare in modo che la vista al momento del checkpoint diventi quella attuale (operazione consigliata ai soli utenti esperti). Una volta applicate le tabelle al dataset è necessario scrivere le procedure Magik per il caricamento dei dati già collegati a Smallworld con il SOM. Eseguendo quindi tali procedure i dati verranno caricati nell’alternativa desiderata. Terminato il caricamento eseguire il commit del dataset attraverso l’apposito bottone posto nel pannello di gestione delle versioni accessibile nell’applicazione Smallworld dalla voce di menu File Versions 4) Vestire i dati Smallworld è dotato di uno strumento per la gestione degli stili di rappresentazione denominato Style System. Accessibile attraverso l’applicazione di amministrazione (al cui utilizzo può essere GEOforUS – Geography & Technology Network – www.geoforus.it 8 eventualmente abilitato un sottoinsieme di utenti), lo Style System permette di associare ad ogni geometria di ogni classe di oggetto uno stile per ognuna delle Dysplay Scale definite. Per accedere a tale funzionalità avviare l’applicazione di amministrazione: se si è abilitati, al login si apre una maschera simile a quella di seguito riportata, da cui è necessario accedere all’applicazione “Administration – Smallworld Core”. Dall’applicazione di amministrazione selezionare la voce Styles A questo punto, una volta aperta la maschera dello Style System, selezionare la voce Gis dal menu a tendina “SOC Definition” ed espandere nella parte sinistra dell’interfaccia, l’albero relativo al dataset in cui si trovano gli oggetti di cui si vuole operare sullo stile di rappresentazione. GEOforUS – Geography & Technology Network – www.geoforus.it 9 Prima di apportare alcuna modifica è necessario mettersi in scrittura nella partizione del database dedicata agli stili. A questo scopo premere il bottone e quindi selezionare il “semaforo” verde. Si sottolinea come anche questa partizione sia gestita a versioni. E’ pertanto possibile gestire stili diversi per differenti utenti o finalità. Selezionare quindi gli oggetti (nel caso dell’esercitazione le tre nuove classi di oggetto “Centro Abitato”, “Strada” e “Comune”. Sulla parte principale dell’interfaccia vengono mostrate le geometrie assegnate a quella classe di oggetti (Smallworld prevede la possibilità di associare geometrie multiple agli oggetti, anche in “mondi” diversi rispetto a quello geografico della mappa”). Vengono anche mostrate tutte le Display Scale definite. Per Display Scale si intende un nome arbitrario con il quale si intende definire un range di scale, ad esempio Intervallo di scale di visualizzazione Display Scale 1:200.000 1:50.000 Satellite 1:50.000 1:20.000 Lontano 1:20.000 1:5.000 Normale 1:5.000 1:1.000 Vicino > 1:1000 Molto vicino In base alla tipologia di geometria assegnata all’oggetto, facendo doppio click sul mouse sullo spazio bianco posto nella casella di ogni Display Scale si apre un pannello contestuale che consente di inserire lo stile desiderato. GEOforUS – Geography & Technology Network – www.geoforus.it 10 E’ possibile modificare colore, stili di riempimento e di disegno e, nel caso di elementi puntuali, disegnare il simbolo attraverso un apposito editor. E’ altresì possibile utilizzare immagini (es. bitmap o GIF) come simboli puntuali e tematizzare lo stile di rappresentazione in base ad un attributo dell’oggetto. Nella figura che segue, ad esempio, l’ipotetico oggetto condotta ha stili diversi in base al campo “Stato”. Una volta completate tutte le modifiche necessarie, eseguire il commit attraverso il bottone . Nella maschera dello Style System si sarà notata la voce “Style Group”. E’ infatti possibile creare più gruppi di stili che possono essere utilizzati da funzionalità diverse. L’esempio più tipico è quello della creazione di uno Style Group apposito per la stampa, con rappresentazioni ottimali per essere utilizzate sulla carta. GEOforUS – Geography & Technology Network – www.geoforus.it 11 Importante sottolineare come la modifica di uno stile sia visibile in tempo reale sulla mappa, al successivo refresh (o zoom o pan). 5) Gestire la legenda Smallworld è dotato di un completo tool di stampa accessibile da Tools Layout. Si apre una nuova applicazione che permette di gestire le stampe e creare template predefiniti. GEOforUS – Geography & Technology Network – www.geoforus.it 12 Per aprire un template di stampa precedentemente salvato premere File Open e selezionare il template. Qualora non si abbia a disposizione un template, crearne uno ex novo secondo i passi che seguono: attraverso il bottone posto nella parte inferiore dell’interfaccia, tracciare l’area del template che sarà destinata a contenere la mappa Con il tasto destro fare click al centro della Viewport (così si chiama la porzione dedicata alla mappa) e selezionare la voce “Map Viewport”. A questo punto si torna in automatico alla mappa principale in cui viene collocata una maschera da cui inserire i parametri che si ritengono opportuni ed eventualmente aggiustare la vista. Una volta soddisfatti del risultato, premere dalla maschera posta alla destra della mappa il bottone “Map Viewport” GEOforUS – Geography & Technology Network – www.geoforus.it 13 Sempre nella parte inferiore dell’interfaccia è posto il bottone che consente di inserire una legenda. Selezionato tale strumento, definire nel template l’area destinata ad ospitare la legenda. Automaticamente viene quindi inserita una legenda dinamica con gli oggetti riportati in mappa. La barra degli strumenti posta nella parte inferiore dell’interfaccia serve inoltre ad inserire altri importanti elementi: • Campi di testo a riempimento manuale o automatico (autore, comune, data, etc.) • Stampa dei dettagli di una o più classi di oggetti GEOforUS – Geography & Technology Network – www.geoforus.it 14 • • • Scritte e graficismi Freccia vs Nord Scala, etc. 6) Organizzare la vista Come già detto vi sono differenti elementi che è possibile configurare nella visualizzazione di dati geometrici. Dal punto di vista più “operativo” però una delle più importanti impostazioni è quella della visibilità dei diversi strati informativi alle scale differenti: man mano che ci si avvicina ci si aspetta che il dettaglio dei dati visualizzati cambi e le informazioni siano sempre più facilmente fruibili per via grafica. Oltre a queste impostazioni, che Smallworld può gestire anche a livello di utente attraverso l’ACE (Application Control Environment), esiste anche la possibilità, in qualsiasi momento, di spegnere/accendere la visibilità di determinati oggetti attraverso l’Object Control, strumento collocato nell’interfaccia utente e facilmente fruibile. Per modificare le impostazioni a livello di ACE, dalla applicazione di amministrazione (la stessa già utilizzata per la gestione degli stili di rappresentazione degli oggetti) selezionare la voce ACE Configuration. A questo punto mettersi in scrittura (anche tali impostazioni sono gestite a versioni) e il semaforo verde che compare nellla maschera successiva. Dall’elenco tramite il bottone sotto riportato lasciare selezionata la voce “Default”. Premere quindi . Dal pannello appena aperto selezionare “Smallworld Core” nella voce SOC Definition e il dataset in cui ci sono gli elementi di cui si desidera gestire la visibilità. GEOforUS – Geography & Technology Network – www.geoforus.it 15 Per impostare la visibilità di ogni singolo oggetto alle diverse Display Scale selezionare nella matrice la cella corrispondente a oggetto Scala, assicurarsi che le voci siano tutte selezionate e quindi premere Set Selection e poi Update. Chiudere la maschera con Quit quindi salvare le modifiche con . Per ottenere le modifiche operative, dall’interfaccia principale (quella in cui è collocata la mappa) andare sul tab Object Control (posto sulla destra della mappa) e premere il bottone . Per modificare dinamicamente la visibilità degli oggetti e spegnere/accendere diversi strati informativi, dall’Object Control è possibile spuntare i diversi oggetti o le geometrie dei diversi oggetti. Si noti che ci sono 3 possibilità di selezione: la prima spegne/accende l’oggetto sulla mappa, la seconda lo rende “agganciabile” da altre geometrie mentre la terza lo rende selezionabile e quindi ne consente la consultazione dell’editor. Nota bene che le modifiche fanno riferimento alla Display Scale selezionata nel menu a tendina posto nell’Object Control. Se si desidera che le modifiche interessino tutte le Display Scale, selezionare la voce “All”. GEOforUS – Geography & Technology Network – www.geoforus.it 16 Se si vuole bloccare la Display Scale indipendentemente dalla scala di visualizzazione a cui si è realmente, premere il bottone . 7) Navigare sui dati I comandi per la navigazione dei dati geografici si trovano tutti sulla barra posta immediatamente sopra alla mappa. L’utilizzo dei comandi di zoom, pan e refresh è assolutamente standard e ricalca il comportamento di qualsiasi altra applicazione cartografica. Il bottone di trail (il secondo da sinistra) permette invece di tracciare sulla mappa una polilinea che può servire per identificare la geometria di un record che si sta inserendo/aggiornando oppure per delimitare una porzione di territorio, ad esempio, oggetto di query. I parametri del trail che si sta tracciando sono visibili nella parte inferiore dell’interfaccia. In questo modo il trail può essere utilizzato anche come strumento di misurazione. 8) Interrogare i dati Il sistema mette a disposizione strumenti che guidano l’utente nella realizzazione di filtri per la ricerca. I risultati prodotti possono essere facilmente esportati su documenti di testo, su fogli di calcolo o direttamente su basi di dati di tipo MS Access attraverso lo strumento Smallworld Explorer. Nell’esempio seguente è stata effettuata una ricerca di tutte le condotte in Ghisa e che ricadano entro una certa area. Si apre il menu Query Query Wizard. A questo punto una procedura guida passo passo l’utente alla creazione della query. Il primo pannello consente, se ritenuto necessario, di salvare la query per utilizzarla in futuro. Tale funzionalità è utile nel caso di ricerche complesse. Le maschere successive configurano la ricerca per poi aprire l’Explorer con tutti i risultati ottenuti. Nel menu Query posto sulla barra dei menu dell’applicazione sono inseriti altri strumenti di ricerca che consentono di effettuare la query introducendo direttamente uno statement SQL o uno script senza passare per il wizard. GEOforUS – Geography & Technology Network – www.geoforus.it 17 Francesco Mete EBWorld SRL Via degli Olmi 16-4, 61122 Pesaro Tel. 0721/25089 335/7539636 e-mail: [email protected] GEOforUS – Geography & Technology Network – www.geoforus.it 18