Primeres consultes amb el QGIS

En aquest post, veurem com es fan consultes bàsiques com ara la població que viu a cada illa  o parcel·la de la ciutat de Mataró. El QGIS permet fer uns mapes temàtics molt clars. Per tal de realitzar aquesta consultes, hem de seguir els següents passos:

Primera consulta: habitants per illa

El primer pas és incloure en el nostre projecte la capa de illes i el padró de la ciutat. Un cop fet això, farem un join d’aquestes dues taules utilitzant el camp que tenen en comú: “D_S_I”. Fem la unió dins les propietats de la taula padró.

1. Afegim la connexió.

2. Escollim la taula ‘illes’ i el camp en comú.

Ja tenim la unió feta.

Un cop feta la unió, calculem el número d’habitants que té cada illa de la ciutat. Per tal de realitzar aquesta consulta hem d’utilitzar la funció “GroupStats”. En el cas que no la tingueu, heu d’instal·lar el plug-in.

Un cop aquí, hem d’arrossegar els paràmetres amb els quals volem treballar. En el nostre cas seran els següents: D_S_I i ID1, i també amb l’operador ‘count’, i els disposarem en les diferents files i columnes:

Un cop fet, executem la consulta i obtindrem la següent taula:

Seguidament, exportem la taula en un arxiu .csv i la incorporem en el projecte QGIS en el que estem treballant.

Seguim fent un join per tal de connectar les taules ‘Illes’ i ‘Count_Taules’ i així poder fer el mapa temàtic.

Posteriorment, canviem l’estil de les propietats de la capa “Illes” per tal que mostri les dades de població de cada illa de la ciutat.

Obrim la pestanya d’estils de la capa i el que hem de fer és canviar la pestanya superior de “Símbol únic” a “Graduat”, triar la columna amb les dades de població i clicar el botó de “classificar”. La funció d’aquest darrer botó és fer un classificació de les dades que es mostren i identifica cada interval amb un color diferent.

El QGIS ofereix grans possibilitats a l’hora de fer mapes temàtics com per exemple podem afegir o treure intervals i canviar el color identificatiu interval segons convingui.

Apliquem els canvis i ja tenim el mapa llest per ser consultat.

Segona cosulta: habitants per parcel·la

Per a realitzar aquesta consulta hem de seguir uns passos molt similars als que hem seguit abans. El primer pas és fer un join de les taules “Padro” i “parcel” que comparteixen l’atribut “REFCAD”. Realitzem aquesta acció des de les propietats de la taula Padro.

Afegim una nova conexió premen el botó “+” i seleccionem la capa de les parcel·les. Seguidament esollim els camps en comú i creem la unió.

Hem d’obtenir aquest resultat:

Un cop feta la unió, calculem el número d’habitants que té cada parcel·la de la ciutat. Per tal de realitzar aquesta consulta hem d’utilitzar la funció “GroupStats”. En el cas que no la tingueu, heu d’instal·lar el plug-in.

Li donen les instruccions necessaries per tal d’obtenir el resultat correcte:

I el resultat que obtindrem serà el següent:

Seguidament, exportem la taula en un arxiu .csv i la incorporem en el projecte QGIS en el que estem treballant.

Un cop fet això, només queda fer la unió d’aquesta taula amb la capa de les parcel·les i donar-li un estil graduat per tal d’obtenir el resultat desitjat en el mapa.

 

Aquí fem la unió de les taules.

Aquí canviem l’estil de les diferents categories que hi han i el resultat és el següent:

Elements de Simulació en l’Anàlisi Urbà

Activitats Econòmiques

El mòdul per visualitzar les activitats econòmiques, tal com ja es va explicar en aquest Bloc, permet a més a més de ubicar les activitat segons una llista de descriptors, definir tambè una zona d’influència i representar mitjançant un mapa temàtic la població que es troba a fora d’aquesta zona d’influència.

Característiques interessants de la representació són el poder escollir com a zona d’influència, la que hi ha a l’entorn del Graf de Trams de Carrer (GTC) que es genera al recòrrer a peu en distància o en temps a partir del punt on es desenvolupa l’activitat, igualment es pot escollir si es vol generar el mapa temàtic de la població exclosa i altres paràmetres de la generació del graf.

S’utilitzarà un mòdul del CCU que permet conèixer quin tant per cent de la població, possible usuària un recurs determinat, es troba dins d’una zona d’influència determinada pel desplaçament a peu, mesurada en distància o en temps. És el mòdul anomenat ‘Mesura de la Població Afectada’

Cas1: Panaderies o pastisseries amb la Zona d’Influència GTC que es genera anant 3 minuts a peu, i la població externa, segmentada per ILLES de cases. Vegeu la figura 1

Fig 1. Zones d’Influència GTC de 3m a peu i població exclosa: Forns de Pa

Cas 2: Peixeteries amb les mateixes condicions de 3m a peu. Vegeu la figura 2.

Fig 2. Zones d’Influència GTC de 3m a peu i població exclosa: Peixateries

Fig 2. Zones d’Influència GTC de 3m a peu i població exclosa: Peixateries

Cas 3: Papereries i llibreries en les mateixes condicion de 3m a peu. Vegeu la figura 3.

Fig 3. Zones d’Influència GTC de 3m a peu i població exclosa: Papereries i Llibreries

Tal com es pot veure en les corresponents figures en el cas dels forns de pa és difícil trobar zones on instal·lar un nou forn de pa que no estiguin dins de les arees d’influ-ència dels anteriors, encara que sí que n’ni ha en alguns punts de la ciutat. En el cas de les peixateries ja és molt més fàcil trobar-ne i en el cas de les papereries està en un punt intermig.

En aquest darrer (figura 3) cas hem volgut posar de manifest una altra de les possibi-litats del mòdul que és representar el punt on es troba l’activitat amb un tamany que és proporcional al tamany real en metres quadrats del local, exagerant una  mica l’escala del punt.

Simulació de la incorporació d’una nova activitat. Cas de les Peixeteries

En el mapa de la figura 2 podem veure a baix de tot que hi ha una zona molt poblada (ILLES més fosques) on no hi ha cap comerç d’aquest tipus. Simulem per tant que sobre un nou comerç en el punt que mostra la figura 4, encara sense zona d’influència delimitada.

Fig 4. Simulació d’una nova peixateria (punt vermell sense ZI)

Amb l’eina corresponent simulem la Zona d’Influència GTC visualizant el temàtic per ILLES de població exclosa i el tant per cent de cobertura. Figura 5

Fig 5. Simulació d’una nova peixateria amb ZI-GTC i temàtic de població exclosa

En el primer cas obtenim una cobertura del 58.15 % i en el segon del 60.53 %

Fragment del Quadre de Diàleg del mòdul 'Població Afectada'. Sense la Nova Peixateria

Fragment del Quadre de Diàleg del mòdul. Amb la Nova Peixateria

 

 

 

 

De manera que si ho volem saber exactament quants habitants hi ha a menys de 3 minuts d’aquest nou emplaçament tindriem:

(60.53-58.15)*123.744=2945 habitants

Àrees d’Influència d’Equipaments

El mateix que s’ha fet amb activitats econòmiques o comercials es pot fer amb equi-paments que realitzen un servei determinat. Ara es veurà un exemple amb els Centres d’Assitència Primària.

Suposem que tenim uns Centres d’Assistència Primària i volem saber la població que es troba a menys de 5 minuts a peu seguint el Graf de Trams de Carrer. En principi fem la representació dels entorns de cada centre i a 5 minuts, vegeu la figura 6

Fig 6. Zones d’Influència GTC a 5m dels CAP

Mitjançant el mòdul corresponent podem saber el tant per cent de a població total que està dins d’aquestes Zones d’Influència a 5 m del corresponent CAP. La interfície la podem veure a la figura 7

Fig 7. Quadre de Dialeg per a Definir la Zona d’Influència GTC i calcular la població inclosa. En aquest cas un 28.3 % del total d’usuaris potencials

Fixem-nos que el càlcul s’efectua a partir de la segmentació de la població per parcel·les tal com mostra la figura 8 amb un detall de mapa amb les ZI i les parcel·les que hi són en contacte.

Fig 8. Detall del procediment de calcul de la població a partir de la segmentació en parcel•les.

A efectes de simulació de possibles escenaris podem posar un nou CAP i tornar a fer els càlculs anteriors. El resultat és una cobertura del 32,11 % com mostren les figures 9 i 10

Fig 9. Simulació de la inclusió d’un nou CAP

Fig 10. Quadre de Diàleg amb Població Afectada. Simulació de nou CAP.

Tal com s’ha dit podem saber igualment la quantitat de població que es veurà bene-ficiada per aquest equipament en les condicions de proximitat que ens interessi, i anar-ho repetint per a qualsevol emplaçament que es vulgui testejar.

(32,11-28,3)*123.744= 4629 habitants

Aquestes eines gràfiques d’anàlisi no solament poden ajudar a tenir una fotografia més exacta del significat de tenin un equipament o una activitat en un lloc concret de la ciu-tat sinò que ens permeten visualitzar els efectes de tots els canvis i modificacions que es facin sobre tots els ciutadans o els usuaris en particular

Iniciació al software QGIS (Quantum GIS)

