Outils pour utilisateurs

Outils du site


hackfest2009:hackfest2009

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
hackfest2009:hackfest2009 [2009/08/23 19:35]
82.247.183.72
hackfest2009:hackfest2009 [2009/09/11 12:02] (Version actuelle)
88.173.105.122
Ligne 1: Ligne 1:
 ====== Hackfest 2009 ====== ====== Hackfest 2009 ======
 Au programme : http://​thomas.enix.org/​Hackfest2009 Au programme : http://​thomas.enix.org/​Hackfest2009
 +
 +  * IRC OSM : #osm-fr sur irc.oftc.net
 +
 +===== Autres pages =====
 +  * [[ToDo]]
 +  * [[Projections]]
 +  * [[Hébergement]]
 +  * [[Mapnik]] et [[OGR]]
 +  * [[Trucs]]
 +  * [[RevueDePresse]]
  
 ===== Installation et configuration de PostgreSQL/​PostGIS ===== ===== Installation et configuration de PostgreSQL/​PostGIS =====
Ligne 8: Ligne 18:
   * Paquet installé pour une interface graphique d'​administration de PostgreSQL: pgadmin3   * Paquet installé pour une interface graphique d'​administration de PostgreSQL: pgadmin3
   * Configuration du mot de passe de l'​utilisateur postgres du serveur de base de données (pas l'​utilisateur Unix !), voir https://​help.ubuntu.com/​community/​PostgreSQL#​Basic%20Server%20Setup   * Configuration du mot de passe de l'​utilisateur postgres du serveur de base de données (pas l'​utilisateur Unix !), voir https://​help.ubuntu.com/​community/​PostgreSQL#​Basic%20Server%20Setup
 +
 +
 +
  
  
Ligne 28: Ligne 41:
  Plap | 28.2842712474619  Plap | 28.2842712474619
  Plip | 31.6227766016838  Plip | 31.6227766016838
 +</​file>​
 +  * Jouons avec les polygones.
 +    * Création d'une table: ''​create table communes (name varchar);''​.
 +    * Création du champ géographique:​ ''​select addgeometrycolumn('​communes',​ '​geom',​ 4002, '​POLYGON',​ 2);''​
 +    * Insertion d'une donnée: ''​insert into communes (name, geom) values ('​Ville1',​ st_geomfromtext('​POLYGON( (10 10, 15 20, 30 40, 10 10) )', 4002));''​
 +    * Calcul de la surface:
 +<​file>​
 +select name, st_area(geom) from communes;
 +  name  | st_area ​
 +--------+---------
 + ​Ville1 |      25
 +</​file>​
 +    * Calcul du périmètre
 +<​file>​
 +select name, st_perimeter(geom) from communes;
 +  name  |   ​st_perimeter ​  
 +--------+------------------
 + ​Ville1 | 72.2358526421388
 +</​file>​
 +    * Affichage de la donnée géographique sous forme texte (lisible!) avec la fonction ''​st_astext()''​
 +<​file>​
 +select name, st_astext(geom) from communes;
 +  name  |             ​st_astext ​             ​
 +--------+------------------------------------
 + ​Ville1 | POLYGON((10 10,15 20,30 40,10 10))
 </​file>​ </​file>​
  
 +==== Référence ====
 +  * http://​postgis.refractions.net/​documentation/​manual-1.4/​ch02.html#​id2532099
  
 ===== OpenStreetMap dans PostGIS ===== ===== OpenStreetMap dans PostGIS =====
Ligne 42: Ligne 82:
   * API Postgis : http://​postgis.refractions.net/​documentation/​manual-1.4/​ch07.html   * API Postgis : http://​postgis.refractions.net/​documentation/​manual-1.4/​ch07.html
   * Stats des communes dans OSM : http://​www.mail-archive.com/​talk-fr@openstreetmap.org/​msg12151.html   * Stats des communes dans OSM : http://​www.mail-archive.com/​talk-fr@openstreetmap.org/​msg12151.html
 +  * Declarations proj4 usuelles : http://​www.remotesensing.org/​geotiff/​proj_list/​
 +  * Shapefiles : http://​en.wikipedia.org/​wiki/​Shapefile
 +
  
 ===== OpenStreetMap ===== ===== OpenStreetMap =====
Ligne 48: Ligne 91:
   * dump de la base : http://​download.geofabrik.de/​osm/​ et en particulier http://​download.geofabrik.de/​osm/​europe/​france.osm.bz2   * dump de la base : http://​download.geofabrik.de/​osm/​ et en particulier http://​download.geofabrik.de/​osm/​europe/​france.osm.bz2
  
 +  * Requête pour calculer la bounding box d'une commune, en supposant que les limites administratives de celles-ci existent dans OSM : ''​select st_astext(st_transform(st_setsrid(st_box2d(way),​ 900913), 4002)) from planet_osm_polygon where name='​Toulouse';''​
  
 ===== Installation Ubuntu par PXE ===== ===== Installation Ubuntu par PXE =====
