GIS Tool in Drupal PNW Drupal Summit - Seattle October 20th, 2012 Mack Hardy & Tom

Slides:



Advertisements
Similar presentations
A Roadmap of Open Source components for GI Web Services and Clients A Paul R Cooper MAGIC.
Advertisements

Atlas Server – A Tool for Atlas Mapping Altai State Technical University Public Fund Altai 21-st Century Barnaul, Russia Irina Mikhailidi.
The Next Generation Network Enabled Weather (NNEW) SWIM Application Asia/Pacific AMHS/SWIM Workshop Chaing Mai, Thailand March 5-7, 2012 Tom McParland,
Internet-based GIS Larry Theller October Geographic Information Systems Mapping is inventory and presentation of spatial data. GIS means Geographical.
Concurrent Web Map Cache Server Zao Liu, Marlon Pierce, Geoffrey Fox Community Grids Laboratory Indiana University.
IMAGE SERVICES WHAT ARE THEY AND HOW DO YOU USE THEM?
Visualizing maps on the web. What is a Map? A map is a drawing that is the representation, on a certain scale, of a terrain.
Publishing GIS Services to ArcGIS for Server
Geo GIS Practicuum Introduction to ArcGIS 8 Exercise 5 - ESRI Virtual Campus Chapters 1-2, ArcGIS Methods …
Web GIS Oregon Explorer Marc G Rempel Oregon State University The Valley Library Oregon Explorer
1 Google Earth Powered by MapGuide. 2© 2006 Autodesk Session Outline MapGuide / Google Earth Integration Overview Demo How it Works and How to Use It.
User Friendly Entity Reference Select Lists
Implementing Web GIS Solutions using open source software
QGIS Workflows QGIS and Python… like peanut butter and jelly.
TileMill Quickly and Easily Design Maps for the Web Shaky Sherpa Matt Berg Modi Research Group The Earth Institute. Columbia University.
An Operational Metadata Framework For Searching, Indexing, and Retrieving Distributed GIServices on the Internet By Ming-Hsiang.
Open Source GIS How we use free tools to do cool things Martin Catala Donald Hayward.
Introduction to GIS and ArcGIS How a GIS works Introduction to ArcGIS The ArcGIS Interface.
Mercator/Coronelli ArcGIS Server 9.3 Data Management GIS Web Services Mapping Application Developer Tools Spatial Analysis Publishing to Clients Image.
Raster Data in ArcSDE 8.2 Why Put Images in a Database? What are Basic Raster Concepts? How Raster data stored in Database?
So What is GIS??? “A collection of computer hardware, software and procedures that are used to organize, manage, analyze and display.
Internet enabled GIS GIS Topics and Applications John Reiser Rowan University.
Development of Japanese GIS Tool for use in the Humanities ○ Masatoshi ISHIKAWA †, Yoichi KAWANISHI ††, Hidefumi OKUMURA †††, Shoichiro HARA †††† † University.
ESRI ArcGIS Server Behind the scenes Pavel Janda
Geographic Information Systems ASM 215 Feb 2013 Larry Theller.
IBIS GIS Mapping Missouri “Show and Tell”. Outline 1.What is KML 2.Why we chose KML 3.Show and Tell.
EU 2nd Year Review – Jan – WP9 WP9 Earth Observation Applications Demonstration Pedro Goncalves :
Welcome to Mapping Tom Sellsted – City of Yakima, Washington Vladimir Strinski – Hitech Systems.
Lecture 4 Data. Why GIS? Ask questions Solve a problem Support a decision Make Maps Involve others, share data, procedures, ideas.
FalconView Open Source Inspired Features
GIS technologies and Web Mapping Services
Using OSM data The technical details.... Using OSM data Extracting data from planet.osm Setting up a PostGIS database Importing data into a PostGIS database.
Testbed3 Use Cases Geoscience Australia IMF client implementation.
NEPAnode is a Geospatial Data and Document Management System It provides a centralized and collaborative site to access the data.
Karsten Vennemann, Seattle Free and Easy Web Mapping.
Geographic Information System GIS This project is implemented through the CENTRAL EUROPE Programme co-financed by the ERDF GIS Geographic Inf o rmation.
Web Mashups -Nirav Shah.
Data Scrounging 101 Steve Signell, Instructor Robert Poirier, TA School of Science Rensselaer Polytechnic Institute Monday,
The FalconView Geodata Overlay
Implementing Web GIS Solutions using open source software Karsten Vennemann Seattle.
GIS On The Web: An Overview of ArcIMS. *The easy flow of geographic data can offer real-life solutions in many societal sectors, including municipal government,
Best Practices for Designing Effective Map Services Tanu Hoque.
MapTube and Streaming Google Earth – Sharing Data via Anonymous Servers Richard Milton and Andrew Hudson-Smith CASA, UCL UCL CENTRE FOR ADVANCED SPATIAL.
Preparing and Deploying Data to ArcPad Juan Luera.
Technical Workshops | Esri International User Conference San Diego, California Creating Geoprocessing Services Kevin Hibma, Scott Murray July 25, 2012.
Exploring Spatial Data Infrastructure in an Open Source World Jacqueline Lowe UNC-Asheville National Environmental Modeling and Analysis Center Jacqueline.
Implementing Unified Access to Scientific Data from.NET Platform Sergey B. Berezin Dmitriy V. Voitsekhovskiy Vilen M. Paskonov Moscow State University.
ATN GIS Support ArcGIS: ArcCatalog.
Types of Spatial Data Sites Data portals: Find and download data –Humboldt County, National Atlas “Atlases”: General information –GoogleMaps, MapQuest.
Esri UC 2014 | Technical Workshop | Creating Geoprocessing Services Kevin Hibma.
Road Ahead for Vector Mapping
Client-Server Paradise ICOM 8015 Distributed Databases.
Predicting popular areas of a tiled Web map as a strategy for server-side caching Sterling Quinn.
Satisfy Your Technical Curiosity 27, 28 & 29 March 2007 International Convention Center (ICC) Ghent, Belgium.
Google Map Engine Can export images to Map Engine from Earth Engine
Working with CAD Data In ArcGIS Travis Wagner. New Features Adds CAD datasets as group layers –Still have the ability to access all feature types properties.
©2010 AIR WORLDWIDE 1 Using ArcGIS Server Web Map Services in Web Map Mash-Ups Benjamin Spaulding, Ph.D. AIR Worldwide Esri Boston Dev Meet-Up 12/8/2010.
Oracle Business Intelligence Foundation – Testing and Deploying OBI Repository.
GBIF Governing Board 20 Module 6B: New GBIF Tools II 2013 Portal and NPT Startup Daniel Amariles IT Leader, National Biodiversity Information System of.
Excel Services Displays all or parts of interactive Excel worksheets in the browser –Excel “publish” feature with optional parameters defined in worksheet.
Developing Hydrology Mashups with ArcGIS Server 9.3 by Alper Dinçer M.Sc. Civil Engineer Geo Web Developer State Hydraulic Works (DSI) TURKEY
Data Processing Systems
Web Mashups -Nirav Shah.
Enhancing Web Map Performance in ArcGIS Online
Building an online tool for spatial joins using open source software
Types of Spatial Data Sites
Types of Spatial Data Sites
Types of Spatial Data Sites
Publishing image services in ArcGIS
Presentation transcript:

GIS Tool in Drupal PNW Drupal Summit - Seattle October 20th, 2012 Mack Hardy & Tom

History of Maps with Drupal Tools

Location Module, proximity and filter

Storage and Import

Storage - GeoField Where do we store data in drupal? A common field format for geodata WKT Lat Lon Bounding

Spatial Import How do we import data from external sources? Shapefiles KML files Uses GeoPHP and ogr2ogr Spatial module -> Saves as WKT -> Geofield

ogr2ogr Wrapper module for the GDAL ogr2ogr library - Spatial module calls ogr2ogr - Converts data from source formats to WKT

Query

Sync_PostGIS Module Allows drupal to query PostGIS as a spatial query service, much in the way SOLR is used for search Syncs data from Drupal entities with geofields to PostGIS Provides query methods for testing intersection, within, buffer conditions

Sync_PostGIS Module

What does sync_postgis tell us? Intersections with other data points Within a buffer of 5km

Testing for Intersection function geoquery_intersects($item1, $item2) { $params = array($item1, $item2); foreach ($params as &$param) { if (is_scalar($param)) { $param = array('entity_type' => 'node', 'eid' => $param); } if ($connection = sync_postgis_get_postgis_connection()) { $geo_query = new syncPgQuery($connection); return $geo_query->booleanRelQuery('intersects', $params[0], $params[1])->execute(); }

Testing for Buffer Distance function geoquery_dwithin($item1, $item2, $distance = 0, $srid = 4326) { $params = array($item1, $item2); foreach ($params as &$param) { if (is_scalar($param)) { $param = array('entity_type' => 'node', 'eid' => $param); } if ($connection = sync_postgis_get_postgis_connection()) { $geo_query = new syncPgQuery($connection, $srid); return $geo_query->booleanRelQuery('dwithin', $params[0], $params[1], $distance)->execute(); }

Displaying the results With the results from the PostGIS backend, we can show the user useful information In this case they know that - target is in the protected area - target intersects 2 traplines - target is within a 5 km buffer of 4 other nodes of interest

Scaling

Beyond Vector Based Maps We want to show huge datasets, the vector model requires "painting" the data onto the map, which is computationally expensive Pre-rendering the dataset onto a tile, means the client can load the data quickly, and tiles are easy to cache Obvious downside of caching, is that it doesn't work well with frequently changing data Tilemill has been great for creating base tiles, but regenerating the entire tileset when the data changes is hard and time consuming

Comparing Vector vs MB Tiles Vector MB of transfer - Client side render Tiles kB of transfer - Server side render

Tilestache Python application for serving tiles tilestache takes inputs of : --- mbtiles which are pre-generated --- mapnik configuration (to generate tiles on the fly) --- vector (geojson, arcjson) --- combinations of these inputs as composite We are generating using mapnik with PostGIS as a datasource - provides a caching layer for serving tiles

Composite maps from PostGIS Data base map satellite images tilestache provides the data layers from PostGIS via mapnik leaflet map definition points to layers in the layer switcher Image credit

WAX interactivity parcel data with tiles in JSON on mouseover and on click behaviours need to pre-cache WAX styling

WAX interactivity

Demo

WAX interactivity How UTF8 grid works

Random Tools

Leaflet Draw

Leaflet Paste

Search API Next we want to be able to return data items from SOLR to a map Search on non-geographic facets - just like a view Search on geographic facets - facet controls pull data from PostGIS, or use SOLRs spatial extensions

Discussion