Fins ara, en el CCU s’ha treballat en un entorn Windows-Geomedia fent la programació en Visual Basic degut a la gran facilitat d’ús d’aquest entorn i a la seva generalització en tots els àmbits tant de l’Empresa Privada com de l’Administració. Però, darrerament, el Programari Lliure s’ha anat obrint camí allà on abans només hi havia programari de propietari. Malgrat tot, encara resten molts inconvenients pels usuaris del Programari Lliure que s’han d’anar superant.

En aquest sentit, s’ha començat un projecte que té com a finalitat el pas total de tota la operativa desenvolupada en l’entorn Geomedia a Programari Lliure, i concretament els mòduls funcionals que s’han anat creat com a plug-ins del Geomedia.

Així doncs, en aquesta primera entrada es parla del QGIS com a alternativa al GIS de desktop Geomedia Professional i s’explica de la forma més entenedora possible els primers passos per iniciar-se en aquest nou entorn.

Aquest nou entorn a treballar és el Programari Lliure QGIS. És un Sistema d’informació Geogràfica (SIG) de codi lliure per plataformes GNU/Linux, Unix, Mac OS i Microsoft Windows. Permet gestionar formats raster i vectorials a través de les biblioteques GDAL i OGR, així com altres bases de dades.

QGIS permet construir d’una forma més senzilla i gràfica models que realitzen les mateixes funcions que, actualment, desenvolupen els mòduls utilitzats al GeoMedia. I el més important, l’elaboració d’aquests models al QGIS es realitzen en molt menys temps que si es volgués fer amb el GeoMedia, tot i que requereixen un elevat temps previ d’investigació. A més, QGIS ofereix una àmplia gamma de funcionalitats que el GeoMedia no ofereix.

Per tant, la finalitat d’inicar-se en aquest nou programa és acabar substituint l’actual programa que es fa servir, el GeoMedia Professional.

Primers passos en el QGIS.

El primer que s’ha de fer en executar per primera vegada el programa, és carregar en la llegenda totes aquelles capes que siguin necessàries per poder treballar i realitzar les corresponents consultes.

En aquest cas, es carreguen dos tipus de capes:

  • Vector Layer: Es tracten d’arxius tipus “shape”. Aquest arxius són aquelles capes que tenen alguna forma geomètrica (punt, línia, polígon). Exemples d’aquestes capes són les illes, les parcel·les, els  números de policia, les entitats base, etc. Per efectuar la càrrega, primer de tot s’han d’exportar aquests “Arxius Shape” des del GeoMedia.
  • Delimited Text Layer: Es tracten d’arxius tipus “CSV”. Per tant, són arxius en format taula, on dins d’aquestes, es troba una sèrie d’informació que serà necessària per efectuar futures consultes. Igual que amb els Arxius Shape, també s’han d’exportar des del GeoMedia.

1. Afegir les capes “Vector Layer” al QGIS

  • El primer pas a seguir, es exportar les capes des del GeoMedia. Un cop dins del GeoMedia Professional, es realitza l’exportació de les capes que interessi.

Fig. 1. Exportació dels arxius shape.

  • S’indiquen aquelles capes que es vulguin exportar, per exemple, les illes, i es clica en “Aplicar”.

Fig. 2. Exportació de les Illes.

  • Un cop s’han exportat les capes des del GeoMedia, s’executa el QGIS i s’importen aquestes capes. Es clica en “Add Vector Layer”.

Fig. 3. Importar capes en format shape.

  • Es busca la ubicació de l’arxiu i es polsa en “Open”.

Fig. 4. Importar capes en format shape.

  • A continuació, apareix la capa “Illes” en la llegenda del QGIS i per tant, es mostra per pantalla tot el mapa de Mataró.

Fig. 5. Mapa de Mataró (Illes).

  • És molt important indicar en cada capa que s’afegeix, el seu sistema de coordenades de referència (ha de ser el mateix que el del GeoMedia: EPSG:23031 – ED50 / UTM zone 31N). Si s’afegeix  una capa, i per defecte no té  aquest sistema de coordenades, la capa no es mostrarà en pantalla. Per fer això, es fa doble clic a sobre de la capa i es va a la pestanya “General”.

Fig. 6. Canviar Sistema de Coordenades.

  • Repetir aquests passos per totes aquelles capes que es vulguin afegir.

2. Afegir les capes “Delimited Text Layer” al QGIS

  • Igual que s’ha fet amb les capes “vector layer”, primer de tot s’han de realitzar les exportacions d’aquelles taules que es vulguin fer servir al QGIS des del GeoMedia. Però, en aquest cas, no existeix una opció al GeoMedia per poder fer-ho directament. Les taules que es desitgin exportar per afegir-les posteriorment al QGIS, han d’estar en format CSV, és a dir, delimitades per comes. Això es pot realitzar des del mateix Excel. Per tant, una opció per dur a terme l’exportació, és anar a buscar la taula que interessi en la base de dades (BBDD) que utilitza el GeoMedia per la taula en concret. En aquest cas, es farà l’exportació de la Taula Resum, que es troba en la BBDD “Padro28Feb14”.

Fig. 7. Exportar les taules a l'Excel.

  • Un cop realitzada l’exportació de la taula des de l’Access, s’obre l’arxiu generat en Excel i es guarda en “CSV (delimitado por comas)”.

Fig. 8. Guardar en format csv.

  • Ara, un cop dins del QGIS, es procedeix a carregar les taules exportades. Es clica en “Add Delimited Text Layer”.

Fig. 9. Importar capes en format CSV.

  • Es busca la ubicació de l’arxiu, es seleccionen les opcions “First record has field names” i “No geometry (attribute only table)” i es clica en “OK”.

Fig. 10. Importar capes en format CSV.

  • A continuació, apareix la capa “Resum” en la llegenda del QGIS i es pot comprovar que tota la informació que conté la taula és correcte. Per fer això, es clica amb el botó dret del ratolí a sobre de la taula i es selecciona “Open Attribute Table”.

Fig. 11. Comprovar informació correcte.

  • Repetir aquests passos per totes aquelles capes que es vulguin afegir.

Editar elements de la llegenda

Un cop ja s’han carregat en la llegenda del QGIS els elements corresponents (entitats, illes, taules…), aquests elements poden ser editats i visualitzar les seves propietats. A continuació, s’explica com fer-ho per l’entitat “Escoles Bressol”, que prèviament ha hagut de ser carregada a la llegenda de la mateixa manera que s’ha fet amb les Illes, seguint el mateix procediment.

  • Si es fa activa la capa de l’entitat “Escoles Bressol” perquè es visualitzin per pantalla, es pot consultar informació de cada una de les escoles que es troben a Mataró. Per fer això, s’ha de clicar a “Identify Features” que es troba en la barra d’eines superior.

Fig. 12. Consultar informació.

I a continuació, clicar a sobre del mapa a l’Escola Bressol que es vulgui consultar i apareixerà una sèrie d’informació.

Fig. 13. Informació de l'Escola Bressol.

  • Una altra manera de visualitzar la informació de les Escoles Bressol sense haver d’anar clicant una per una, és clicar amb el botó dret a sobre de “EscolaBressol” que es troba en la llegenda i seleccionar “Open Attribute Table”.

Fig. 14. Open Attribute Table.

S’observa com es visualitza la taula amb tota la informació de cada una de les Escoles Bressol.

Fig. 15. Informació de les Escoles Bressol.

  • Si el que es vol es visualitzar les propietats de les entitats, el que s’ha de fer és pitjar amb el botó dret a sobre de “EscolaBressol” i clicar a “Properties”.

Fig. 16. Propietats de les Escoles Bressol.

En la següent entrada d’aquest bloc, s’explicarà com construir un model des del QGIS que realitzi les mateixes funcions que, actualment, realitza en el GeoMedia.

 

Sobre la Generació de Taules de Proximitat

 

 

En anteriors entrades ja hem parlat del Graf de Trams de Carrer (GTC). El GTC és un conjunt de segments connectats per nodes per on poden circular els vianants de la ciutat per fer els seus trajectes a peu dins de la vila (vegeu l’entrada: ‘Sobre el Graf de Trams de Carrer (GTC) ‘).

També es va veure com mitjançant unes característiques pròpies dels segments del graf podem saber la distància mínima entre un punt qualsevol, normalment una adreça qual­sevol, i un centre proveïdor de servei (CAP, Escola, Centre Cívic etc.), això ens va por­tar al un nou concepte de Zona d’Influència basat en la distància sobre el GTC o en el temps necessari per recórrer aquesta distància (vegeu l’entrada: ‘Nou concepte de Zo­nes d’Influència lligat als desplaçaments de la població’).

El GTC és un graf orientat i d’aquí ve que en els seus segments podem tenir informació del Cost (temps que triga una persona en recórrer el segment anant a una determinada velocitat quan va en el sentit del tram) i Cost_invers (temps que triga quan va en sentit contrari), això també es pot aplicar a una población segmentada segons l’edat, ja que presumiblement la velocitat será diferent per una persona de 25 anys que per una per­sona de 65.

Una de les possibilitats que té el GTC dins del Geomèdia (GM) és la utilització d’eines de rutatge, com el Geomèdia Transportation Mànager (GMTM) que ens permeten, a més a més de generar el propi graf, calcular els camins més curts o òptims segons una determinada funció cost entre dues o més entitats o Classes d’Entitat (taula o conjunt d’entitats del mateix tipus). Una de les característiques del GMTM que es va desenvo­lupar és la possibilitat de generar cobertures a partir d’unes classes d’entitat inicials que ens van facilitar la construcció de l’eina per generar les Zones d’Influència basades en el GTC que ja s’ha descrit.