Ligne 58: Ligne 101:
   * Lancer le serveur PXE: ''​sudo pxed eth0 /​la/​ou/​le/​netboot.tar.gz/​est/​decompresse pxelinux.0''​   * Lancer le serveur PXE: ''​sudo pxed eth0 /​la/​ou/​le/​netboot.tar.gz/​est/​decompresse pxelinux.0''​
   * Démarrer la machine à installer. Si elle boote sur le réseau, ça marche, sinon, utiliser http://​rom-o-matic.net/​ pour générer une image ISO/USB avec le nécessaire pour faire du PXE   * Démarrer la machine à installer. Si elle boote sur le réseau, ça marche, sinon, utiliser http://​rom-o-matic.net/​ pour générer une image ISO/USB avec le nécessaire pour faire du PXE
 +
 +
 +
 +
 +
 +
  
 ===== Installation mapnik ===== ===== Installation mapnik =====
Ligne 76: Ligne 125:
  
   $ export PYTHONPATH="/​home/​thomas/​sys/​lib/​python2.6/​site-packages"​   $ export PYTHONPATH="/​home/​thomas/​sys/​lib/​python2.6/​site-packages"​
-  $ export ​PYTHONPATH="/​home/​thomas/​sys/​lib/​python2.6/​site-packages"+  $ export ​LD_LIBRARY_PATH="/​home/​thomas/​sys/​lib"​ 
   $ python   $ python
   Python 2.6.2 (release26-maint,​ Apr 19 2009, 01:​56:​41) ​   Python 2.6.2 (release26-maint,​ Apr 19 2009, 01:​56:​41) ​
Ligne 153: Ligne 203:
   $ wget http://​tile.openstreetmap.org/​shoreline_300.tar.bz2   $ wget http://​tile.openstreetmap.org/​shoreline_300.tar.bz2
  
 +  $ cd /​home/​thomas/​osm/​mapnik-osm/​
 +  $ tar xzf ~/​osm/​world_boundaries-spherical.tgz
 +  $ unzip ~/​osm/​processed_p.zip
 +  $ mv coastlines/​* world_boundaries/​
 +  $ rmdir coastlines
 +  $ tar xjf ~/​osm/​shoreline_300.tar.bz2 -C world_boundaries
 +
 +<​file>​
 +--- generate_image.py (revision 17214)
 ++++ generate_image.py (working copy)
 +@@ -14,6 +14,7 @@
 + # pixel size so will appear smaller on a large image.
 + 
 + from mapnik import *
 ++import cairo
 + ​import sys, os
 + 
 + if __name__ == "​__main__":​
 +@@ -26,12 +27,13 @@
 +     #​---------------------------------------------------
 +     # ​ Change this to the bounding box you want
 +     #
 +-    ll = (-6.5, 49.5, 2.1, 59)
 ++    #ll = (-6.5, 49.5, 2.1, 59)
 ++    ll = (-1.0901, 44.4883, -1.0637, 44.4778)
 +     #​---------------------------------------------------
 + 
 +-    z = 10
 +-    imgx = 500 * z
 +-    imgy = 1000 * z
 ++    z = 17
 ++    imgx = 500 
 ++    imgy = 1000 
 + 
 +     m = Map(imgx,​imgy)
 +     ​load_map(m,​mapfile)
 +@@ -44,3 +46,8 @@
 +     ​render(m,​ im)
 +     view = im.view(0,​0,​imgx,​imgy) # x,​y,​width,​height
 +     ​view.save(map_uri,'​png'​)
 ++
 ++    # SVG
 ++    surface = cairo.SVGSurface('​image.svg',​ m.width, m.height)
 ++    render(m, surface)
 ++
 +</​file>​
 +
 +  $ ./​generate_image.py
 +  $ gthumb image.png
 +  $ firefox image.svg
 +
 +
 +===== Préfixes pour les voies urbaines =====
 +
 +Liste des déterminants :
 +
 +  * de
 +  * du
 +  * de la
 +  * des
 +  * d'
 +
 +Liste des appellations particulières de rues :
 +
 +  * Allée f.
 +  * Avenue f.
 +  * Boulevard m.
 +  * Carrefour m.
 +  * Chaussée f.
 +  * Chemin m.
 +  * Cité f.
 +  * Clos m.
 +  * Côte f.
 +  * Cour f.
 +  * Cours m.
 +  * Degré m.
 +  * Esplanade f.
 +  * Impasse f.
 +  * Liaison f.
 +  * Mail m.
 +  * Montée f.
 +  * Passage m.
 +  * Place f.
 +  * Placette f.
 +  * Pont m.
 +  * Promenade f.
 +  * Quai m.
 +  * Résidence f.
 +  * Rond-Point m.
 +  * Rang m.
 +  * Route f.
 +  * Ruelle f.
 +  * Square m.
 +  * Traboule f.
 +  * Traverse f.
 +  * Venelle f.
 +  * Voie f.
 +
 +Mais aussi :
 +
 +  * Berge
 +  * Cul-de-Sac
 +  * Escalier
 +  * Parvis
 +  * Passerelle
 +  * Giratoire
 +  * Jardin
 +
 +Les dénominations suivantes s'​appliquent à des voies qui ne sont pas des rues, soit parce qu'​elles ne se trouvent pas en zone urbaine, soit qu'​elles en sont complètement isolées. Ces voies ne remplissent donc qu'une fonction de circulation exclusivement :
 +
 +  * Autoroute f.
 +  * Bretelle
 +  * Sente f.
 +  * Sentier m.
 +
 +===== Cairo =====
 +
 +  * Tutorial Python/​Cairo:​ http://​www.tortall.net/​mu/​wiki/​CairoTutorial
  
hackfest2009/hackfest2009.1251048919.txt.gz · Dernière modification: 2009/08/23 19:35 par 82.247.183.72