SlideShare una empresa de Scribd logo
Drupal & GIS

Convirtiendo Drupal en un
         GeoCMS


           DrupalCamp Spain Octubre 2011, Sevilla
Mapa de contenidos

1. ¿Qué es un GeoCMS?
2. ¿Es Drupal un GeoCMS?
3. El mundo Geo en Drupal
4. Repaso de algunos módulos
5. Gestión de la información geográfica
6. Las bases de datos espaciales
7. Las posibilidades que abren los GIS
¿Qué es un GeoCMS?

Gestor de contenidos en el que la información está
georreferenciada

La información geográfica es útil y se puede utilizar
para establecer relaciones entre los contenidos

Es posible integrar fuentes externas de información
geografica que pueden aportar un valor añadido
¿Qué es un GeoCMS?
¿Qué es un GeoCMS?
¿Es Drupal un GeoCMS?




NO
¿Es Drupal un GeoCMS?




NO
Pero con matices...
¿Es Drupal un GeoCMS?

● No tiene soporte nativo para la georreferenciación

● No se pueden establecer relaciones espaciales
  entre los nodos

● No se puede integrar información geográfica de
 fuentes externas
¿Es Drupal un GeoCMS?

● Existen varios módulos que permiten
  georreferenciación

● No se pueden establecer relaciones espaciales
  entre los nodos

● No se puede integrar información geográfica de
 fuentes externas
¿Es Drupal un GeoCMS?

● Existen varios módulos que permiten
  georreferenciación

● Los nodos se pueden visualizar y relacionar por
  su posición geográfica

● No se puede integrar información geográfica de
 fuentes externas
¿Es Drupal un GeoCMS?

● Existen varios módulos que permiten
  georreferenciación

● Los nodos se pueden visualizar y relacionar por
  su posición geográfica

● Aparecen iniciativas para integrar fuentes de
 información geográfica
El mundo Geo en la comunidad

Campo con bastante movimiento

● 140 proyectos maduros y 192 en total con el tag
  Location

● Diferentes "familias"
   ○ Visualización de datos
   ○ Georreferenciación
   ○ Geolocalización de usuarios
El problema de la organización

● Múltiples iniciativas en busca de objetivos
  similares


● Cada site tiene unos niveles de exigencia
  diferentes



● ...cada maestrillo tiene su librillo...
Embebiendo mapas externos

● Sólo se busca meter un mapa dentro del contenido


● No se almacena ningún tipo de información geográfica


● Embed Google Maps Field, OpenLayers Filter, Mapstraction
  CCK Inline, Nodemap...
La familia Location & GMap

● Muy extendidos

● Cubren las necesidades básicas

● Limitado a puntos

● Las operaciones que se pueden realizar con la información
  almacenada es escasa

● Su uso está limitado a Google Maps
La familia OpenLayers

● Muy potente

● Se aprovecha de la gran flexibilidad que ofrece la librería

● Módulos auxiliares hacen que resulte muy útil, como por
  ejemplo OpenLayers Proximity o MapBox

● Procesa datos en formato geográfico básico

● El procesado de la información recae en Drupal
Otras opciones

● Módulos que tratan de ofrecer APIs comunes para
  diferentes clientes de mapas
    ○ Mapstraction/Mapstraction CCK
    ○ Mapping

● Módulos que tratan de integrar servicios externos para
  visualizarlos en Drupal
    ○ Mappingkit

● Utilización de servicios externos para dar valor añadido
  geoespacial
   ○ OpenCalais
   ○ Geonames
Procesando información geográfica

● Se trata de obtener información que almacenar por
  diferentes medios
    ○ Campos Lat/Lon
    ○ Direcciones
    ○ Mapas interactivos
    ○ Fotografías

● Para luego poder mostrarla asociada a los contenidos o
  poder asociarlos entre ellos
   ○ Widgets
   ○ Views
El procesado de la información geográfica

Los módulos actuales permiten almacenar esta información de
diferentes maneras
  ● Coordenadas:
      ○ 40, -3
  ● Cadenas WKT (Well Known Text)
      ○ POINT(-3, 40)
GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7
10))
  ● Información binaria en campos espaciales (Well Known
    Binary)
      ○ 0101000000000000000000F03F000000000000F03F
El procesado de la información geográfica

Los módulos actuales permiten almacenar esta información de
diferentes maneras
  ● Coordenadas:
      ○ 40, -3
  ● Cadenas WKT (Well Known Text)
      ○ POINT(-3, 40)
GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7
10))
  ● Información binaria en campos espaciales (Well Known
    Binary)
      ○ 0101000000000000000000F03F000000000000F03F
                          (POINT(1,1))