L’explotació de totes les possibilitats de trobar camins entre entitats a través d’un graf, si no es vol efectuar el càlcul directament en el moment, o si no es disposa dels ele­ments de càlcul ‘on line’, ens porta a la generació de taules amb tots els camins entre les entitats origen i les entitats final, que anomenem ‘Taules de Proximitat’.  Després per obtenir determinats trajectes només haurem de consultar la taula corresponent, sense necessitat de disposar de les eines de rutatge i ni tan sols l’entorn del GM.

Per la creació d’aquestes taules es va construïr un mòdul del GM anomenat ‘Generació de Taules de Proximitat’ que anem a descriure tot seguit [Aquest mòdul formava part del Projecte Final de Carrera de Eric Belando que va presentar el 2011 a la EUPMt per obtenir el Títol d’Enginyer Tècnic Industrial] . El format del Generador de Taules és el d’un formulari on haurem de plasmar les entrades i les opcions d’aquest càlcul, vegeu la figura 1.

Fig 1. Interfície d’usuari per la Generació de Taules de Proximitat

Anem a repassar les tres seccions que es poden veure en aquest formulari

ENTRADES

  • Entitats  ‘origen’ ,des de les quals volem accedir a les entitats proveïdores d’un servei, aquestes poden ser entitats puntuals, com ara els números de policia o portals a peu de carrer, que podem resumir en una adreça determinada tipus Nom de Carrer i Numèro de Carrer. Un altre tipus d’entitats genèriques de la ciutat poden ser les Illes de cases, o també les Parcel·les, en aquest cas serien entitats tipus àrea. Com que per fer el rutatge necessitem una entitat puntual d’origen, en el cas de les entitats tipus àrea s’agafaria el centroide. De totes maneres l’aplicatiu pot funcionar amb qualsevol tipus d’entitat origen, parades de bus, contenidors d’escombreries etc.
  • Entitats ‘destí’, cap a on es dirigeixen els camins que surten de les entitats ori­gen, aquestes entitats serien les que proveeixen d’un servei: Centres d’Assistència Primària, Escoles etc.
  • Graf de Trams de Carrer que utilitzarem. S’han de donar dues classes d’entitat: segments i nusos. El graf ha de tenir informació dels valors de les variables Cost i Cost_invers de cada segment i si es volen calcular taules amb segmentació d’edats hem de tenir aquests mateixos valors de Cost i Cost_invers per a cada segment d’edat. Per això hi ha l’opció d’escollir el GTC que en interessi.

PARÀMETRES

  • S’ha d’indicar si volem generar la taula agafant com a criteri de proximitat la dis­tància (camins de les entitats ‘origen’ fins a les entitats ‘final’ que siguin més curts en distància) o bé el temps  (camins de les entitats ‘origen’ fins a les enti­tats ‘final’ que siguin més curts en temps).

Si hem agafat com a criteri el temps haurem d’escollir si volem segmen­tació per edats o no (si és així el GTC l’ha d’incloure).

  • Nombre d’entitats a les que volem generar camins per ordre de proximitat. Ca­mins a 4 les Escoles Bressol (EB), per exemple, més properes. En aquest cas de cada entitat ‘origen’ hi haurà 4 camins a les 4 EB més properes.
  • Paràmetres interns de la generació de taules. Com ara quina ha la distància mà­xima de les entitats ‘origen’ al GTC per possibilitar el rutatge. O els les agrupa­cions d’entitats que podem fer com a bloc de càlcul.

SORTIDES

  • A quina connexió del GM volem posar les taules que generem com a sortida.
  • Els noms que tenen cada una de les dues taules que generem. Una taula de trajec­tes, o camins, per tant amb geometria de línia. I una taula sense geometria on només posem les dades de la proximitat les entitats ‘final’ per a cada entitat ‘origen’, aquesta proximitat pot ser expressada en metres (distància) o en minuts (temps) segons el mètode que hàgim utilitzat

Aquesta  interfície de la figura 1 correspon a la generació de taules de trajectes i proxi­mitat des de les Illes de Cases de la ciutat de Mataró fins a totes les Llars d’Infants (es­coles bressol privades) de la ciutat. Considerant la unitat de mesura el temps empleat en fer el recorregut , per les les persones de menys de 25 anys. Es considera també que cerquem els trajectes i la proximitat a les dues Llars d’Infants més properes a cada Illa de Cases.

A la part esquerra del formulari tenim les ENTRADES on s’ha d’escollir la classe d’entitat de les entitats ‘origen’ i la classe d’entitat de les entitats ‘destí’ i on també s’ha d’escollir l’atribut identificador de cada entitat. Igualment s’ha de seleccionar les dues classes d’entitat del GTC, els segments i els nodes.

A la part central hi ha els PARÀMETRES de les taules que ja hem comentat.

A la dreta hi ha la configuració de les SORTIDES, connexió escollida d’entre les con­nexions actives del GM, i els noms de les dues taules de sortida que estem generant. També hi ha una retroacció del procés que s’està desenvolupant, una barra de progrés abaix de tot i un ‘log’ de quan s’ha acabat de processar cada una dels blocs d’entitats en que s’ha dividit del procés. En el cas de la figura 1, s’ha escollit blocs de 100 entitats i com que hi ha unes 800 i escaig Illes tindrem unes nou línies en la finestra, indicant per a cada bloc en quin moment s’ha completat. Aquest informació ens pot permetre decidir quin format de bloc és més eficient per a cada procés i cada màquina.

 

Fig 2. Generació de la Taula des de cada portal

A la figura 2 veiem el cas de la generació de les taules de trajectes i proximitat des de cada portal, n’hi ha uns 20000, si s’agafen blocs de 100 es necessiten 200 blocs tal com mostra la finestra de seguiment del procés.

També a la figura 3 es mostra la taula generada,  amb el primer camp D_S_I (districte_secció_illa) que correspon de cada Illa de Cases, el segon camp que es veu correspon a l’entitat d’arribada, que està definida pel nom de la Llar d’Infants corresponent, el camp número 4 correspon al temps definit en minuts que es trigaria en anar des de l’Illa del primer camp a la Llar d’Infants del segon camp, la resta de camps indiquen la geometria o sigui el dibuix del trajecte i només els pot interpretar el GM. Com es pot veure per a cada Illa hi ha dos trajectes, són els dos més ‘curts’ a les Llars d’Infants més ‘properes’.

Fig. 3. Taula de les sortides dels trajectes: TrajectesILLES_LI_25a_2

Aquesta  mateixa informació està indicada en un sol registre, en comptes de dos, en la taula de proximitat, on no hi ha cap ‘geometria’. Vegeu la figura 4 on la primera entitat de destí que es troba és la més propera (en temps)

Fig 4. Taula de les sortides de la proximitat: ProximitatILLES_LI_25a_2

En resum aquest mòdul és molt interessant per tenir una base de dades de trajectes o de proximitat en temps o distància, que es poden utilitzar en la publicació ràpida d’informacions que es puguin cercar a partir de ubicacions sobre el mapa de la ciutat o de llistats de domicilis, o d’adreces amb georeferenciació.   Pot ser molt útil per un recurs web, com ara el el servei WFS, del que es pugui obtenir un o varis camins a partir d’una petició d’una pàgina web on hi hagi una ubicació sobre el mapa de mataró. Només cal que, per que la informació sigui actual, les taules es va­gin generant periòdicament, cosa que s’aconsegueix de forma senzilla utilitzant aquest aplicatiu mostrat.

Generador de polígons de Voronoi (2/2)

En l’anterior entrada del bloc s’ha explicat l’aplicació “generador de polígons de Voronoi” des del punt de vista d’un programador, en aquest capítol s’explicarà com funciona des del punt de vista de l’usuari.

Es comentarà tot el procés que ha de fer l’usuari per poder utilitzar el mòdul de forma correcte i treure-l’hi el millor partit possible. Per això també es realitzaran una sèrie d’exemples per que l’usuari tingui la màxima facilitat a l’hora d’entendre el funcionament.

Carregar l’aplicació al Geomedia

Primerament explicaré com carregar el mòdul VB al Geomedia, de tal forma que pugui ser utilitzat per l’usuari.

  • Quan utilitzem el geomedia command wizard , plug-in que serveix per implementar el mòdul visual basic per que pugi ser utilitzar en l’entorn del geomedia profesional, se’ns creen dues carpetes.

Fig. 1. Contingut del nou projecte.

  • La carpeta “src” conté tots els arxius del projecte (mòduls, formularis etc..)

Fig. 2. Contingut carpeta "scr".

  • En la carpeta “bin” trobem l’arxiu .dll que es el que s’haurà d’instal·lar dintre del Geomedia.

Fig. 3. Contingut de la carpeta "bin".

  • Per instal·lar-ho utilitzem l’icona “install” d’intergraph, com podem veure a la següent imatge. Seleccionem la ruta de la carpeta “bin” del nostre projecte i pitgem “OK”.

Aquest procés tan sols s’haurà de fet un primer cop, ja que una vegada instal.lat el mòdul una vegada, per qualsevol canvi en el mòdul tan sols s’haurà de generar una nova dll, amb el procés explicat anteriorment al final del capítol anterior.

