Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Mapas y drupal, o como no perderse en el intento

Esta sesión pretende dar una clasificación de los módulos principales para trabajar con mapas en drupal que permita entender hasta qué punto pueden combinarse para ofrecer 3+1 soluciones completas para geolocalizar y mostrar entidades en un mapa.
by

Carlos Cámara

on 1 November 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Mapas y drupal, o como no perderse en el intento

Mapas y drupal
https://drupal.org/project/locationmap
Tener algo que mostrar
Puede ser cualquier entidad:
Nodos
Taxonomia
KML file
Feeds
...
Entidades con informacion geospacial
Métodos de introducción:
Teclear pares Lat. / Long.
Geocodificados de una dirección
Dibujado directamente de un mapa
Autodeteccion coordenadas (navegador, gps...)
(Guardar datos)
Mostrar un mapa
Capas base
Entidades
Latitude / Longitude pairs
WKT (Well Known Text)
Interacciones
....
(Visualización de datos)
We can add some interactions to the map
Tooltips
Clustering
Full screen
Overlays
Proximity search
...
(data visualization)
(y como no perderse en el intento)
1
2
3
Carlos Cámara Menoyo
Anatomia de un mapa
Ecosistema de módulos (drupal 7)
3 Casos prácticos
Comparativa
Referencias
Preguntas y discusión
Anatomía de un mapa
Contenido
Interactividades
Capa(s) Base
(¡georreferenciado!)
Marcadores
(Markers)
Tooltips / popups
El camino para crear un mapa en drupal
Terminos y condiciones
Displaying data
OpenLayers
Leaflet
Leaflet
more maps
Getlocations
Geocoder
http://drupal.org/project/openlayers
Geocoding
GMAP
http://drupal.org/project/gmap
Location
http://drupal.org/project/gmap
Extremely powerful and customizable.
Enormous (in size and dependencies), yet only one maintainer.
Lots of (good) documentation.
Well-known = Support.
https://drupal.org/project/leaflet
https://drupal.org/project/countries_borders
Countries Borders
Provides a geofield for countries and imports their shapes as WKT so that they can be displayed in an Openlayers map.

Relies on the Countries and Geofield modules.
https://drupal.org/project/leaflet_popup_outside
Interactions
Addressfield
https://drupal.org/project/addressfield
Standardized storage of international postal addresses based on the xNAL standard (= Google Maps for geocoding)
Per-country edit form and formatting of addresses
Geofield
https://drupal.org/project/geofield
GeoPHP
Geofield Map
Provides basic configuration for displaying geofield's maps
Integration with OpenLayers and Leaflet modules
It supports all geo-types
points,
lines,
polygons,
multitypes
...
Splitted data input and data output:
Widgets: for data input
Formatters: for data output
Widgets:
Provides several options:
Latitude and Longitude
Bouding Box
(For textfields where lat / lon can be entered)
Well Known Text
(WKT) (A textarea for direct WKT input)
Draw on an
OpenLayers Map
HTML5 Geolocation
Geocode
from another field (Requires Geocoder module)
Formatters:
Provides several options:
Latitude and Longitude
Well Known Text
(WKT)
GeoJSON
KML
GPX
OpenLayers Map
HTML5 Geolocation
Leaflet*
(requires leaflet module)
https://drupal.org/project/leaflet_label
Leaflet
label
Leaflet
markercluster
Works transparently.

Geocodes (= "translates" into geospatial data) other type of fields, such as:
Addressfield
(using Google, Yahoo, Yandex, or MapQuest)
Geotags from EXIF metadata
from pictures
Convert uploaded
KML files
into geometries.
Convert uploaded or typed
GeoJSON
and
WKT
into geometries.
...
https://drupal.org/project/geocoder
Works transparently.

Provides integration with the geoPHP library:
https://github.com/phayes/geoPHP