Texto vs Binario

● El texto es legible
● No es necesario utilizar extensiones espaciales
● Es fácil de manipular

● Hay que crear querys complejas para hacer
  búsquedas
● En ocasiones hay que extraer datos y procesarlos
  en PHP (Geofield)
● No se puede manejar con proyecciones
Texto vs Binario

● El binario no se entiende
● Hay que utilizar extensiones espaciales
● No se puede manipular directamente

● Se pueden realizar operaciones geométricas
  directamente en BD
● Las operaciones pueden devolver objetos WKT
● Puede manejar diferentes proyecciones
Ejemplo de búsqueda espacial

Búsqueda Circular desde un punto:
 ● OpenLayers proximity:
     ○ SELECT node.nid AS nid, openlayers_proximity_filter_circle.distance AS
       openlayers_proximity_filter_circle_distance, node.title AS node_title, node_data_field_ol_map.
       field_ol_map_openlayers_wkt AS node_data_field_ol_map_field_ol_map_openlayers_wkt,
       node_data_field_ol_map.delta AS node_data_field_ol_map_delta, node.type AS node_type,
       node.vid AS node_vid FROM node node RIGHT JOIN openlayers_proximity
       openlayers_proximity ON node.nid = openlayers_proximity.nid RIGHT JOIN (SELECT nid, lat,
       lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * RADIANS(1))) + COS((lat *
       RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon * RADIANS(1)) - (-4.7283811 *
       RADIANS(1))))) AS distance FROM openlayers_proximity) openlayers_proximity_filter_circle
       ON node.nid = openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map
       node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type in
       ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000)) GROUP BY
       nid, openlayers_proximity_filter_circle_distance, node_title,
       node_data_field_ol_map_field_ol_map_openlayers_wkt, node_data_field_ol_map_delta,
       node_type, node_vid
Ejemplo de búsqueda espacial

Búsqueda Circular desde un punto:
 ● OpenLayers proximity:
     ○ SELECT node.nid AS nid, openlayers_proximity_filter_circle.distance AS
        openlayers_proximity_filter_circle_distance, node.title AS node_title, node_data_field_ol_map.
     SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 *
        field_ol_map_openlayers_wkt AS node_data_field_ol_map_field_ol_map_openlayers_wkt,
     RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS
        node_data_field_ol_map.delta AS node_data_field_ol_map_delta, node.type AS node_type,
     ((lon * RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM
        node.vid AS node_vid FROM node node RIGHT JOIN openlayers_proximity
     openlayers_proximity) openlayers_proximity_filter_circle ON node.nid =
        openlayers_proximity ON node.nid = openlayers_proximity.nid RIGHT JOIN (SELECT nid, lat,
     openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map
        lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * RADIANS(1))) + COS((lat *
     node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type
        RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon * RADIANS(1)) - (-4.7283811 *
     in ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000)
        RADIANS(1))))) AS distance FROM openlayers_proximity) openlayers_proximity_filter_circle
        ON node.nid = openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map
        node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type in
        ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000)) GROUP BY
        nid, openlayers_proximity_filter_circle_distance, node_title,
        node_data_field_ol_map_field_ol_map_openlayers_wkt, node_data_field_ol_map_delta,
        node_type, node_vid
Ejemplo de búsqueda espacial

Búsqueda Circular desde un punto:
 ● PostGIS:
     ○ SELECT state, zip
       FROM zipcode
       WHERE
       distance(
       transform(PointFromText('POINT(-116.768347 33.911404)', 4269),32661),geom)
       < 16093
Ejemplo de búsqueda espacial

SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 *
RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon
* RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM openlayers_proximity)
openlayers_proximity_filter_circle ON node.nid = openlayers_proximity_filter_circle.nid
LEFT JOIN content_field_ol_map node_data_field_ol_map ON node.vid =
node_data_field_ol_map.vid WHERE (node.type in ('ol_geocoder')) AND
((openlayers_proximity_filter_circle.distance <= 20.000000)


                                        VS
SELECT state, zip FROM zipcode WHERE distance( transform(PointFromText('POINT
(-116.768347 33.911404)', 4269),32661),geom) < 16093
Ejemplo de búsqueda espacial

SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 *
RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon
* RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM openlayers_proximity)
openlayers_proximity_filter_circle ON node.nid = openlayers_proximity_filter_circle.nid
LEFT JOIN content_field_ol_map node_data_field_ol_map ON node.vid =
node_data_field_ol_map.vid WHERE (node.type in ('ol_geocoder')) AND
((openlayers_proximity_filter_circle.distance <= 20.000000)


                                        VS
SELECT state, zip FROM zipcode WHERE distance( transform(PointFromText('POINT
(-116.768347 33.911404)', 4269),32661),geom) < 16093
Otras búsquedas espaciales
Otras búsquedas espaciales




SELECT i.name, i.lat, i.lon
FROM items i, autop p
WHERE p.id = 66 AND
ST_DWhitin(i.the_geom, p.the_geom,5000)
El problema de la escalabilidad

Los clientes de mapas tienen una capacidad limitada

Al querer mostrar muchas geometrías se puede ver mermado
su rendimiento

El procesamiento de muchas geometrías desde Drupal
también puede hacer que el rendimiento caiga en picado.

              ¿Hemos encontrado un límite?
          ¿Cuáles son las posibles vías de escape?
El problema de la escalabilidad

Los clientes de mapas tienen una capacidad limitada

Al querer mostrar muchas geometrías se puede ver mermado
su rendimiento

El procesamiento de muchas geometrías desde Drupal
también puede hacer que el rendimiento caiga en picado.




                GIS
              ¿Hemos encontrado un límite?
          ¿Cuáles son las posibles vías de escape?
La integración de servicios GIS en Drupal

 ● Los GIS (Sistemas de Información Geográfica) son
   elementos que están orientados a procesar información
   geográfica

 ● Integrarlos con Drupal puede ser una vía para solventar los
   problemas que veíamos anteriormente

 ● Pueden liberar a Drupal de tareas costosas y llevarlas a
   cabo de forma más rápida
La integración de servicios GIS en Drupal
Nuevos caminos que se abren

La introducción de herramientas GIS dentro de Drupal ofrece
un nuevo abanico de posibilidades, pero también nuevos retos

 ● Necesidad de familiarizar a los usuarios con los GIS

 ● Estandarización de los accesos

 ● Creación de familias de módulos capaces de integrar de
   forma sencilla las nuevas funcionalidades

 ● Comprobar que realmente el rendimiento de estas nuevas
   aproximaciones es tan bueno como se espera
Tratemos que se fusionen en uno solo

● Seguir todos el mismo camino es la mejor manera de llegar
  a la meta

● Tomar parte en el debate dentro de la comunidad y tratar
  de tomar decisiones conjuntas
Tratemos que se fusionen en uno solo

● Seguir todos el mismo camino es la mejor manera de llegar
  a la meta

● Tomar parte en el debate dentro de la comunidad y tratar
  de tomar decisiones conjuntas



  Contribuir es la mejor manera de conseguir
   nuestros objetivos y conseguir que todos
        podamos beneficiarnos de ello
Recursos

● http://drupal.org
● http://groups.drupal.org/location-and-mapping
● http://idelab.uva.es
● http://openlayers.org
● https://github.com/developmentseed/openlayers_plus
● http://www.slideshare.net/ajturner/drupal-and-the-
  geospatial-web
  http://www.levelos.com/blog/2010/08/mapping-drupal
● http://www.geops.de/blog/64-spatial-data-and-drupal-7
Muchas gracias

¡Nos encontramos en la web!

plopesc@gmail.com
@plopesc

Más contenido relacionado

Destacado

Lewis tftn fgdccg_08102010
Lewis tftn fgdccg_08102010Lewis tftn fgdccg_08102010
Lewis tftn fgdccg_08102010KSI Koniag
 
Lewis tftn ngac_09232010
Lewis tftn ngac_09232010Lewis tftn ngac_09232010
Lewis tftn ngac_09232010Koniag
 
Strategic planning for tftn trb jan 12 2010
Strategic planning  for tftn trb jan  12 2010Strategic planning  for tftn trb jan  12 2010
Strategic planning for tftn trb jan 12 2010Koniag
 
TFTN GIS Pro in Orlando
TFTN GIS Pro in OrlandoTFTN GIS Pro in Orlando
TFTN GIS Pro in OrlandoKSI Koniag
 
The Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris LemaThe Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris Lema
Chris Lema
 
The Presentation Come-Back Kid
The Presentation Come-Back KidThe Presentation Come-Back Kid
The Presentation Come-Back Kid
Ethos3
 

Destacado (6)

Lewis tftn fgdccg_08102010
Lewis tftn fgdccg_08102010Lewis tftn fgdccg_08102010
Lewis tftn fgdccg_08102010
 
Lewis tftn ngac_09232010
Lewis tftn ngac_09232010Lewis tftn ngac_09232010
Lewis tftn ngac_09232010
 
Strategic planning for tftn trb jan 12 2010
Strategic planning  for tftn trb jan  12 2010Strategic planning  for tftn trb jan  12 2010
Strategic planning for tftn trb jan 12 2010
 
TFTN GIS Pro in Orlando
TFTN GIS Pro in OrlandoTFTN GIS Pro in Orlando
TFTN GIS Pro in Orlando
 
The Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris LemaThe Buyer's Journey - by Chris Lema
The Buyer's Journey - by Chris Lema
 
The Presentation Come-Back Kid
The Presentation Come-Back KidThe Presentation Come-Back Kid
The Presentation Come-Back Kid
 

Similar a Drupal & GIS: Convirtiendo Drupal en un GeoCMS

POSTGIS - Uso de datos espaciales con el buen PostgreSQL
POSTGIS - Uso de datos espaciales con el buen PostgreSQLPOSTGIS - Uso de datos espaciales con el buen PostgreSQL
POSTGIS - Uso de datos espaciales con el buen PostgreSQL
Grupo de Investigación de Ingeniería de Software e Ingeniería del Conocimiento
 
Tipos de datos espaciales
Tipos de datos espacialesTipos de datos espaciales
Tipos de datos espaciales
Enrique Catala Bañuls
 
Sistemas de Información Geográfica Libres - Flisol 2016
Sistemas de Información Geográfica Libres - Flisol 2016Sistemas de Información Geográfica Libres - Flisol 2016
Sistemas de Información Geográfica Libres - Flisol 2016
Plattinux
 
Python gis mapping
Python gis mappingPython gis mapping
Python gis mapping
kikocorreoso
 
Un Estudio Dinamico De Las Base De Datos En Sig Moviles
Un Estudio Dinamico De Las Base De Datos En Sig MovilesUn Estudio Dinamico De Las Base De Datos En Sig Moviles
Un Estudio Dinamico De Las Base De Datos En Sig MovilesJanett Julca Flores
 
Thematic_Maps_ArcGIS_I.pdf
Thematic_Maps_ArcGIS_I.pdfThematic_Maps_ArcGIS_I.pdf
Thematic_Maps_ArcGIS_I.pdf
Luiscondori80
 
ArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdfArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdf
ssuserdecb952
 
Cómo empezar con PostGIS sin morir demasiado
Cómo empezar con PostGIS sin morir demasiadoCómo empezar con PostGIS sin morir demasiado
Cómo empezar con PostGIS sin morir demasiado
Andrés Moya Velázquez
 
Curso Avanzado De Sig Tema1
Curso Avanzado De Sig Tema1Curso Avanzado De Sig Tema1
Curso Avanzado De Sig Tema1rafael
 
Sires
SiresSires
Sires
ycav95
 
Curso de arcgis
Curso de arcgisCurso de arcgis
Curso de arcgis
clasesjr
 
S3_1.pdf
S3_1.pdfS3_1.pdf
S3_1.pdf
dams8
 
Los sistemas de información geográfica (SIG) y estándares de normalización
Los sistemas de información geográfica (SIG) y estándares de normalizaciónLos sistemas de información geográfica (SIG) y estándares de normalización
Los sistemas de información geográfica (SIG) y estándares de normalización
Facultad de Informática UCM
 
Introdución a PostGis
Introdución a PostGisIntrodución a PostGis
Introdución a PostGis
Marco Carranza
 
Charla "GeoPython" Grupo Python Córdoba
Charla "GeoPython" Grupo Python CórdobaCharla "GeoPython" Grupo Python Córdoba
Charla "GeoPython" Grupo Python Córdoba
Patricio Soriano Castro
 
Base de datos espacial
Base de datos espacialBase de datos espacial
Base de datos espacial
Hewlett-Packard
 

Similar a Drupal & GIS: Convirtiendo Drupal en un GeoCMS (20)

POSTGIS - Uso de datos espaciales con el buen PostgreSQL
POSTGIS - Uso de datos espaciales con el buen PostgreSQLPOSTGIS - Uso de datos espaciales con el buen PostgreSQL
POSTGIS - Uso de datos espaciales con el buen PostgreSQL
 
Tipos de datos espaciales
Tipos de datos espacialesTipos de datos espaciales
Tipos de datos espaciales
 
Sistemas de Información Geográfica Libres - Flisol 2016
Sistemas de Información Geográfica Libres - Flisol 2016Sistemas de Información Geográfica Libres - Flisol 2016
Sistemas de Información Geográfica Libres - Flisol 2016
 
Python gis mapping
Python gis mappingPython gis mapping
Python gis mapping
 
Un Estudio Dinamico De Las Base De Datos En Sig Moviles
Un Estudio Dinamico De Las Base De Datos En Sig MovilesUn Estudio Dinamico De Las Base De Datos En Sig Moviles
Un Estudio Dinamico De Las Base De Datos En Sig Moviles
 
Thematic_Maps_ArcGIS_I.pdf
Thematic_Maps_ArcGIS_I.pdfThematic_Maps_ArcGIS_I.pdf
Thematic_Maps_ArcGIS_I.pdf
 
ArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdfArcGIS_Nivel1.pdf
ArcGIS_Nivel1.pdf
 
Cómo empezar con PostGIS sin morir demasiado
Cómo empezar con PostGIS sin morir demasiadoCómo empezar con PostGIS sin morir demasiado
Cómo empezar con PostGIS sin morir demasiado
 
Curso Avanzado De Sig Tema1
Curso Avanzado De Sig Tema1Curso Avanzado De Sig Tema1
Curso Avanzado De Sig Tema1
 
Sires
SiresSires
Sires
 
Curso de arcgis
Curso de arcgisCurso de arcgis
Curso de arcgis
 
Sig
SigSig
Sig
 
S3_1.pdf
S3_1.pdfS3_1.pdf
S3_1.pdf
 
Datos espaciales
Datos espacialesDatos espaciales
Datos espaciales
 
Los sistemas de información geográfica (SIG) y estándares de normalización
Los sistemas de información geográfica (SIG) y estándares de normalizaciónLos sistemas de información geográfica (SIG) y estándares de normalización
Los sistemas de información geográfica (SIG) y estándares de normalización
 
Introdución a PostGis
Introdución a PostGisIntrodución a PostGis
Introdución a PostGis
 
Charla "GeoPython" Grupo Python Córdoba
Charla "GeoPython" Grupo Python CórdobaCharla "GeoPython" Grupo Python Córdoba
Charla "GeoPython" Grupo Python Córdoba
 
Definiciones y conceptos
Definiciones y conceptosDefiniciones y conceptos
Definiciones y conceptos
 
Definiciones y conceptos(1)
Definiciones y conceptos(1)Definiciones y conceptos(1)
Definiciones y conceptos(1)
 
Base de datos espacial
Base de datos espacialBase de datos espacial
Base de datos espacial
 

Más de Pablo López Escobés

When Drupal met CARTO
When Drupal met CARTOWhen Drupal met CARTO
When Drupal met CARTO
Pablo López Escobés
 
MADs about Drupal: Programación de entities para D7
MADs about Drupal: Programación de entities para D7MADs about Drupal: Programación de entities para D7
MADs about Drupal: Programación de entities para D7Pablo López Escobés
 
Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...
Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...
Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...Pablo López Escobés
 
Definición e implementación de soluciones basadas en APIs universales para la...
Definición e implementación de soluciones basadas en APIs universales para la...Definición e implementación de soluciones basadas en APIs universales para la...
Definición e implementación de soluciones basadas en APIs universales para la...Pablo López Escobés
 
Geohabilitación de gestores contenidos: CMSMap
Geohabilitación de gestores contenidos: CMSMapGeohabilitación de gestores contenidos: CMSMap
Geohabilitación de gestores contenidos: CMSMapPablo López Escobés
 
IDELab MapstractionInteractive: API Universal y Políglota
IDELab MapstractionInteractive: API Universal y PolíglotaIDELab MapstractionInteractive: API Universal y Políglota
IDELab MapstractionInteractive: API Universal y PolíglotaPablo López Escobés
 

Más de Pablo López Escobés (11)

When Drupal met CARTO
When Drupal met CARTOWhen Drupal met CARTO
When Drupal met CARTO
 
D7 as D8
D7 as D8D7 as D8
D7 as D8
 
Drupal 8: Fields reborn
Drupal 8: Fields rebornDrupal 8: Fields reborn
Drupal 8: Fields reborn
 
Get on with Field API
Get on with Field APIGet on with Field API
Get on with Field API
 
API como SaaS
API como SaaSAPI como SaaS
API como SaaS
 
MADs about Drupal: Programación de entities para D7
MADs about Drupal: Programación de entities para D7MADs about Drupal: Programación de entities para D7
MADs about Drupal: Programación de entities para D7
 
Poniendo a drupal en el mapa
Poniendo a drupal en el mapaPoniendo a drupal en el mapa
Poniendo a drupal en el mapa
 
Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...
Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...
Integración de APIs políglotas de mapas en Google Web Toolkit: IDELabMapstrac...
 
Definición e implementación de soluciones basadas en APIs universales para la...
Definición e implementación de soluciones basadas en APIs universales para la...Definición e implementación de soluciones basadas en APIs universales para la...
Definición e implementación de soluciones basadas en APIs universales para la...
 
Geohabilitación de gestores contenidos: CMSMap
Geohabilitación de gestores contenidos: CMSMapGeohabilitación de gestores contenidos: CMSMap
Geohabilitación de gestores contenidos: CMSMap
 
IDELab MapstractionInteractive: API Universal y Políglota
IDELab MapstractionInteractive: API Universal y PolíglotaIDELab MapstractionInteractive: API Universal y Políglota
IDELab MapstractionInteractive: API Universal y Políglota
 

Último

Trabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De ProgramaciónTrabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De Programación
SofiaCollazos
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
AMADO SALVADOR
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
LilibethEstupian
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
espinozaernesto427
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
SamuelRamirez83524
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
Ing. Julio Iván Mera Casas
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
CesarPazosQuispe
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
JuanAlvarez413513
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
juanchogame18
 

Último (20)

Trabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De ProgramaciónTrabajo tecnología sobre Conceptos Básicos De Programación
Trabajo tecnología sobre Conceptos Básicos De Programación
 
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaCatalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial Valencia
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
Las lámparas de alta intensidad de descarga o lámparas de descarga de alta in...
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Estructuras básicas_ conceptos de programación (1).docx
Estructuras básicas_ conceptos de programación  (1).docxEstructuras básicas_ conceptos de programación  (1).docx
Estructuras básicas_ conceptos de programación (1).docx
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
 
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
Semana 10_MATRIZ IPER_UPN_ADM_03.06.2024
 
absorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratoriosabsorcion de gases y practicas de laboratorios
absorcion de gases y practicas de laboratorios
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
 

Drupal & GIS: Convirtiendo Drupal en un GeoCMS

  • 1. Drupal & GIS Convirtiendo Drupal en un GeoCMS DrupalCamp Spain Octubre 2011, Sevilla
  • 2. Mapa de contenidos 1. ¿Qué es un GeoCMS? 2. ¿Es Drupal un GeoCMS? 3. El mundo Geo en Drupal 4. Repaso de algunos módulos 5. Gestión de la información geográfica 6. Las bases de datos espaciales 7. Las posibilidades que abren los GIS
  • 3. ¿Qué es un GeoCMS? Gestor de contenidos en el que la información está georreferenciada La información geográfica es útil y se puede utilizar para establecer relaciones entre los contenidos Es posible integrar fuentes externas de información geografica que pueden aportar un valor añadido
  • 4. ¿Qué es un GeoCMS?
  • 5. ¿Qué es un GeoCMS?
  • 6. ¿Es Drupal un GeoCMS? NO
  • 7. ¿Es Drupal un GeoCMS? NO Pero con matices...
  • 8. ¿Es Drupal un GeoCMS? ● No tiene soporte nativo para la georreferenciación ● No se pueden establecer relaciones espaciales entre los nodos ● No se puede integrar información geográfica de fuentes externas
  • 9. ¿Es Drupal un GeoCMS? ● Existen varios módulos que permiten georreferenciación ● No se pueden establecer relaciones espaciales entre los nodos ● No se puede integrar información geográfica de fuentes externas
  • 10. ¿Es Drupal un GeoCMS? ● Existen varios módulos que permiten georreferenciación ● Los nodos se pueden visualizar y relacionar por su posición geográfica ● No se puede integrar información geográfica de fuentes externas
  • 11. ¿Es Drupal un GeoCMS? ● Existen varios módulos que permiten georreferenciación ● Los nodos se pueden visualizar y relacionar por su posición geográfica ● Aparecen iniciativas para integrar fuentes de información geográfica
  • 12. El mundo Geo en la comunidad Campo con bastante movimiento ● 140 proyectos maduros y 192 en total con el tag Location ● Diferentes "familias" ○ Visualización de datos ○ Georreferenciación ○ Geolocalización de usuarios
  • 13. El problema de la organización ● Múltiples iniciativas en busca de objetivos similares ● Cada site tiene unos niveles de exigencia diferentes ● ...cada maestrillo tiene su librillo...
  • 14. Embebiendo mapas externos ● Sólo se busca meter un mapa dentro del contenido ● No se almacena ningún tipo de información geográfica ● Embed Google Maps Field, OpenLayers Filter, Mapstraction CCK Inline, Nodemap...
  • 15. La familia Location & GMap ● Muy extendidos ● Cubren las necesidades básicas ● Limitado a puntos ● Las operaciones que se pueden realizar con la información almacenada es escasa ● Su uso está limitado a Google Maps
  • 16. La familia OpenLayers ● Muy potente ● Se aprovecha de la gran flexibilidad que ofrece la librería ● Módulos auxiliares hacen que resulte muy útil, como por ejemplo OpenLayers Proximity o MapBox ● Procesa datos en formato geográfico básico ● El procesado de la información recae en Drupal
  • 17. Otras opciones ● Módulos que tratan de ofrecer APIs comunes para diferentes clientes de mapas ○ Mapstraction/Mapstraction CCK ○ Mapping ● Módulos que tratan de integrar servicios externos para visualizarlos en Drupal ○ Mappingkit ● Utilización de servicios externos para dar valor añadido geoespacial ○ OpenCalais ○ Geonames
  • 18. Procesando información geográfica ● Se trata de obtener información que almacenar por diferentes medios ○ Campos Lat/Lon ○ Direcciones ○ Mapas interactivos ○ Fotografías ● Para luego poder mostrarla asociada a los contenidos o poder asociarlos entre ellos ○ Widgets ○ Views
  • 19. El procesado de la información geográfica Los módulos actuales permiten almacenar esta información de diferentes maneras ● Coordenadas: ○ 40, -3 ● Cadenas WKT (Well Known Text) ○ POINT(-3, 40) GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10)) ● Información binaria en campos espaciales (Well Known Binary) ○ 0101000000000000000000F03F000000000000F03F
  • 20. El procesado de la información geográfica Los módulos actuales permiten almacenar esta información de diferentes maneras ● Coordenadas: ○ 40, -3 ● Cadenas WKT (Well Known Text) ○ POINT(-3, 40) GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10)) ● Información binaria en campos espaciales (Well Known Binary) ○ 0101000000000000000000F03F000000000000F03F (POINT(1,1))
  • 21. Texto vs Binario ● El texto es legible ● No es necesario utilizar extensiones espaciales ● Es fácil de manipular ● Hay que crear querys complejas para hacer búsquedas ● En ocasiones hay que extraer datos y procesarlos en PHP (Geofield) ● No se puede manejar con proyecciones
  • 22. Texto vs Binario ● El binario no se entiende ● Hay que utilizar extensiones espaciales ● No se puede manipular directamente ● Se pueden realizar operaciones geométricas directamente en BD ● Las operaciones pueden devolver objetos WKT ● Puede manejar diferentes proyecciones
  • 23. Ejemplo de búsqueda espacial Búsqueda Circular desde un punto: ● OpenLayers proximity: ○ SELECT node.nid AS nid, openlayers_proximity_filter_circle.distance AS openlayers_proximity_filter_circle_distance, node.title AS node_title, node_data_field_ol_map. field_ol_map_openlayers_wkt AS node_data_field_ol_map_field_ol_map_openlayers_wkt, node_data_field_ol_map.delta AS node_data_field_ol_map_delta, node.type AS node_type, node.vid AS node_vid FROM node node RIGHT JOIN openlayers_proximity openlayers_proximity ON node.nid = openlayers_proximity.nid RIGHT JOIN (SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon * RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM openlayers_proximity) openlayers_proximity_filter_circle ON node.nid = openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type in ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000)) GROUP BY nid, openlayers_proximity_filter_circle_distance, node_title, node_data_field_ol_map_field_ol_map_openlayers_wkt, node_data_field_ol_map_delta, node_type, node_vid
  • 24. Ejemplo de búsqueda espacial Búsqueda Circular desde un punto: ● OpenLayers proximity: ○ SELECT node.nid AS nid, openlayers_proximity_filter_circle.distance AS openlayers_proximity_filter_circle_distance, node.title AS node_title, node_data_field_ol_map. SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * field_ol_map_openlayers_wkt AS node_data_field_ol_map_field_ol_map_openlayers_wkt, RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS node_data_field_ol_map.delta AS node_data_field_ol_map_delta, node.type AS node_type, ((lon * RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM node.vid AS node_vid FROM node node RIGHT JOIN openlayers_proximity openlayers_proximity) openlayers_proximity_filter_circle ON node.nid = openlayers_proximity ON node.nid = openlayers_proximity.nid RIGHT JOIN (SELECT nid, lat, openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * RADIANS(1))) + COS((lat * node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon * RADIANS(1)) - (-4.7283811 * in ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000) RADIANS(1))))) AS distance FROM openlayers_proximity) openlayers_proximity_filter_circle ON node.nid = openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type in ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000)) GROUP BY nid, openlayers_proximity_filter_circle_distance, node_title, node_data_field_ol_map_field_ol_map_openlayers_wkt, node_data_field_ol_map_delta, node_type, node_vid
  • 25. Ejemplo de búsqueda espacial Búsqueda Circular desde un punto: ● PostGIS: ○ SELECT state, zip FROM zipcode WHERE distance( transform(PointFromText('POINT(-116.768347 33.911404)', 4269),32661),geom) < 16093
  • 26. Ejemplo de búsqueda espacial SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon * RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM openlayers_proximity) openlayers_proximity_filter_circle ON node.nid = openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type in ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000) VS SELECT state, zip FROM zipcode WHERE distance( transform(PointFromText('POINT (-116.768347 33.911404)', 4269),32661),geom) < 16093
  • 27. Ejemplo de búsqueda espacial SELECT nid, lat, lon, (6371.0 * ACOS(SIN((lat * RADIANS(1))) * SIN((41.6529434 * RADIANS(1))) + COS((lat * RADIANS(1))) * COS((41.6529434 * RADIANS(1))) * COS((lon * RADIANS(1)) - (-4.7283811 * RADIANS(1))))) AS distance FROM openlayers_proximity) openlayers_proximity_filter_circle ON node.nid = openlayers_proximity_filter_circle.nid LEFT JOIN content_field_ol_map node_data_field_ol_map ON node.vid = node_data_field_ol_map.vid WHERE (node.type in ('ol_geocoder')) AND ((openlayers_proximity_filter_circle.distance <= 20.000000) VS SELECT state, zip FROM zipcode WHERE distance( transform(PointFromText('POINT (-116.768347 33.911404)', 4269),32661),geom) < 16093
  • 29. Otras búsquedas espaciales SELECT i.name, i.lat, i.lon FROM items i, autop p WHERE p.id = 66 AND ST_DWhitin(i.the_geom, p.the_geom,5000)
  • 30. El problema de la escalabilidad Los clientes de mapas tienen una capacidad limitada Al querer mostrar muchas geometrías se puede ver mermado su rendimiento El procesamiento de muchas geometrías desde Drupal también puede hacer que el rendimiento caiga en picado. ¿Hemos encontrado un límite? ¿Cuáles son las posibles vías de escape?
  • 31. El problema de la escalabilidad Los clientes de mapas tienen una capacidad limitada Al querer mostrar muchas geometrías se puede ver mermado su rendimiento El procesamiento de muchas geometrías desde Drupal también puede hacer que el rendimiento caiga en picado. GIS ¿Hemos encontrado un límite? ¿Cuáles son las posibles vías de escape?
  • 32. La integración de servicios GIS en Drupal ● Los GIS (Sistemas de Información Geográfica) son elementos que están orientados a procesar información geográfica ● Integrarlos con Drupal puede ser una vía para solventar los problemas que veíamos anteriormente ● Pueden liberar a Drupal de tareas costosas y llevarlas a cabo de forma más rápida
  • 33. La integración de servicios GIS en Drupal
  • 34. Nuevos caminos que se abren La introducción de herramientas GIS dentro de Drupal ofrece un nuevo abanico de posibilidades, pero también nuevos retos ● Necesidad de familiarizar a los usuarios con los GIS ● Estandarización de los accesos ● Creación de familias de módulos capaces de integrar de forma sencilla las nuevas funcionalidades ● Comprobar que realmente el rendimiento de estas nuevas aproximaciones es tan bueno como se espera
  • 35. Tratemos que se fusionen en uno solo ● Seguir todos el mismo camino es la mejor manera de llegar a la meta ● Tomar parte en el debate dentro de la comunidad y tratar de tomar decisiones conjuntas
  • 36. Tratemos que se fusionen en uno solo ● Seguir todos el mismo camino es la mejor manera de llegar a la meta ● Tomar parte en el debate dentro de la comunidad y tratar de tomar decisiones conjuntas Contribuir es la mejor manera de conseguir nuestros objetivos y conseguir que todos podamos beneficiarnos de ello
  • 37. Recursos ● http://drupal.org ● http://groups.drupal.org/location-and-mapping ● http://idelab.uva.es ● http://openlayers.org ● https://github.com/developmentseed/openlayers_plus ● http://www.slideshare.net/ajturner/drupal-and-the- geospatial-web http://www.levelos.com/blog/2010/08/mapping-drupal ● http://www.geops.de/blog/64-spatial-data-and-drupal-7
  • 38. Muchas gracias ¡Nos encontramos en la web! plopesc@gmail.com @plopesc