Fig. 4. Instal•lació nou mòdul creat.

  • Finalment, s’hi la instal·lació ha estat un èxit, ens hauria de sortir un missatge com el següent.

Fig. 5. Instal•lació satisfactòria del mòdul.

  • Una vegada estem dintre del interface del Geomedia Professional abans de poder provar el nostre mòdul, haurem de fer una mínim una connexió amb una base de dades que contingui classes d’entitat puntual de línia i d’àrea. ja que les tres son necessàries de cara al funcionament del aplicatiu. Per fer la connexió seguim el mateix procés explicat en el capítol 2, apartat Geomedia Professional.

Fig. 6. Addició de les connexions necessàries.

  • Una vegada fetes les connexions necessàries haurem de pitjar sobre un icona que ens apareixerà per defecte com el de la següent imatge. (Si volem tenir el mòdul a un dels menús, s’ha de seguir el procés explicat a L’annex 1).

Fig. 7. Icona per defecte del nostre mòdul.

  • Que ens portarà a la finestra del nostre mòdul, preparat per ser utilitzat.

Fig. 8. Finestra mòdul.

Exemples de la aplicació

En aquest capítol s’explicarà amb exemples el funcionament de la aplicació creada en l’entorn del Geomedia Profesional.

És realitzaran 4 exemples  amb centres proveïdors de serveis (escoles bressol, CAPS, centres de formació primària, Parades de bus) i un especial amb una consulta. Aquests exemples estaran documentats pas per pas i aportant diferents captures per mostrar els diferents punts de vista.

Escoles bressol

Per poder visualitzar el resultat dels polígons de Voronoi de la millor manera posible, haurem de tenir activades a la llegenda un mínim de dos classes d’entitat. Per una banda, l’area que limitarà el Voronoi, en aquest cas, el terme municipal de Mataró i per l’altra la classe d’entitat puntual sobre la que volem crear les nostres zones d’influència, en aquest exemple, seran les escoles bressol. Per això anem a Leyenda>Agregar entradas de leyenda i seleccionem aquestes en els desplegables de les connexions i pitgem el botó “aceptar”.

Fig. 9. Agregació de entrades de llegenda necessàries.

Com podem veure en les imatges, ens apareixeran les escoles bressol situades en el terme municipal.

Fig. 10. Escoles bressol i el terme municipal mostrats a la pantalla.

Si volem saber més detalls sobre les escoles, simplement pitgem a sobre d’una i ens apareixerà un quadre de diàleg com el següents on ens donarà propietats com el nom de l’escola o el numero de places entre d’altres.

Fig. 11. Propietats de les escoles bressol.

Una vegada tenim les classes d’entitat seleccionades a la llegenda, anem al mòdul  i seleccionem en els desplegables “EscolaBressol” com a entitat puntual, “Terme_municipal” com àrea delimitada i “Linies” com a sortida lineal per guardar el resultat del diagrama de Voronoi. Finalment pitgem el botó Calcular Voronoi.

Fig. 12. Omplir desplegables del mòdul per escoles bressol.

Com podem veure obtenim el diagrama Voronoi perfecte sobre les escoles bressol. El diagrama per aquest cas constarà de 17 línies guardades a la classe d’entitat “linies”.

Fig. 13. Polígons de Voronoi sobre les escoles bressol.

Com es pot comprovar, les línies no acaben en el límit del terme municipal, això es deu, ja que l’algoritme de Voronoi sempre es base en un quadrat o rectangle per arribar al punt final de les línies. Per tant en aquest cas calcula un quadrat imaginari amb els punts més alts de l’amplada i l’alçada. Per poder arreglar aquest problema, tenim dos formes de fer-ho des de el Geomedia:

  1. Fent una intersecció espacial:

Anem a Analisis> Intersección espacial .Una vegada dintre haurem de seleccionar  les classes d’entitat de línia i terme municipal i deixar per defecte la opció ” es toquen”. Escrivim el nom final de la consulta resultant i pitgem “aceptar”.

Fig. 14. Intersecció espacial entre línies i terme municipal.

Amb aquesta intersecció aconseguirem el resultat desitjat, com podem veure a la següent captura. El resultat de la consulta com podem veure a la llegenda es una barreja entre línies i àrees.

Fig. 15. Voronoi final sobre les escoles bressol mitjançant intersecció.

2.  Amb la opció dividir entidades.

Pitgem el boto “dividir entidades”.

Fig. 16. Procés dividir entitats (1/3).

Marquem el cursor i seleccionem el mapa amb les línies amb un quadrat.

Fig. 17. Procés dividir entitats (2/3).

Pitgem amb el botó dret a la pantalla i seleccionem la opció “realizar division”. Llavors, et va dividint el terme municipal en seccions de una en una.

Fig. 18. Procés dividir entitats (3/3).

Fins arribar al resultat final on tenim el Terme municipal dividit en regions de Voronoi.

Fig. 19. Voronoi resultant sobre escoles bressol mitjançant divisió d'entitats.

Llavors amb aquest mètode obtenim com a resultat final àrees. Seleccionant a la llegenda la classe d’entitat  “illes” podríem veure les regions d’una forma més visual.

Fig. 20. Voronoi resultant sobre escoles amb la capa d'illes.

Per últim activant la capa de la “ortofoto2013” a la llegenda podem visualitzar els polígons des de una vista Aérea similar a la de Google Maps.

Fig. 21. Voronoi resultant sobre escoles amb la capa "ortofoto".

CAPS

En aquest exemple crearem les regions de Voronoi al voltant dels CAPS de Mataró.

Primer de tot, com hem fet en l’exemple anterior agreguem a la llegenda la classe d’entitat puntual (CAPS)i  l’àrea  delimitant (terme_municipal). Com podem comprovar tenim 8 CAPS tal i com ens mostra la llegenda.

Fig. 22. Caps i terme municipal mostrats en pantalla.

Obrim el mòdul i  com hem fet en l’exemple anterior, seleccionem l’entitat puntual,(CAPS en aquest cas), el terme municipal com a area delimitada i per últim “linies” com a classe d’entitat de sortida per guardar el resultat. Pitgem Calcular Voronoi.

Fig. 23. Omplir desplegables del mòdul per escoles bressol.

Obtenim el  digrama de Voronoi resultant pels CAPS, que conté en aquest cas 14 línies.

Fig. 24. Diagrama de Voronoi sobre CAPS.

Llavors, utilitzant el segon sistema explicat anteriorment (Escoles bressol) per separar el Terme municipal en les regions de Voronoi obtindríem la següent imatge.

Fig. 25. Voronoi final sobre els CAPS mitjançant intersecció espacial .

Agregant la classe d’entitat illes a la llegenda tindríem la següent vista.

Fig. 26. Voronoi final sobre els CAPS amb la capa d'illes .

Finalment amb activant la Ortofoto com en l’exemple anterior, tindríem la vista des de dalt.

Fig. 27. Voronoi final amb la vista Aérea.

Parades de bus

Com als altres dos exemples, agreguem a la llegenda les parades de bus en aquest cas i el terme municipal. Com es pot comprovar a la següent imatge hi ha un total de 144 parades de bus a Mataró.

Fig. 28. Parades de bus i terme municipal mostrats en pantalla.

Seleccionem ParadesBus, Terme_municipal i Linies en els desplegables del nostre mòdul.

Fig. 29. Omplir desplegables del mòdul per Parades de bus.

Una vegada pitgem al botó Calcular Voronoi, obtindrem un resultat com el següent, abans però haurem d’esperar uns segons ja que al haver-hi 144 parades de bus, el programa necessita més temps per executar l’algoritme. Per tant no serà de forma immediata com en els altres dos exemples. Com podem veure  a la imatge s’han necessitat 408 línies per completar el diagrama de Voronoi.

Fig. 30. Diagrama de Voronoi per Parades de bus.

En aquest exemple utilitzem el primer mètode de intersecció espacial per arribar al resultat final desitjat. Anem a Analisis> Interseccion espacial i omplim els camps de la mateixa manera que en l’exemple de les escoles bressol.

Fig. 31. Intersecció espacial entre línies i terme municipal.

Al prémer el botó Acceptar obtindrem el Voronoi final de les parades de bus.

Fig. 32. Polígons Voronoi resultants sobre parades de bus mitjançant intersecció espacial.

Si afegim les illes a la llegenda, l’aspecte ens quedaria de la següent forma.

Fig. 33. Polígons Voronoi resultants amb la capa d'illes.

Apliquem la ortofoto per visualitzar el resultat de la millor forma possible.

Fig. 34. Polígons Voronoi resultants amb la vista Aérea.

Consultes

Aquest mòdul no només es pot utilitzar per classe d’entitats que estiguin a la base de dades connectada. Aquesta aplicació com la majoria de les creades en el CCU també pot utilitzar consultes que estiguin en memòria. La particularitat de la consulta es que pots seleccionar d’una mateixa classe d’entitat les entitats que tu vols, i després executar el mòdul sobre aquella selecció feta.

Si per exemple volem fer el Voronoi dels CEIPcon en el centre Urbà de Mataró com és mostra en la fotografia, hi ha un CEIPcon que quedaria fora d’aquest centre urbà. El problema vindria, ja que al executar el mòdul ho faria per totes les entitats, inclús la que queda fora del territori, per tant una consulta ens pot permetre eliminar aquesta entitat en memoria sense modificar la base de dades i poder realitzar el diagrama de Voronoi de forma satisfactòria.