GeoPHP is a open-source native PHP library for doing geometry operations. It is written entirely in PHP and can therefore run on shared hosts. It can read and write a wide variety of formats (WKT, WKB, GeoJSON, KML, GPX, GeoRSS)
https://drupal.org/project/geophp
Ecosistema drupal 7
Fuente: http://geocaching.com
http://drupal.org/project/cartaro
Library
Base Layer
Markers
T&C
Notes:
Small module (73 KiB)
Small library (357,65 KiB)
No dependencies
Simple configuration
Pluggable architecture
Needs to be patched after leaflet 0.5 library (see https://drupal.org/node/1954942#14 )
Casos prácticos
Referencias
Books
Presentations
Community
Mapping in drupal with OpenLayers
Peter Vanhee
http://2011.drupalcamp.es/en/sessions/mapping-drupal-using-openlayers
Mapping with drupal
Boris Doesborg
http://barcelona2012.drupaldays.org/sessions/mapping-drupal
Maps & OpenLayers
Antje Lorch, Anthoni Lindsay & Pol Dell'Aiera
http://dublin2013.drupaldays.org/program/sessions/maps-openlayers
IRC
#drupal-geo
Groups
Location and Mapping
https://groups.drupal.org/location-and-mapping
OpenLayers Handbook
http://drupal.org/node/595850
http://shop.oreilly.com/product/0636920021230.do
Geospatial modules comparison
https://groups.drupal.org/node/89769
Geocoding is the process of finding associated geographic coordinates (often expressed as latitude and longitude) from other geographic data,
Storing data
Data storage
Dependencies:
PHP 5.3.x
Libraries (>= 2.1)
Proj4js https://drupal.org/
JavaScript library to transform point coordinates from one coordinate system to another, including datum transformations.
CTools
Views
geoPHP
Roadmap
Cartaro
http://carloscamara.es
twitter: @carlescamara
OpenLayers
https://drupal.org/node/1645460
Contributed Modules
????
Leaflet
https://drupal.org/node/1645460
Module
Library
Companion modules (optional)
Getlocations
https://drupal.org/node/2036109
Installation
Fields
Geofield
Addressfield
Geocoder
GeoPHP

Content type configuration
place it in sites/all/modules/contrib
enable it (drush en leaflet )
apply patch
place it in sites/all/libraries/leaflet
Modules
Dependencies
Library (optional)
Installation
place it in sites/all/modules/contrib
enable it (drush en openlayers openlayers_ui openlayers_views)
Proj4JS
Libraries
Chaos tools
Fields
Geofield
Addressfield
Geocoder
GeoPHP

Content type configuration
Fields
Getlocations

Content type configuration
Modules
Dependencies
Markers
Installation
place it in sites/all/modules/contrib
enable them
Getlocations Search, Getlocations Location Taxonomize, Getlocations Feeds, Getlocations Map
download from links provided by README.txt
Views
OpenlayersData overlay
Map Configuration
Page/block display with Openlayers formatter
Geofield display

Map configuration
Views
Page/block display with Leaflet formatter
Geofield display

Map configuration
Filtering criteria
Fields
Layers
Behaviours
Icons
Base map
Fields on labels/tooltips
Views
Page/block display with getlocations formatter
Per node (manage display)
Built-in urls/maps (views-based)

Map configuration
it is loaded from openlayers' website (remote) by default
Needs openlayers_views submodule
Libraries
Entity (optional)
¿Qué vamos a ver en esta sesión?
https://github.com/ccamara/dc-maps

https://drupal.org/project/leaflet_more_maps
https://drupal.org/project/leaflet_markercluster
https://drupal.org/project/getlocations
Distribuition
Geocoded
from
Comparativa
OpenLayers
Leaflet
Getlocations
Pros
Cons
Facilidad de configuración
Facilidad de uso
Introducción de coordenadas
Geolocalización
Personalización de mapas (de Google)
Capas de trafico, bicicleta
Controles
Tooltip/InfoBubble
Permite
geocodificacion inversa
Sistema de
almacenamiento
de información geoespacial no estandarizado
dificultad de extraer datos o combinar con otros módulos
Limitado a
Mapas de Google
No se pueden utilizar mapas personalizados (salvo OSM)
Limitación numero de consultas
Arquitectura
modular
Módulo pequeño
Módulos pequeños complementarios (muchos funcionan "out of the box")
Bastante
personalizable
Mayor
facilidad de uso
que OpenLayers (si sabes usar CT y Views, sabes usarlo)
Almacenamiento estandar de datos
Puede combinarse con relativa facilidad con otros módulos (OL)
Totalmente
personalizable
Muchos
comportamientos
de serie
Puede mostrar distintas capas de datos
Almacenamiento estandar
de datos
Puede intercambiarse con relativa facilidad con otros módulos (Leaflet)
Geofield ofrece un gran numero de opciones para incorporar datos geoespaciales
Mucha
documentación
Funcionamiento limitado con varias capas:
No permite ordenarlas/darles nombres personalizados
No permite alternar capas de datos
Usabilidad
de Geofield es mejorable
No permite
geocodificacion inversa
Dificultad:
Crear un mapa es un proceso largo y no demasiado intuitivo
Módulo
mastodóntico
y un solo mantenedor activo
Puede que sea grande para determinados casos de uso
Falla el clustering
Falla la geolocalización por navegador
La
usabilidad
de Geofield es mejorable
No permite geocodificacion inversa
Profesor de la ETSA-USJ y miembro del grupo de investigación Arquitecturas Open Source
Drupal Dreamer en Ymbra
Bajo rendimiento (¿Drupal? ¿MySQL? -> PostgreSQL)
Con grandes cantidades de datos
Con operaciones geoespaciales
¡Gracias!
¿Preguntas?
¿Qué solución os parece mejor?
Carlos Cámara Menoyo
http://carloscamara.es
twitter: @carlescamara
Other features include:
Configurable Infobubble styling
Configurable Javascript paths for Infobubble, Markermanager and Markerclusterer
Support for Google maps API Version 3 key
Support for multiple maps on a page
Markers can be defined
globally,
per content type,
per content instance
per item
Marker action can be either click or mouseover, configurable globally or per map
Automatic HTTPS support
Maps can be displayed in a Colorbox
All output is fully themeable
Views support
for Getlocations Fields includes
per item maps,
All locations maps,
Nearby location maps as well as lists with similar functions.
Some views support exposed forms.
Views developers will be able to create many other possibilities.
Several submodules:
Getlocations Search
which uses Google Geocoding on entered search terms and shows nearby locations. The search form is fully configurable with options for setting the Search distance, Distance units, Number of locations to show and Restrict the search to a content type.
Getlocations Blocks
that works in conjunction with Views. It provides dropdowns or autocompletes for Country, Province/State, Town or Postcode. How well it works depends on how large your dataset is.
Getlocations Location Taxonomize
which supports Location Taxonomize.
Getlocations Feeds
which provides some basic support for the Feeds module.
Getlocations Map
which provides a map that can be added to a content type in conjunction with Getlocations_fields, GeoField, Geolocation or Location modules. Useful for when no map is supplied or the map needs to be in a different place within the content type display.
Full transcript