Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

So ein GIS ding Afstandsberegninger med pgRouting og python på en gratis Amazon server København 10-01-2015.

Lignende præsentationer


Præsentationer af emnet: "So ein GIS ding Afstandsberegninger med pgRouting og python på en gratis Amazon server København 10-01-2015."— Præsentationens transcript:

1 So ein GIS ding Afstandsberegninger med pgRouting og python på en gratis Amazon server København 10-01-2015

2 Agenda Runde 2A Opsætning af server Om pgRouting Eksempel Runde 2B - hør mere om Amazon (og få koden) Python koden der beregner afstande Optimering af kald til pgRouting POI fra OSM og Rejseplanen Alternativer til pgRouting?? Erfaringsudveksling

3 Opsætning af Amazon server

4 pgRouting Core Features pgRouting provides functions for: All Pairs Shortest Path, Johnson’s Algorithm [1] All Pairs Shortest Path, Floyd-Warshall Algorithm [1] Shortest Path A* Bi-directional Dijkstra Shortest Path [1] Bi-directional A* Shortest Path [1] Shortest Path Dijkstra Driving Distance K-Shortest Path, Multiple Alternative Paths [1] K-Dijkstra, One to Many Shortest Path [1] Traveling Sales Person Turn Restriction Shortest Path (TRSP) [1] Shortest Path Shooting Star [2] Other ”Features” Service area Distance Matrix

5 Eksempler

6 Runde 2B Runde 2B - hør mere om Amazon (og få koden) Python koden der beregner afstande Optimering af kald til pgRouting POI fra OSM og Rejseplanen Alternativer til pgRouting?? Erfaringsudveksling

7 Amazon og installation af pgRouting Opret en linux ubuntu server på (det er gratis): http://aws.amazon.com/ec2/ Åben en consol -Åben port 80 -Installer git -Klon git arkiv https://github.com/gisgroup/soeingisdingdemohttps://github.com/gisgroup/soeingisdingdemo - Kør filen: install_all.sh (kør som super user)

8 Beregn afstande gisgroup_api.distance ~~~~~~~~~~~~~~~~~~~~~ Provide endpoint for calculating distances between addresses and POIs """ import os from flask import Blueprint, jsonify from. import utils as distance_utils from..geocode import utils as geocode_utils # initialize blueprint blueprint = Blueprint('distance', __name__) @blueprint.route( "/ / " ) def distance_address( target, origin ): location_origin = geocode_utils.findone( origin ) location_target = geocode_utils.findone( target ) coordinates_origin = location_origin.get('adgangsadresse').get('adgangspunkt').get('koordinater') coordinates_target = location_target.get('adgangsadresse').get('adgangspunkt').get('koordinater') r = distance_utils.calculate( coordinates_origin[0], coordinates_origin[1], coordinates_target[0], coordinates_target[1] ) return jsonify( distance=r )

9 Optimering af kald Optimeringer i koden Brug af en god hurtig geokoder (f.eks. DAWA) Brug af de rigtige projektioner (konverter evt)! Geo-index på felter i postgis Søge nærmeste i fugleflugt, udvælge dem og udregn djikstra til dem og kun dem Caching på server

10 POI fra OSM og Rejseplanen OSM: http://download.geofabrik.de/europe.html Rejseplanen: http://labs.rejseplanen.dk/labs/data__brug/rejseplanens_api/

11 Alternativer til pgRouting afstandsberegning https://graphhopper.com/maps/ http://www.liedman.net/leaflet-routing-machine/

12 Erfaringsudveksling Hvad har andre af erfaringer?


Download ppt "So ein GIS ding Afstandsberegninger med pgRouting og python på en gratis Amazon server København 10-01-2015."

Lignende præsentationer


Annoncer fra Google