Fig. 35. CEIPcon i centre urbà en pantalla.

Per crear la consulta desitjada, anem a Analisis>consulta espacial. Seleccionem CEIPcon en el desplegable seleccionar entidades en: . Després haurem de seleccionar la opció “estan contenides en” en el segon desplegable. I Per últim seleccionarem Centre Urba en el tercer desplegable. Finalment introdüirem un nom per la consulta de sortida i pitjarem “Aceptar”.

Fig. 36. Consulta espacial.

Per tant aquesta consulta el que ens farà serà seleccionar totes les entitats de CEIPcon que estiguin dintre del centre urbà.

Fig. 37. Nova consulta espacial representada a la llegenda.

Ara ja podrem utilitzar el mòdul per la consulta desitjada.  Simplement accedim al mòdul i en el desplegable de selecció d’entitat puntual, seleccionem la consulta creada en el sub-desplegable de consultes.

Fig. 38. selecció de la consulta creada al desplegable.

Com en exemples anteriors, seleccionem l’àrea delimitada en aquest cas seria el centre urbà i la classe d’entitat de tipus línia de sortida.

Fig. 39. Omplir desplegables del mòdul per escoles bressol.

Obtenim el Voronoi de forma perfecte sense tenir en compte la entitat exclosa.

Fig. 40. Polígons de Voronoi per la consulta creada.

Utilitzem la opció “dividir entidades” per obtenir el digrama final.

Fig. 41. Polígons de voronoi finals per la consulta creada mitjançant dividir entitats.

 

Mòdul generador de polígons de Voronoi (1/2)

En aquesta entrada es comentarà de forma extensa el nou mòdul del CCU “generador de polígons de Voronoi” des de el punt de vista del programador.

La funció d’aquesta nova aplicació serà la de poder generar zones d’influència per els diversos centres proveïdors de servei en Mataró, així com Escoles, CAPS, parades de bus etc. Aquest sistema s’implementarà amb un mètode geomètric anomenat Voronoi

Els diagrames de Voronoi són un dels mètodes d’interpolació més simples, basats en la distància euclidiana, sent especialment apropiada quan les dades són qualitatives. Es creen en unir els punts entre si, traçant les mediatrius dels segments d’unió. Les interseccions d’aquestes mediatrius determinen una sèrie de polígons en un espai bidimensional al voltant d’un conjunt de punts de control, de manera que dintre de cada polígon o regió la distància a un punt de control associat és sempre menor que a qualsevol altre punt de les altres regions.

Fig. 1. Exemple de diagrama de Voronoi

Algoritme utilitzat

Primer de tot és comentarà l’algoritme utilitzat per du a terme la nova aplicació, trobats a la pagina web de l’informàtic japonès Takashi Ohyam.

http://www.nirarebakun.com/voro/evoro.html

El programa final ha constat  d’una sèrie de mòduls i un formulari.

Fig. 2. Llistat de mòduls i formulari del projecte.

 

Formulari

Primer de tot s’ha creat el formulari, que serà la finestra que apareixerà una vegada pitgem per accedir al mòdul creat. El formulari el podem veure a continuació.

Fig. 3. Formulari de la aplicació creada.

Ara comentaré part per part els diferents desplegables i botons utilitzats en el formulari.

  • En el primer desplegable hem de seleccionar la classe d’entitat puntual sobre el qual volem crear els polígons de Voronoi.

Fig. 4. Desplegable per seleccionar l'entitat puntual.

Fig. 5. Codi relacionat amb el desplegable de selecció d'entitat puntual.

  • En el segon desplegable, haurem de seleccionar la classe d’entitat d’àrea que volem que limiti els polígons de Voronoi. En el nostre cas el terme municipal de Mataró.

Fig. 6. Desplegable per seleccionar l'àrea delimitant.

Fig. 7. Codi relacionat amb el desplegable de selecció d'àrea delimitant.

  • Per últim, seleccionarem la classe d’entitat de línia de sortida. És a dir, on volem que vagin a parar les línies o segments que formaran els polígons de Voronoi finals.

Fig. 8. Desplegable per seleccionar la sortida de les línies dels polígons.

Fig. 9. Codi relacionat amb el desplegable del desplegable de selecció de sortida.

  • Botó “calcular Voronoi”.

Aquest botó el que ens farà serà primerament carregar les dades seleccionades als                 quadres de diàleg del formulari, utilitzant la subrutina “Carregar_dades”.

Fig. 10. Botó calcular Voronoi.

Fig. 11. Codi que va darrere del botó "Calcular Voronoi".

I finalment executarà la subrutina Voronoi_mapa ( que conté l’algoritme ) i d’aquesta manera formarà els polígons desitjats. Aquesta subrutina serà comentada més endavant en l’explicació del mòdul voronoi_code.

  • Botó Sortir

El botó sortir, simplement seria per poder sortir de la aplicació en qualsevol moment.

Fig. 12. Botó sortir.

Fig. 13. Codi que va darrere del botó sortir.

Mòduls

Pel que fa als mòduls, comentaré els dos mòduls principals ( “Obtencio de coordenades”i “voronoi_code”) ja que la resta són creats de forma automàtica quan creem el Geomedia Comand Wizard, que seria el plug-in per tal de poder utilitzar l’aplicatiu VB en el geomedia (Explicat en l’annex II). Tot i que com es veurà més endavant també s’afegeixen algunes funcions necessàries en el mòdul “OperacionsGM”.

Mòdul Obtenció de coordenades

Aquest mòdul és essencial per poder passar al algoritme les coordenades de les diferents classes d’entitats puntuals o serveis sobre les quals haurà de crear les zones d’influència (polígons Voronoi).

El mòdul consta de la subrutina “proximitat”, que li entren els paràmetres rs, entitats.SelectedItem i entitats.ConnectionName procedents de la subrutina “carregar_dades” esmentada al formulari.

  • El primer pas per obtenir les coordenades és afegir a la taula de l’entitat puntual escollida per l’usuari les coordenades X Y d’aquesta. Això és codifica de la següent manera:

  • Generem un recordset afegint a la taula de l’entitat puntual escollida els atributs funcionals que s’han definit anteriorment (Xep, Yep). Un recordset és una estructura utilitzada en programació que permet emmagatzemar informació des d’una taula d’una base de dades.

 

  • Passem el resultat de la consulta (recordset) a una array per les X i per les Y.

  • Obtenim les coordenades en les variables X i Y, que seran utilitzades més endavant en el mòdul Voronoi_code, de cara al algoritme.

Modul Voronoi_code

Aquest mòdul consta bàsicament del algoritme i de subrutines i funcions d’ajuda per que es puguin crear els polígons de Voronoi sobre les coordenades de les classes d’entitats puntuals obtingudes gràcies al mòdul anterior.

La subrutina principal del mòdul és “voronoi_mapa”que podem veure comentada per part seguidament.

  • Primerament, definim les variables i recordsets necessaris per la utilització del programa.

  • Calculem els paràmetres ample i altura que seran utilitzats més endavant en l’algoritme.

  • Establim alguns recordsets necessaris i definim les noves variables utilitzades en l’algoritme. També cridem la funció “borrar_entitat”, que ens permetrà cada vegada que obrim el mòdul buidar la classe d’entitat de línia que he utilitzat per crear el Voronoi anterior.

  • Definim la variable NNN que determina el nombre d’entitats que te la classe d’entitat seleccionada. També  a última hora es van haver d’augmentar el número de posicions dels vectors utilitzats en l’algoritme, ja que en alguns casos on hi havien moltes entitats no acabava de completar l’algoritme per totes elles.

  • Comença l’algoritme amb el següent bucle, ens carrega en memòria totes les entitats en les coordenades corresponents, de cara a crear els polígons.

  • ad(i-1), rep el valor del mòdul de les coordenades X i Y de cada punt i l’utilitza alguns cops en l’algoritme


  • Cridem la subrutina “hSort” passant-li els paràmetres NN, ad, ax, ay calculats anteriorment.


  • Es va executant el gruix de l’algoritme (explicat en l’apartat algoritme i codi inicial) .

  • Finalment amb la funció  Inserta_linia es formen els segments dels polígons a partir d’un punt inicial i un punt final, on les coordenades dels punts serien respectivament x0= kx(k-1) y0= Ky(k-1) i les finals x=kx(k2-1) i y= Ky(k2-1).

Els segments resultants es guarden en un recorset anomenat “Recordset_linia”.

  • Per últim, haurem de mostrar el resultat aconseguit en el mapa i la llegenda

– Seleccionem l’estil de la línia i el nom que li volem posar al resultat.

– Introduïm la entrada de la llegenda en la primera posició

  • Per compilar l’arxiu el programa creat, haurem d’anar a Archivo> generar nomprojecte.dll com podem veure en la següent captura d’imatge. En cas, que no doni cap error de compilació se’ns haurà creat un arxiu ddl i estarà llest per carregar-ho al Geomedia.

Fig. 14. Generar.dll.

Cada vegada que s’hagin fet canvis en el programa, s’haurà de crear una nova dll, de cara a que els canvis sorgeixin efecte en el Geomedia. Com també haurà d’estar tancat el Geomedia Professional m’entres és realitza aquest procés, ja que en cas contrari donarà error.


 


 

 

 

 

 


 

 

Aplicatiu per mostrar trajectes a entitats per ordre de proximitat

En anteriors entrades s’ha comentat la possibilitat de visualitzar la proximitat de la població com també d’obtenir els trajectes existents respecte a una entitat destí. En el nostre cas, s’ha vist aplicat precisament a les Escoles de Bressol Municipals.

Per això, i per la importància que suposa disposar de la informació necessària per tal de determinar si un servei es troba a prop del nostre domicili o bé lluny segons les diverses trajectòries obtingudes al destí desitjat i tenint present, en tot moment, les diverses zones d’influència possibles, s’ha desenvolupat l’aplicatiu de “cerca entitat propera”.

Aquest aplicatiu té la mateixa finalitat que l’utilitzat per cercar els camins a les tres Escoles Bressol més properes, però en canvi, ens permet fer la cerca de qualsevol entitat que es desitgi com també mostrar les dades entre un rang de 1-5 noms d’entitat diferents. Per tant, es pot triar el mode de cerca dels valors d’entre 1 i 5 entitats destí.

Figura 1: Aparença de l’aplicatiu de cerca camins a entitats properes.

Tal i com s’observa, l’aparença de l’aplicatiu és el mateix que l’utilitzat en la cerca de camins a les 3 Escoles més properes, amb la diferència d’haver modificat la grandària de la graella (Datagrid) per tal de poder arribar a visualitzar, en condicions, fins a 5 nom d’entitat diversa.

Per tant, com ja s’ha comentat, aquest nou aplicatiu serveix per indicar els trajectes des de qualsevol adreça de la ciutat a una sèrie d’entitats per ordre de proximitat, i no només limitat a les tres entitats més properes. Igualment el propòsit d’aquest mòdul és verificar les taules de proximitat generades pel mòdul generador de taules de proximitat, sense limitació en el tipus d’entitat ni en el nombre d’entitats properes. Tenint present que la verificació de les taules de proximitat ens és de molta utilitat pensant en la seva publicació via WFS tal com ja s’ha comentat a l’entrada al bloc anomenada: WFS Interacció amb mapes.

Aquesta taula de trajectes de proximitat s’haurà de crear amb anterioritat utilitzant el mòdul “càlcul de distàncies mitjançant el graf” en el qual tal i com s’observa a la Figura 2, es tria el camp d’origen (de quina direcció es parteix) i el camp destí (qualsevol entitat). També és possible triar la unitat de mesura que serà precisament l’observada com a resultat de distància o bé cost de l’aplicatiu. Apareixent els diversos filtres a triar, entre els quals pren importància el número d’entitats que seran amb les quals es farà l’estudi a l’aplicatiu en qüestió i les que es mostraran a la graella i mapa de resultats finals.

Figura 2: Aplicatiu de càlcul de distàncies mitjançant el graf.

Un altre aspecte important és el fet d’emmagatzemar la taula resultant de l’execució del mòdul, doncs s’haurà de triar quin serà el destí de la connexió creant tant la taula de trajectes com de proximitat.

I precisament, un cop es disposi d’aquesta taula, en el següent desplegable dins el mòdul creat s’ha de buscar la connexió on es troba emmagatzemada la BBDD que la conté.

Figura 3: Selecció de la BBDD de trajectes

En el present exemple s’ha creat una taula de trajectòries expressament del Veïnat de Mata tenint com a destí tant Escoles Bressol com Llars d’Infants. I triant 5 entitats destí que es visualitzaran a sobre el mapa com en la graella present a la part inferior de l’aplicatiu.

Figura 4: Incorporació de les dades a fer la recerca dins l’aplicatiu.

Un cop ja s’ha introduït el carrer, el número i la BBDD on es troba la taula de trajectes creada prèviament, s’executa l’aplicatiu: “INICI”.

En la següent imatge s’observa com apareixen les 5 entitats més properes, acompanyades de la distància existent entre el número de carrer (Número de portal) fins les 5 entitats de destí més properes. Aquestes es troben ordenades de més proximitat a menys.

Figura 5: Resultats obtinguts en l’execució.

Tal i com s’observa, apareix la columna del nom de l’entitat com també de la Distància/cost. Aquesta última columna indica la distància existent des del número de policia en la qual ens trobem (Veïnat de Mata, 5) fins a cadascuna de les entitats i que es poden trobar mesurades tant en distància, calculada en metres, com també en cost calculat en temps (segons).

En el present cas, el més pròxim a la situació definida (Núm. Portal 05490005x) és la Llar d’infant Snoopy II (3318 m) i en canvi la que es troba més lluny és el Grup d’Escoles Mataró GEM-Primària (3848m).

En la Figura 6 s’observa sobre el mapa quins són els 5 trajectes a les entitats destí. Cadascun marcat amb un color i gruixut diferent depenent de la seva proximitat fent que sigui més fàcil la visualització i entesa.

Figura 6: Visualització sobre el Mapa els camins a les Entitats obtingudes.

La validesa d’aquests trajectes obtinguts farà que es pugui realitzar posteriorment una publicació via WFS de forma satisfactòria i que per tant sigui possible observar la visualització via Internet (interacció amb mapes).

En resum, el fet de disposar d’aquest aplicatiu permetrà realitzar uns estudis més precisos respecte els diversos trajectes obtinguts disposant de més flexibilitat a l’hora de poder triar el número d’entitats destí, com també es podrà afinar en la cerca del recorregut òptim. Aquesta flexibilitat,  s’observa també en el fet de poder mostrar els resultats tant en distància (metres) com en cost (segons) tal i com succeïa en el mòdul de tria de les Escoles Bressol més properes. El fet de fer servir una variable temporal fa que la mesura obtinguda sigui molt més real respecte a la proximitat a cadascuna de les entitats, però en canvi requereix un model de velocitats més detallat i adequat.

Consultes predefinides sobre l’Activitat Econòmica via WMS

Els serveis de mapes en web (Web Map Service o segons les seves sigles WMS) responen a un sistema de consulta de capes d’informació de forma dinàmica des de la web. Aquests WMS permeten la visualització, combinar o bé consultar una sèrie de dades, de imatges generades a partir d’una o varies fonts (en el nostre cas a través del SIG-Geomedia).

Per poder realitzar la publicació es disposa d’un servidor extern amb el IIS i el GeoMediaWebMap com també es disposa d’una versió del Geomedia  que serà amb el qual es treballarà i el qual permetrà dur a terme les publicacions tant en els serveis WMS com WFS del servidor.

En aquest cas per poder definir les diverses activitats econòmiques que s’han volgut estudiar s’utilitzarà l’aplicatiu anomenat “Mostra les parcel·les que tenen activitat empresarial seleccionada”. Que ens permetrà situar sobre el mapa de Mataró quina és la ubicació de cadascuna de les activitats econòmiques (tal i com s’ha comentat en altres entrades al Bloc).

A la Figura 1 s’observa la llista de les diverses activitats que es poden seleccionar en l’aplicatiu. En aquest estudi s’han realitzat consultes per a: Farmàcies, Forns de pa, Carnisseries, Peixateries i Supermercats o autoserveis. Per tant s’haurà de decidir quin tipus d’activitats es poden incloure per cadascuna de les entitats.

Figura 1: Llista d’Activitats Econòmiques disponibles a l’aplicatiu

En aquest mòdul per realitzar les diverses consultes es treballarà amb els números de policia. I es duran a terme diverses modificacions a les opcions que permetran una visualització al mapa més clara.

Tal i com s’observa la Figura 2 es troben les diverses modificacions realitzades per tal de dur a terme la consulta pel cas de les Farmàcies a 5 minuts. A l’hora de calcular en temps (zona d’influència), a diferència del càlcul de distància, és necessari activar les opcions cost de nusos i cost invers.

Figura 2: Modificacions a les opcions presents a l’aplicatiu

S’obtindran tres resultats per cadascuna de les consultes que es realitzin. Per un costat quedarà definida el nombre d’entitats i la seva ubicació al mapa, també apareixerà la zona d’influència de cadascuna de les entitats (Figura 3). I per últim la població exclosa en cada cas.

Figura 3: Representació zona d’influència (ZI) sobre mapa Mataró

Per cadascuna de les 5 activitats econòmiques s’ha dut a terme una consulta amb una zona d’influència diferent: 150 metres, 300 metres, 2 minuts, 3 minuts i 5 minuts.

Serà necessari exportar aquests resultats a una nova BBDD creada. D’aquesta forma es tindran totes les taules creades per cadascuna de les consultes juntes. Aquesta BBDD un cop creada s’haurà de copiar dins el servidor en el qual es treballa i que permetrà fer la publicació.

Un cop dins el servidor (incorporat la nova BBDD) s’obre el Geomedia i es carreguen els diversos resultats obtinguts amb les consultes. Per fer-ho s’afegeix una nova llegenda i es carrega l’opció que es desitgi (tant pel nombre d’entitats, per la Zona d’Influència i de la Població Exclosa).

Figura 4: Llegenda carregada exemple Supers (Entitat-Zona influència-Població Exclosa).

Per poder realitzar correctament la publicació hauran d’estar totes les consultes carregades i visibles al mapa, ja que el que apareix/es mostra en pantalla és el que s’arribarà a publicar posteriorment. Per tant, ha d’estar visible totalment tal i com s’observa a la Figura 5.

Figura 5: Càrrega de la llegenda i visualització total de les diverses consultes al mapa

A continuació s’inicia el procés de publicació.
En primer lloc s’obre el “Server ConfigurationUtility” del GeoMediaWebMap Professional. I es crea un nou servei seleccionant l’opció “Generate Map Web Service” per crear un servei WMS. Al qual, posteriorment, s’haura d’aplicar el nom que un desitgi.

Figura 6: Generació del Servei WMS dins el Server Configuration Utility

S’ha de tenir present que les metadades que es crearan es guardaran en una base de dades, s’escull Access i s’introdueix quina és la connexió (a on guardar aquesta base de dades creada).

Figura 7: Tria del tipus de base da dades que es desitja

Finalment, i si el procediment s’ha desenvolupat correctament, si es torna a entrar al “Server configuration Utility” es veu com s’ha creat el nostre nou servei dins el Web Service.

A continuació es torna al Geomedia i s’obre el “GeomediaWebMap Publisher Administrator” que es pot trobar a la barra d’eines.

Figura 8: Opció del GeomediaWebMap Publisher Administrator

Es selecciona el Servei WMS que s’ha creat.

Figura 9: Selecció del Servei WMS creat

I apareixerà una barra lateral amb diversos botons.

Figura 10: Les diverses opcions a triar dins el GeomediaWebMap

En primer lloc polsar sobre el 5é botó “PublishandPopulatetheGeoWorkspace”, i seleccionar la primera opció “PublishtheGeoWorkspace contents to theMetaData”. Que ens servirà per tal d’actualitzar les metadades.

Tot seguit s’inicia un procés que dura uns segons apareixent una advertència. Es selecciona “Si” per passar la informació del GeoWorkspace a la base de dades de les Metadades.

A continuació es selecciona el primer botó “Map Content”. On s’observa tot el que es publicarà al servei WMS.

Figura 11: Selecció del botó Map Content

Observar amb precisió que la informació que apareixerà a la Llegenda es correspon amb el que realment es vol i que per tant aquesta informació és visible (prestant atenció als temàtics- Població Exclosa).

En aquest cas, els temàtics tal i com s’observa apareixen correctament (forns de pa amb cadascuna de les divisions segons la població exclosa).

Figura 12: Verificació de la correcte creació dels temàtics

A continuació es selecciona el 2on botó “Settings”. Aquí es realitzarà la comprovació que realment hi ha un sistema de coordenades assignat.

Figura 13: Tria de l’opció Settings dins el GeomediaWebMap

En el cas que no hi sigui serà necessari escollir un sistema de coordenades per a publicar les dades. Es selecciona un arxiu de sistema de coordenades que sigui el mateix que el del GeoWorkspace. Finalment, i un cop triat, apareixerà el sistema de coordenades que s’ha triat a l’apartat SRS.

Figura 14: tria del sistema de coordenades

Per últim, polsar l’últim botó per tancar el “GeomediaWebMap Publisher Administrator”.

Finalment, es torna a obrir el “Server ConfigurationUtility” del GeoMediaWebMap Professional, es selecciona el servei creat i es polsa sobre el botó “Initialize”. Així s’inicialitzarà el servei.

Figura 15: Publisher Server Configuration Utility

Si el procediment s’ha realitzar correctament apareixerà un missatge de “Servei inicialitzat amb èxit”. I per tant s’haurà dut a terme correctament el procediment de publicació.

Figura 16: Procediment final de publicació

A continuació es prova el servei des del navegador introduint la següent línia de comanda:

http://geoportalccu.tecnocampus.cat/wmsAE3/request.aspxservice=wms&request=
getcapabilities

On es comprova el correcte funcionament en el cas de WMS, i on es veu en el codi cadascuna de les consultes realitzades com també les diverses dades publicades (aquesta línia de comanda és diferent pel tipus de publicació que es vulgui realitzar, si és WFS o WMS)

Finalment, per acabar el procés de publicació s’accedeix al Global Mapper i es van introduint cadascuna de les consultes creades per observar com totes les entitats es poden visualitzar correctament al mapa.

Un cop iniciat el Global Mapper seleccionem l’opció “Download Online Data”.

Figura 17: Download Online Data del Global Mapper v14

Tot seguit seleccionem “Add New Source”. Per tal d’introduir el nou servei que s’ha creat anteriorment. I es tria l’opció de dades que en aquest cas és WMS (Web Map Service).

Figura 18: Tria del servei creat al Global Mapper

Es selecciona el següent URL, extret de la verificació de la comanda anterior per internet. I s’acciona el botó “Get List of Available Data Layers”, on apareixeran les diverses entitats.

http://geoportalccu.tecnocampus.cat/wmsAE2/request.aspx

Figura 19: Tria i càrrega de les entitats a visualitzar al mapa

Es tria una d’elles per tal d’observar-la al mapa i s’acciona “connect” per realitzar la visualització.

Finalment i després d’anar realitzant totes les connexions amb les diverses entitats, aquestes haurien de ser visibles alhora al mapa. A continuació-Figura 20 es mostren diverses d’aquestes consultes visualitzades conjuntament (tant el nombre d’entitats, la zona d’influència  i la població exclosa per cadascuna de les consultes) observant d’aquesta forma com la publicació de tots casos ha estat un èxit i ha finalitzat satisfactòriament.

Figura 20: Visualització completa de les entitats al Global Mapper v14

En resum, aquest és el procediment que s’ha dut a terme per tal de realitzar la publicació via WMS  mostrant les eines utilitzades en cada etapa.  Es comença per la creació de les consultes sobre les Activitats Econòmiques seguint l’aplicatiu amb diverses zones d’influència tant per distància com per temps. Es segueix amb el procés de creació del servei i publicació en si mitjançant el GeomediaWebMap Professional. I per últim, la validació de les diverses entitats publicades mitjançant el GlobalMapper.

 

 

 

 

 

 

 

 

 

 

 

Estudi de l’Activitat Econòmica

 

Unes de les aplicacions més sol·licitades dels Sistemes d’Informació Geogràfica (SIG) són les que tenen a veure amb l’anàlisi de l’activitat econòmica (AE), sigui aquesta la corresponent d’una ciutat, d’un territori o d’un país.

De fet la col·locació sobre el terreny de les diferents activitats econòmiques és una informació estratègica de primer ordre, ja que d’una mirada es pot intuir  si d’una determinada activitat, diguem-ne per exemple: restaurants, farmàcies o perruqueries, n’hi ha una concentració exagerada, equilibrada o deficient. Una anàlisi més rigorosa ens permetria saber si d’acord amb la població ‘target’ que hi ha en la seva proximitat i amb els hàbits de mobilitat de la població està justificada o no una determinada oferta en un lloc concret en relació amb la demanda possible. En aquest sentit s’hauria d’anar a esbrinar motivacions sociològiques, moltes vegades difícilment  racionalitzables, per explicar el per què de la presència o no  d’una activitat en una àrea determinada.

De tota manera, una de les motivacions més senzilles de la geolocalització d’activitats econòmiques en un territori, serien les aplicacions anomenades de ‘geo-marketing’, consistents en veure on hi ha ‘buits’ o mancances d’una determinada activitat per impulsar la creació de negocis precisament en aquells indrets.

Un primer punt d’un aplicatiu que respongués a tals característiques seria la ubicació de les activitats econòmiques sobre el mapa de la ciutat, en aquest cas, de la ciutat de Mataró. Aquesta eina per ser útil caldria que oferís la possibilitat de diferents mètodes de cerca de les activitats, sigui pel nom o descripció, sigui pel codi corresponent segons una determinada classificació. També caldria tenir una font de les activitats i un manteniment que permetés afegir amb agilitat les altes i les baixes que es van produint.

Arribats a aquest punt cal dir que el CCU ha treballat i està treballant en la generació d’eines que permetin ubicar les AE sobre el mapa de la ciutat de Mataró, tant pel que fa a parcel·la com a portal.

La font  de la informació de l’AE de Mataró que ha escollit el CCU és la Brossa Comercial (BC). Cada activitat genera un tipus de deixalles específic i això influeix en la tarifa que ha de pagar, i quan es deixi de fer l’activitat el seu titular serà el primer interessat en notificar-ho als responsables de recaptació per deixar de pagar per aquell concepte, per tant la Base de Dades de la Brossa Comercial és una font actualitzada de l’AE a la ciutat. Com a part negativa d’escollir aquesta font hi ha el fet  que l’activitat real que es faci no s’ajusti exactament a la declarada en concepte de deixalles generades.

Respecte al tema de la classificació, en aquest moment s’ha escollit la forma de classificació que la BC utilitza, que és la dels epígrafs de l’antic IAE (Impost sobre l’Activitat Econòmica), amb tendència a anar-ho canviant progressivament cap a la classificació CCAE (Classificació Catalana d’Activitats Econòmiques).

A l’aplicatiu del CCU també es poden visualitzar algunes característiques concretes com ara la superfície de l’activitat i consultar igualment algunes informacions proveïdes per la Base de Dades de la BC. A més a més també es poden consultar d’altres informacions relacionades amb la població que s’aniran explicant tot seguit i que el refermen com a eina analítica a més a més d’informativa.

Anem a concretar una mica tot això. A la figura 1 es pot veure la interfície on hi el cercador on a partir d’un paraula o conjunt de paraules o d’un codi podem anar seleccionant les activitats que es volen mostrar.

Fig 1. Llista d’activitats que podem cercar i seleccionar

Un cop escollida l’activitat, si es tracta de situar els portals on es desenvolupa l’activitat, es pot anar a una altra pestanya per incidir en el tamany del ‘topo’ on es mostra (proporcional a la superfície del local), i fer d’altres mesures relacionades amb la població, com ara definir una zona d’influència(ZI) a l’entorn de la ubicació de cada activitat i mostrar un mapa temàtic de la població que queda fora de aquestes zones d’influència.

Si mirem per exemple les ferreteries, la segona pestanya seria la que mostra la figura 2

Fig 2. Pestanya pes escollir tamany dels ‘topos’ i de la Zona d’Influència i tipus de Z.I

En aquest cas s’ha escollit un factor de forma dels ‘topos’ de 2, àrees d’influència circulars de 150 m de radi i veure el mapa temàtic de la població exclosa. La sortida es mostra a la figura 3 on s’ha fet un zoom sobre el centre urbà de la ciutat i es poden apreciar els indrets de l’activitat, les  ZI circulars i el mapa temàtic de les illes externes a les ZI.

Fig 3. Ferreteries amb ZI de 150 m i temàtic de població exterior

La llegenda corresponent a aquest mapa es mostra a la figura 4:

Fig 4. Llegenda del mapa de ferreteries

En el mapa temàtic de la població, les Illes més fosques corresponen a les de més població i per tant allà on ‘faria més falta’ la instal·lació de noves activitats.

Les ZI es poden escollir també sobre el Graf de Trams de Carrer (GTC), anem a  veure un altre exemple, les farmàcies.

En aquest cas hi ha la possibilitat d’escollir el treballar amb distància o recorregut seguint el GTC o bé amb temps de trajecte, i s’ha triat una zona d’influència de 3 minuts a l’entorn de cada centre d’activitat. La segona pantalla es mostra a la figura 5 i la sortida a la figura 6

Fig 5. Segona pantalla per a les Farmàcies amb ZI-GTC

Fig 6. Sortida de la consulta de Farmàcies amb ZI graf a 3 minuts

En resum la interacció entre la situació de les diferents activitats econòmiques amb la població, segmentada per Illes, permet veure la sobre-presència d’activitats en uns punts de la ciutat així com la no presència en d’altres on hi pot haver potencials usuaris o compradors. També la utilització del graf de trams de carrer graduat per distància o per temps ens dóna una idea molt fidel del concepte de proximitat i ens permet fer un anàlisi més acurat de les necessitats o tendències properes en la instal·lació de noves activitats.

 

 

 

 

 

 

 

Sobre el Graf de Trams de Carrer (GTC)

 

Tal com ja s’ha comentat en aquest bloc quan hem parlat del ‘Nou concepte de Zones d’Influència’, un element bàsic de la modelització dels desplaçaments a la ciutat de Mataró és el Graf de Trams de Carrer (GTC). Aquest graf està format per segments i nodes, cada segment és un tram de carrer (part del carrer entre cruïlles) i els nodes són precisament les cruïlles.

El GTC es pot obtenir de moltes maneres, però en resum hi ha dos orígens bàsics, ad­quirint-lo a una empresa especialitzada (com per exemple Navteq o  TomTom) , on s’inclouran informacions sobre els sentits de circulació en cada via i els girs prohibits i autoritzats en cada nus i moltes altres coses, o bé generant-lo nosaltres mateixos, aquí s’ha optat pel segon cas, més que res per que es vol estudiar més el desplaçament de vianants  que no pas el de vehicles i d’aquesta manera podem afegir i incloure en el GTC trams que no siguin vials de carrer, com ara camins de vianants dins de parcs o zones verdes i recorreguts específics de la gent que va a peu.

Des del punt de vista d’un SIG el GTC està format per un conjunt d’entitats, o classe d’entitat, segons la terminologia del GeoMedia, de tipus lineal, els segments del graf, i un conjunt d’entitats de tipus punt, els nodes. Aquestes entitats lineals han de ser total­ment connexes si es vol navegar al seu través, o sigui, no hi pot haver cap punt de des­connexió o discontinuïtat. També a part de les característiques geomètriques de cada classe d’entitat, línies i punts, cal que hi hagin uns atributs associats a cada element si­gui aquest segment o node.

Quins són aquests atributs?

En primer lloc hi ha d’haver un codi per a cada segment i un codi per a cada node aquests dos codis han d’estar relacionats, és a dir,  dins de cada segment hi ha d’haver informació d’entre quins dos nodes està definit aquell segment en concret, i això per a tots els segments, d’aquesta manera amb aquestes dues llistes la de segments amb els codis dels nodes dels extrems de cada segment i la dels nodes s’estableix la morfologia del graf i es podria calcular una ruta encara que no tinguéssim la imatge geomètrica precisa.

Un altre atribut que podem tenir dins de la taula de segments és sobre l’ orientació o sentit del tram, aquesta orientació és arbitrària i s’agafa en el moment de definir el graf, per tant ens cal saber quin és el node d’origen del tram i quin el node de final del tram, per tant aquests nodes extrems del tram no són qualssevol , un d’ells és des de on parteix el tram i l’altre és a on arriba.

Per la construcció del GTC utilitzem una eina del GeoMedia Transportation Manager que parteix d’una classe d’entitat lineal i ella mateixa et va guiant per acabar obtenint les dues classes d’entitat del graf, els segments i els nodes, automàticament és generen els camps: NodeId en la taula de nodes amb un codi per cada node, i els camps: EdgeId, FromNodeId, ToNodeId en la taula de segments, que ens indiquen el codi de segment, i des de quin node a quin altre node està definit el segment, respectivament. Aquests són els camps principals per la construcció del graf, després n’hi ha uns altres que anirem comentant a continuació. Vegeu a la figura 1 una part dels segments i els nodes del GTC amb els identificadors respectius.

Fig1. Segments i Nodes del GTC amb els codis de EdgeId (vermell) i NodeId (negre)

Si cliquem sobre del tram 1017 obtenim les informacions que es mostren a la figura 2, on es poden comprovar els valors dels atributs EdgeId, FromNodeId i ToNodeId i es pot veure que el tram 1017 efectivament va del node 836 fins al node 837 tal com es veu a la figura 1.

Fig2. Dades del Segment 1017

De la mateixa manera es pot comprovar que hi ha molts altres camps dins dels atributs del tram, fixem-nos de moment en els camps LENGTH i Cost i Cost_invers.

Per què volem el GTC?

Per a dues coses, en primer lloc per a navegar des d’un punt de la ciutat fins a un altre, aquesta navegació ens ha de portar al conjunt de segments concatenats que uneixin el punt inicial amb el punt final segons un determinat criteri d’optimització que podria ser minimitzant la distància o minimitzant alguna altra variable (a la figura 3 es mostren els trajectes a les 3 Escoles Bressol més properes des d’una adreça concreta de la ciutat)  i en segon lloc per desplegar a partir d’un punt el conjunt, ramificat en arbre, de trajectes fins a assolir una determinada distància màxima o un valor màxim d’un altre indicador (vegeu la figura 4)

Fig 3. Trajectes a les 3 Escoles Bressol més properes des d’un punt de la ciutat seguint el GTC. La variable a optimitzar és la distància.

A la figura 4 es pot veure aquesta construcció en arbre, seguin el GTC, a partir de l’entitat: Escola Bressol ‘Les Figueretes’ fins a una distància màxima de 250 m. Com es veu a la figura la progressió fins a assolir els 250 metres pot acabar en un punt entremig del tram.

Fig 4. Arbre corresponent a l’Escola Bressol ‘Les Figueretes’ sobre el GTC (segments i nodes) fins a una distància de 250 m.

Tant en el cas 1, camí o trajecte entre dos punts de la ciutat, com en el cas 2, arbre des­plegat sobre el GTC a partir d’un punt, s’ha utilitzat la distància, el camp LENGTH, de cada segment com a base dels càlculs, això vol dir el camí òptim de distància mínima entre dos punts o el desplegament per la xarxa de trams de carrer fins arribar a fer la distància fixada de 250 m.

Una altra possibilitat seria fer servir una altra variable a minimitzar quan volem definir un camí o a utilitzar quan volem definir un desplegament en arbre, aquesta variable se­ria la que tenim quantificada en els camps Cost i Cost_invers de cada tram. Així com la longitud del tram no depèn de si es recorre en un sentit  o en un altre, en canvi si es tre­balla amb una altra variable, com ara el temps de recorregut del tram, sí que depèn de les característiques específiques de cada tram, com ara el pendent, els obstacles i la ti­pologia (plataforma única, escales, etc.) i en aquest cas té sentit de tenir dos paràmetres per tram, per si es circula en el sentit definit del tram Cost o si es va en sentit contrari Cost_invers. Això pot donar lloc a diferències importants de recorregut o de conjunt de carrers a l’abast si es va de casa a l’Ambulatori o es torna de l’ambulatori, sobretot quan el terreny és accidentat, amb moltes pujades i baixades.

En resum, quan més acurada sigui la informació del GTC, i en concret de cada tram, més es podrà afinar en la cerca de recorreguts òptims i en la definició de les Zones d’Influència a través del graf. De la mateixa manera, la utilització de la variable temps com a funció de cost, ens dona una mesura molt més real de la proximitat o llunyania dels centres proveïdors de serveis al ciutadà però requereix de tenir un bon model de la velocitat en els desplaçaments.