<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>neogeo &#187; GeoHacks</title>
	<atom:link href="http://www.neogeo-online.net/blog/archives/category/geohacks/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.neogeo-online.net</link>
	<description>SIG, OpenSource et Web 2.0</description>
	<lastBuildDate>Sun, 25 Jul 2010 14:59:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>OSGIS 2010&#8230; raid over England</title>
		<link>http://www.neogeo-online.net/blog/archives/329/</link>
		<comments>http://www.neogeo-online.net/blog/archives/329/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 13:56:43 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[Architectures]]></category>
		<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[tinyOWS]]></category>
		<category><![CDATA[WFS]]></category>
		<category><![CDATA[WPS]]></category>
		<category><![CDATA[zoo project]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=329</guid>
		<description><![CDATA[La fine fleur de la géomatique Open Source hexagonale a fièrement porté haut les couleurs de la France à Nottingham (Angleterre) lors de la conférence OS-GIS 2010. Comme on ne va pas au fin fond des Midlands pour s&#8217;amuser, Gérald Fenoy, de Geolabs, et Olivier Courtin, d&#8217;Oslandia, y ont présenté leurs merveilles technologiques dédiées aux [...]]]></description>
			<content:encoded><![CDATA[<p>La fine fleur de la géomatique Open Source hexagonale a fièrement porté haut les couleurs de la France à Nottingham (Angleterre) lors de la conférence <a title="OS GIS homepage" href="http://cgs.nottingham.ac.uk/~osgis10/os_home.html" target="_blank">OS-GIS 2010</a>. Comme on ne va pas au fin fond des Midlands pour s&#8217;amuser, Gérald Fenoy, de <a href="http://www.geolabs.fr/" target="_blank">Geolabs</a>, et Olivier Courtin, <a href="http://www.oslandia.fr" target="_blank">d&#8217;Oslandia</a>, y ont présenté leurs merveilles technologiques dédiées aux web services cartographiques, à savoir respectivement le déjà célèbre <a title="Le Zoo Project" href="http://www.zoo-project.org/" target="_blank">Zoo Project</a>, serveur WPS, et le non moins fameux <a href="http://tinyows.org/trac" target="_blank">TinyOWS</a>, serveur WFS-T, hautes performances nous dit-on. La présentation d&#8217;Olivier a même remporté le 1er prix de la meilleure présentation. Gérald de son côté a dû remplacer Nicolas Bozon au pied levé, ce dernier ayant raté l&#8217;avion après s&#8217;être mis à l&#8217;heure anglaise par anticipation.</p>
<p>Toutes nos félicitations à nos deux représentants nationaux, et n&#8217;hésitez pas à retrouver leurs prestations dans la rubrique <a href="http://cgs.nottingham.ac.uk/~osgis10/os_call2010.html" target="_blank">webcasts</a> du site de l&#8217;OSGIS 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/329/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Analyse raster Online</title>
		<link>http://www.neogeo-online.net/blog/archives/313/</link>
		<comments>http://www.neogeo-online.net/blog/archives/313/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 10:25:24 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=313</guid>
		<description><![CDATA[Ce n&#8217;est pas parce qu&#8217;un nouveau rédacteur a fait l&#8217;apparition sur ce blog et vous propose des articles intéressants et complets que je dois complètement passer la main. Je ne viens pas de passer une semaine dans un monastère italien à travailler sur GeoNetwork, donc je n&#8217;en ferai pas le compte-rendu (bien qu&#8217;il soit attendu [...]]]></description>
			<content:encoded><![CDATA[<p>Ce n&#8217;est pas parce qu&#8217;un nouveau rédacteur a fait l&#8217;apparition sur ce blog et vous propose des articles intéressants et complets que je dois complètement passer la main. Je ne viens pas de passer une semaine dans un <a title="Bolsena Hack Fest 2010" href="http://wiki.osgeo.org/wiki/Bolsena_Code_Sprint_2010" target="_blank">monastère italien</a> à travailler sur GeoNetwork, donc je n&#8217;en ferai pas le compte-rendu (bien qu&#8217;il soit attendu par tous&#8230; François, si tu me lis&#8230;), mais je viens de découvrir une application qui ouvre des perspectives intéressantes de traitement raster en ligne (sur le client).</p>
<p><a href="http://london.mapnificent.de/" target="_blank">London at Night</a> est une application permettant de calculer des temps de parcours en bus de nuit dans l&#8217;agglomération londonienne. On ne peut pas vraiment choisir sa ligne, mais pour un point donné on obtient la carte des endroits accessibles en moins de n minutes. Rien de révolutionnaire jusqu&#8217;ici. Sauf que le traitement et son rendu sont réalisés directement sur le client. Une immense matrice grise recouvre l&#8217;habituel fond Google (en mode nuit cependant), et c&#8217;est le passage en transparence complète des diverses cases qui illumine le fond pour mettre en avant la zone correspondant à vos critères. Outre la qualité visuelle du rendu, et la rapidité à laquelle il est obtenu, cette expérimentation ouvre sans doute la voie à d&#8217;autres dans une approche cliente du traitement raster. Son auteur, Stephan Wehrmeyer, présente sa démarche sur son <a title="HOWTO" href="http://blog.stefanwehrmeyer.com/post/449810520/mapnificent" target="_blank">blog</a>.  A suivre donc. <a href="http://github.com/stefanw/Mapnificent" target="_blank">Par ailleurs, le code est disponible sous licence CC-by-nc-sa</a>.</p>
<p>via <a href="http://googlemapsmania.blogspot.com/2010/06/night-buses-on-google-maps.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+GoogleMapsMania+%28Google+Maps+Mania%29">GoogleMapsMania</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/313/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fresh meat</title>
		<link>http://www.neogeo-online.net/blog/archives/170/</link>
		<comments>http://www.neogeo-online.net/blog/archives/170/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 13:36:42 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[AGG]]></category>
		<category><![CDATA[Mapserver]]></category>
		<category><![CDATA[OpenJump]]></category>
		<category><![CDATA[PostGIS]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=170</guid>
		<description><![CDATA[Deux sorties dignes d&#8217;intérêt ces derniers jours : OpenJump 1.3 et MapServer 5.4. Concernant le premier, on note l&#8217;arrivée de nouvelles méthodes de discrétisation (moyenne, seuils naturels et Jenks notamment) et d&#8217;informations statistiques sur les couches (min, max, moyenne&#8230;), ainsi que de nouvelles fonctions d&#8217;édition des géométries (auto-complétion des polygones sur tracé existant, simplification de [...]]]></description>
			<content:encoded><![CDATA[<p>Deux sorties dignes d&#8217;intérêt ces derniers jours : <a href="http://www.openjump.org/wiki/show/New+OpenJUMP+Release" target="_blank">OpenJump 1.3</a> et <a href="http://mapserver.org/" target="_blank">MapServer 5.4.</a></p>
<p>Concernant le premier, on note l&#8217;arrivée de nouvelles méthodes de discrétisation (moyenne, seuils naturels et Jenks notamment) et d&#8217;informations statistiques sur les couches (min, max, moyenne&#8230;), ainsi que de nouvelles fonctions d&#8217;édition des géométries (auto-complétion des polygones sur tracé existant, simplification de polygones sans incohérence, double fenêtrage synchrone&#8230;) qui en font un outil de choix pour tout ce qui touche à la manipulation des données.</p>
<p><a href="http://trac.osgeo.org/mapserver/browser/tags/rel-5-4-0/mapserver/HISTORY.TXT">MapServer</a> voit quant à lui intégrées les <a href="http://research.dmsolutions.ca/?p=299" target="_blank">améliorations promises</a> par le <a href="http://wiki.osgeo.org/wiki/Toronto_Code_Sprint_2009">Toronto Code Sprint</a>. J&#8217;ai fait quelques tests habituels sur des extraits de larges couches PostGIS et Shapefile, et les résultats sont assez troublants. Voici un comparatif avec la version 5.2 pour la génération d&#8217;une image de 600 x 600 pixels comprenant deux couches, communes et ROUTE250 sur une zone couvrant à peu près la Gironde :</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-171" title="image générée avec le driver AGG" src="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2009/04/test.png" alt="image générée avec le driver AGG" width="360" height="360" /></p>
<table style="text-align: center;" border="1">
<tbody>
<tr>
<th colspan="2"></th>
<th>5.2</th>
<th>5.4</th>
</tr>
<tr>
<td>Postgis</td>
<td>GIF</td>
<td>0.142</td>
<td>0.159</td>
</tr>
<tr>
<td></td>
<td>PNG</td>
<td>0.388</td>
<td>0.386</td>
</tr>
<tr>
<td></td>
<td>AGG</td>
<td>0.920</td>
<td>0.707</td>
</tr>
<tr>
<td>Shapefile</td>
<td>GIF</td>
<td>0.101</td>
<td>0.101</td>
</tr>
<tr>
<td></td>
<td>PNG</td>
<td>0.297</td>
<td>0.318</td>
</tr>
<tr>
<td></td>
<td>AGG</td>
<td>0.920</td>
<td>0.842</td>
</tr>
<tr>
<td>SHP + QIX</td>
<td>GIF</td>
<td>0.058</td>
<td>0.060</td>
</tr>
<tr>
<td></td>
<td>PNG</td>
<td>0.315</td>
<td>0.284</td>
</tr>
<tr>
<td></td>
<td>AGG</td>
<td>0.834</td>
<td>0.606</td>
</tr>
</tbody>
</table>
<p>Il y a à mon avis quelques informations utiles à tirer de ces résultats, qui n&#8217;ont pas vocation à présenter des index de performance pure, mais bien à comparer les deux versions dans des situations analogues. Considérons le format GIF comme celui de référence car impactant le moins de temps final de création de l&#8217;image.</p>
<p>Premièrement, on note une perte de performances légère (moins de 10 %) entre la version 5.2 et la nouvelle version 5.4 en GIF. <a href="http://n2.nabble.com/mapserver-5.4-beta-performance-test-tt2563067.html#a2563758" target="_blank">Paul Ramsey m&#8217;a expliqué</a> que c&#8217;est dû au passage à un curseur texte pour parcourir la base de données en lieu et place du précédent curseur binaire, plus performant certes, mais beaucoup plus difficile à maintenir et à utiliser dans le code car devant être manipulé au sein de transactions (et je veux bien le croire&#8230;).</p>
<p>Deuxièmement, on note toujours l&#8217;avantage significatif du shapefile, a fortiori quand il est indexé. Les modifications indiquées ci-dessus portent le ratio à 1.5 avec un Shapefile standard et à plus de 2 avec un fichier .qix. On peut en conclure que pour obtenir les meilleures performances, c&#8217;est cette association SHP + QIX + GIF qu&#8217;il faut choisir.</p>
<p>Cependant le rapport s&#8217;inverse avec les autres formats, comme si le nouvel handicap de l&#8217;accès à Postgis était compensé par une meilleure prise en charge du PNG et de l&#8217;AGG/PNG. C&#8217;est avec ce dernier choix, l&#8217;anticrénelage AGG, que l&#8217;amélioration est la plus significative, preuve s&#8217;il en fallait que Thomas Bonfort (créateur et mainteneur de l&#8217;intégration AGG dans MapServer) n&#8217;aura pas fait le déplacement à Toronto pour rien. Mais ce que je ne comprends pas, c&#8217;est qu&#8217;une image PNG ou AGG semble mieux bénéficier des données indexées (Postgis ou qix) que d&#8217;un simple shapefile. Thomas, si tu lis ces lignes&#8230;<br />
In fine, 20 % de mieux pour le couple le plus sexy (PostGIS + AGG), c&#8217;est une vraie bonne nouvelle.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/170/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>SAO : Saisie assistée par OpenLayers</title>
		<link>http://www.neogeo-online.net/blog/archives/153/</link>
		<comments>http://www.neogeo-online.net/blog/archives/153/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 23:39:51 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[OpenLayers]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=153</guid>
		<description><![CDATA[Deux nouveaux contrôles vont faire leur apparition dans OpenLayers 2.8 (ici pour la traduction française, à la grammaire près). Il s&#8217;agit d&#8217;outils d&#8217;aide à la saisie, bien utiles pour faciliter le travail et augmenter sa qualité géométrique. Un outil de snapping (accrochage aux objets existants) avec une belle granularité des options puisqu&#8217;il propose l&#8217;accrochage aux [...]]]></description>
			<content:encoded><![CDATA[<p>Deux nouveaux contrôles vont faire leur apparition dans <a href="http://openlayers.org/blog/2009/03/11/snap-split/" target="_blank">OpenLayers 2.8 </a>(<a href="http://openlayers.org/blog/2009/03/11/snap-split/" target="_blank"><a href="http://3liz.com/blog/rldhont/index.php/2009/03/11/244-des-controles-d-edition-topologique-dans-openlayers-28">ici pour la traduction française</a>, à la grammaire près)</a>. Il s&#8217;agit d&#8217;outils d&#8217;aide à la saisie, bien utiles pour faciliter le travail et augmenter sa qualité géométrique.</p>
<p>Un <a title="Demo du snapping" href="http://openlayers.org/dev/examples/snapping.html" target="_blank">outil de snapping</a> (accrochage aux objets existants) avec une belle granularité des options puisqu&#8217;il propose l&#8217;accrochage aux noeuds, simples sommets et même bordures, chacune étant complètement configurable indépendamment des autres (activation, tolérance).</p>
<p>Un <a title="Demo du découpage" href="http://openlayers.org/dev/examples/split-feature.html">outil de découpage</a> (split) qui permet de décomposer des géométries existantes à partir d&#8217;un nouveau tracé. C&#8217;est par exemple utile lors de la création de réseaux linéaires, une nouvelle ligne découpant automatiquement celles qu&#8217;elle coupe aux intersections, de manière à obtenir un réseau non pas encore topologique (il faudra séparer noeuds et arcs pour cela) mais bien structuré. Ca parait plus simple que le snapping, mais c&#8217;est plus délicat que ça en a l&#8217;air, car l&#8217;utilisation de cet outil impacte des géométries existantes à la différence du premier qui ne faisait que les utiliser. Un objet linéaire disposant d&#8217;un id et d&#8217;un attribut longueur par exemple va se retrouver segmenté en deux parties distinctes, dont il faudra donc corriger les attributs (nouveaux ids, recalcul des longueurs&#8230;). Fort heureusement l&#8217;outil de découpage a été bien conçu puisqu&#8217;il intègre un <a title="Le code de l'outil de découpe" href="http://trac.openlayers.org/browser/trunk/openlayers/lib/OpenLayers/Control/Split.js" target="_blank">événement aftersplit</a> qui permet de récupérer les objets venant d&#8217;être recomposés. Charge au développeur d&#8217;implémenter ce dont il a besoin à ce niveau.</p>
<p>Les objets à découper peuvent également être filtrés en fonction d&#8217;un attribut (afin, par exemple, de ne pas découper les autoroutes quand on trace des départementales)</p>
<p>Enfin, les deux contrôles peuvent être activés conjointement, et permettent d&#8217;interagir (en découpe ou accroche) avec d&#8217;autres couches que celles utilisées pour la saisie.</p>
<p>Au-delà de la prouesse technique, j&#8217;avoue que je suis surtout séduit par le professionnalisme de l&#8217;approche &laquo;&nbsp;métier&nbsp;&raquo;.  Sans doute que le sponsor de ces développements, <a href="http://www.swecogroup.com/en/enswecose/" target="_blank">SWECO</a>, spécialisé dans le génie civil et le BTP n&#8217;y est pas étranger ! Un seul défaut à mon sens, l&#8217;absence de curseur de contrôle du positionnement en tout début de saisie, qui fait que le premier point est placé sans savoir si l&#8217;accrochage est effectif ou pas. Et si la taille de celui-ci, qui serait alors un cercle, pouvait reprendre la tolérance, on toucherait au nirvana !</p>
<p>Plus prosaïquement, on se rapproche lentement de solutions full-web de saisie cartographique. Quelques contrôles de topologie effectués sur le serveur (au hasard avec&#8230; <a href="http://geodjango.org/docs/" target="_blank">GeoDjango</a> !) peuvent venir améliorer encore le résultat sans trop d&#8217;efforts (absence d&#8217;intersection entre les polygones, validité des géométries&#8230;). Reste que la manipulation d&#8217;objets vectoriels dans un navigateur a une limite liée à la capacité de ce même navigateur. Au-delà d&#8217;un certain nombre de points (sommets, noeuds&#8230;), l&#8217;application se fige et devient inutilisable. Mais cette limite est sans cesse repoussée par l&#8217;améliration des navigateurs et la puissance des machines. Donc oui, ça devient envisageable, sans être trivial.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/153/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoDjango, LE framework cartographique.</title>
		<link>http://www.neogeo-online.net/blog/archives/139/</link>
		<comments>http://www.neogeo-online.net/blog/archives/139/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 22:48:13 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[Architectures]]></category>
		<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[Langages]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[Non classé]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[SGBD]]></category>
		<category><![CDATA[GeoDjango]]></category>
		<category><![CDATA[GeoJSON]]></category>
		<category><![CDATA[OpenLayers]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[PostGIS]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Rest]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=139</guid>
		<description><![CDATA[J&#8217;en ai parlé dans le post précédent, mais pas de manière suffisamment détaillée pour satisfaire les curieux qui m&#8217;ont rappelé à l&#8217;ordre et soumis des questions diverses. Donc je vais essayer de me rattraper&#8230; Qu&#8217;est-ce que GeoDjango ? C&#8217;est une extension de Django (ça existe même en français) destinée à gérer les données géographique. OK, [...]]]></description>
			<content:encoded><![CDATA[<p>J&#8217;en ai parlé dans le post précédent, mais pas de manière suffisamment détaillée pour satisfaire les curieux qui m&#8217;ont rappelé à l&#8217;ordre et soumis des questions diverses. Donc je vais essayer de me rattraper&#8230;</p>
<p><strong>Qu&#8217;est-ce que GeoDjango ? </strong></p>
<p>C&#8217;est une extension de <a href="http://www.djangoproject.com/" target="_blank">Django</a> (ça existe même en <a href="http://www.django-fr.org/" target="_blank">français</a>) destinée à gérer les données géographique. OK, mais on n&#8217;avance pas là. Qu&#8217;est-ce que Django ? Un framework web en Python sous licence OpenSource BSD qui permet de structurer un site web au travers d&#8217;une structure Modele &#8211; Vue &#8211; Template très rapidement. Les modèles sont les tables de votre BD, mais en mode objet; les vues sont les actions et les manipulations diverses que vous voulez effectuer, et les templates sont des modèles de mise en page HTML destinés à présenter les résultats des vues. De plus, Django génère automatiquement un module d&#8217;administration des Modèles (des tables donc), qui permet facilement de <a href="http://fr.wikipedia.org/wiki/CRUD" target="_blank">CRUDer </a>(lire, retrouver, mettre à jour, supprimer) le contenu de votre SI. Un peu comme PhpMyAdmin, mais en mieux !</p>
<p>A ceci, GeoDjango ajoute donc la dimension spatiale, tout comme PostGIS ajoute la dimension spatiale à PostgreSQL. Cela peut fonctionner avec PostgreSQL, MySQL ou Oracle, mais pour ces deux derniers toutes les fonctions ne sont pas encore intégrées (voir la <a href="http://geodjango.org/docs/db-api.html#compatibility-table" target="_blank">table de compatibilité</a>). Vous obtenez alors des tables spatiales référencées en tant que modèles, et manipuler les objets géométriques (intersection, union, extent, aire&#8230;). Ceci grâce au portage dans le code de GeoDjango des librairies bien connues GDAL et GEOS.</p>
<p>Depuis août 2008, GeoDjango fait partie intégrante de Django, tout en gardant sa propre doc et son <a title="Le Wiki de GeoDjango" href="http://code.djangoproject.com/wiki/GeoDjango" target="_blank">wiki</a>.</p>
<p><strong>KiCéKiLaFé ? </strong></p>
<p>Justin Bronn, qui va bientôt passer ses examens pour devenir District Attorney (procureur&#8230;). A l&#8217;occasion de la mise en place de son application <a href="http://houstoncrimemaps.com/" target="_blank">Houston Crime Maps</a>, il a choisi Django et y a progressivement intégré la dimension spatiale dont il avait besoin.</p>
<p><strong>Et on peut voir ça où ? </strong></p>
<p>Une petite application de démonstration est accessible <a href="http://geoadmin.dbsgeo.com/" target="_blank">ici</a>. Elle a été construite par Dane Springmeyer, Josh Livni et  Christopher Schmidt. Vous pouvez utiliser le login/passwd geo/geo pour vous connecter au module d&#8217;administration. Surprise, les données géographiques sont éditables grâce à l&#8217;intégration d&#8217;<a href="http://www.openlayers.org/" target="_blank">OpenLayers</a> dans la page et de votre objet en mode vectoriel !</p>
<p>Sinon la<a href="http://geodjango.org/presentations/GeoDjango%20-%20Web%20Applications%20for%20Geographers%20with%20Deadlines%20(TNRIS%20Forum%20-%20Oct.%2029%2c%202008).pdf" target="_blank"> présentation faite par Justin Bronn au Forum Texas GIS en octobre 2008</a> donne aussi quelques liens.</p>
<p><strong>Ok, c&#8217;est beau, mais il y a de la doc ?</strong></p>
<p>Oui, aussi. D&#8217;abord un tutoriel : <a href="http://geodjango.org/docs/tutorial.html#geographic-data" target="_blank">http://geodjango.org/docs/tutorial.html#geographic-data</a></p>
<p>Un kit d&#8217;installation : <a href="http://geodjango.org/docs/install.html" target="_blank">http://geodjango.org/docs/install.html </a></p>
<p><a href="http://geodjango.org/docs/model-api.html" target="_blank">Les spécificités des modèles GeoDjango</a> (qui surclassent les modèles standard Django)</p>
<p>La <a href="http://geodjango.org/docs/db-api.html" target="_blank">DB-API</a>, qui intègre les opérateurs spatiaux.</p>
<p>et <a href="http://geodjango.org/docs/" target="_blank">plein d&#8217;autres trucs (sur GDAL, GEOS&#8230;)</a></p>
<p>et enfin, un <a href="http://groups.google.com/group/geodjango?lnk=" target="_blank">groupe de discussion</a> !</p>
<p><strong>et sinon, tu en penses quoi ? </strong></p>
<p>Je ne suis pas forcément très objectif, mais je suis un inconditionnel de Django en général et de GeoDjango en particulier. Ce que j&#8217;apprécie le plus est de pouvoir stocker les données géographiques sous PostGIS et de les manipuler ensuite pour les envoyer vers le client en GeoJSON par exemple après les avoir reprojetées ou simplifiées. Le GeoAdmin, et la capacité d&#8217;édition de la donnée qu&#8217;il apporte, même si elle est imparfaite, est aussi très agréable.</p>
<p>La prise en main n&#8217;est pas très difficile. Les tutoriels de Django et GeoDjango sont très accessibles, et la vitesse à laquelle on arrive à des résultats concrets donne vite envie d&#8217;aller plus loin.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/139/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Nouvelle année, nouvelles données INSEE</title>
		<link>http://www.neogeo-online.net/blog/archives/132/</link>
		<comments>http://www.neogeo-online.net/blog/archives/132/#comments</comments>
		<pubDate>Sun, 04 Jan 2009 21:43:18 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[ExtJS]]></category>
		<category><![CDATA[GeoDjango]]></category>
		<category><![CDATA[OpenLayers]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=132</guid>
		<description><![CDATA[Si la nouvelle méthode de recensement de l&#8217;INSEE, qui procède désormais par échantillonnage, avait déjà permis d&#8217;avoir quelques estimations, l&#8217;année 2009 s&#8217;ouvre avec la publication des données légales de population pour 2006, qui remplacent donc celles vieillissantes de 1999. Ces données légales sont les seules valeurs officielles concernant la population des communes et des entités [...]]]></description>
			<content:encoded><![CDATA[<p>Si la nouvelle méthode de recensement de l&#8217;INSEE, qui procède désormais par<a href="http://www.insee.fr/fr/publics/default.asp?page=communication/recensement/particuliers/changement.htm" target="_blank"> échantillonnage</a>, avait déjà permis d&#8217;avoir quelques estimations, l&#8217;année 2009 s&#8217;ouvre avec la publication des <a href="http://www.insee.fr/fr/ppp/bases-de-donnees/recensement/populations-legales/" target="_blank">données légales de population pour 2006</a>, qui remplacent donc celles vieillissantes de 1999. Ces données légales sont les seules valeurs officielles concernant la population des communes et des entités administratives d&#8217;un niveau supérieur.</p>
<p>Pour fêter ça, et parce que ce sont des données qui nous concernent tous, j&#8217;ai réalisé une<a href="http://www.opencarto.net/insee/mapview/recensement/" target="_blank"> petite application de cartographie dynamique</a> desdits résultats, qui mérite quelques détails techniques.</p>
<p><strong>La récupération des données.</strong></p>
<p>Un petit script en python récupérant les différente synthèses départementales du site de l&#8217;INSEE et en extrayant le contenu utile m&#8217;a permis de constituer une table communale actualisé. Une jointure sur une table spatiale issue des données de <a href="http://www.geosignal.fr/" target="_blank">Geosignal</a> (que je remercie au passage pour le droit d&#8217;usage concédé gracieusement) , un petit tour sur les anciennes données INSEE (celles de 1999), et me voici avec une table complète : géométrie, code insee, pop1999 et pop2006. Un petit calcul (var = pop2006/pop1999 &#8211; 1), un autre (densite = pop2006 / (area(the_geom)/1000000)) et voilà deux autres colonnes, la variation de population communale entre 1999 et 2006, et la densité de chacune des communes en 2006.</p>
<p><strong>La mise en ligne</strong></p>
<p>Divers projets récents m&#8217;ont permis de constituer un back-office de publication utilisant <a href="http://geodjango.org/" target="_blank">GeoDjango</a>, dans lequel j&#8217;ai donc injecté les données. Comme il intègre <a href="http://www.tilecache.org/" target="_blank">TileCache</a>, les deux couches principales de l&#8217;application sont ainsi tuilées et cachées. Les autres (départements, villes, labels) non. Branchons là-dessus un bon client cartographique fait d&#8217;<a href="http://www.openlayers.org/" target="_blank">OpenLayers</a> et d&#8217;<a href="http://www.extjs.com/">ExtJS</a>, et nous pouvons parcourir ce nouveau visage de la population française avec souplesse.</p>
<p><strong>L&#8217;accès aux données</strong></p>
<p>Un petit plus du client utilisé, et d&#8217;ExtJS en particulier, est sa capacité à accéder aux données attributaires en mode paginé. Un petit clic droit dans la liste des couches (notamment sur Densité ou Variation de population) ouvre un menu contextuel dans lequel l&#8217;item &#8216;Voir les données&#8217; permet de lister l&#8217;ensemble des 36580 données communales par bloc de 10. Le tableau utilisé permet également de trier ou filtrer les données, ce qui est toujours pratique pour découvrir qui est la plus dense, qui a eu la plus forte variation&#8230;</p>
<div id="attachment_133" class="wp-caption aligncenter" style="width: 310px"><img class="size-medium wp-image-133" title="Copie d'écran de l'application 'Recensement 2006'" src="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2009/01/capture-300x197.png" alt="Copie d'écran de l'application 'Recensement 2006'" width="300" height="197" /><p class="wp-caption-text">Copie d&#39;écran de l&#39;application &#39;Recensement 2006&#39;</p></div>
<p><strong>Les petits soucis</strong></p>
<p>Notre organisation administrative est complexe, et chaque année des communes fusionnent, se séparent ou disparaissent. Peu à la fois, mais à raison de 5 à 10 par an, ça peut faire beaucoup. Mon fond cartographique se base sur les communes de 1999, et je n&#8217;ai donc pu traiter correctement les données des communes ayant fusionnées avec d&#8217;autres (Lomme et Lille, Octeville et Cherbourg). Les variations et densités pour la ville ayant absorbé l&#8217;autre sont donc exagérées (la population 2006 de Lille est en fait la population de Lille et de Lomme, mais la carte ne l&#8217;affecte qu&#8217;à Lille et le calcul la compare avec la population 1999 de Lille seule). Mais sur le nombre, on est à moins de 1 pour 1000&#8230;</p>
<p><strong>L&#8217;analyse</strong></p>
<p>Contrairement aux résultats de 1999, qui faisaient apparaître une forte augmentation de la population dans les communes de première couronne (au contact de la ville centre), les résultats de 2006 montrent une stabilité de ces zones. Ce sont par contre les communes situées plus loin de la métropole qui voient leur population augmenter fortement. C&#8217;est vrai à Toulouse. C&#8217;est également visible à une autre échelle en région PACA, ou c&#8217;est tout l&#8217;arrière-pays qui voit la population augmenter tandis que le littoral stagne. C&#8217;est un peu la traduction spatiale et humaine de 7 ans de hausse continue des prix immobiliers, qui a sans cesse poussé les familles à aller plus loin, les rendant dès lors très sensibles au prix du carburant&#8230;</p>
<p>Littoralisation et métropolisation sont donc toujours très marquants, mais avec des expressions locales plus diffuses. Regardez Bordeaux aussi.</p>
<p>Intéressant aussi de constater la perte de population qui affecte la Champagne-Ardenne (sans &#8216;s&#8217; quand c&#8217;est la région !). C&#8217;est sans doute pourquoi le gouvernement songe à y envoyer les gens de l&#8217;INSEE&#8230;</p>
<p>Sinon, la France de 2006 compte 27187 communes de moins de 1000 habitants, soit près de 75 %.</p>
<p>Meilleurs voeux à tous !</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/132/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>De la qualité des données accessibles en ligne</title>
		<link>http://www.neogeo-online.net/blog/archives/128/</link>
		<comments>http://www.neogeo-online.net/blog/archives/128/#comments</comments>
		<pubDate>Tue, 16 Dec 2008 10:49:24 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[Cartes à la con]]></category>
		<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[GoogleMaps]]></category>
		<category><![CDATA[OpenLayers]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=128</guid>
		<description><![CDATA[Gratuites, comme celles de Google, libres, comme celle d&#8217;OpenStreeMap, ou payantes, la mise à disposition de données en ligne ne doit pas faire oublier la mesure de leur qualité. C&#8217;est une question qui avec l&#8217;arrivée de la directive INSPIRE et la probable multiplication des services web cartographiques n&#8217;en sera que plus sensible. Petit exemple vécu [...]]]></description>
			<content:encoded><![CDATA[<p>Gratuites, comme celles de Google, libres, comme celle d&#8217;OpenStreeMap, ou payantes, la mise à disposition de données en ligne ne doit pas faire oublier la mesure de leur qualité. C&#8217;est une question qui avec l&#8217;arrivée de la directive INSPIRE et la probable multiplication des services web cartographiques n&#8217;en sera que plus sensible.</p>
<p>Petit exemple vécu récemment : dans le cadre de la mise en oeuvre d&#8217;une application web de suivi de véhicules en Algérie, j&#8217;ai construit une interface proposant les fonds GoogleMaps.</p>
<p><a href="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2008/12/capture-1.png"><img class="alignnone size-full wp-image-129" title="L\'itinéraire GPS sur fond GoogleMaps" src="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2008/12/capture-1.png" alt="L\'itinéraire GPS sur fond GoogleMaps" width="500" height="448" /></a></p>
<p>Sauf qu&#8217;une fois les trajets intégrés, ils n&#8217;étaient absolument pas alignés avec le fond de plan. Donc on vérifie, les données source, les paramètres de projection en Spherical Mercator, la configuration de l&#8217;application, l&#8217;ellipsoïde de référence&#8230; bref, tout ce qu&#8217;on peut imaginer être à l&#8217;origine de ce qu&#8217;on considère comme un problème d&#8217;intégration de NOS données.</p>
<p>Puis on affiche le fond satellite :</p>
<p><a href="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2008/12/capture-2.png"><img class="aligncenter size-full wp-image-130" title="Le même trajet sur fond satellite" src="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2008/12/capture-2.png" alt="Le même trajet sur fond satellite" width="500" height="350" /></a></p>
<p>Et on découvre que mise à part une aberration GPS en début de parcours, tout colle parfaitement, et que c&#8217;était donc le fond de plan GoogleMaps qui étaient trompeur. D&#8217;autant plus trompeur d&#8217;ailleurs que la voirie qu&#8217;il présente n&#8217;a pas grand chose à voir avec ce qu&#8217;on voit sur l&#8217;image satellite. Nulle trace sur le plan des lacets visibles en haut à gauche par exemple.</p>
<p>Chez OpenStreetMap par contre, le tracé est de bien meilleure qualité&#8230;</p>
<p style="text-align: center;">
<p style="text-align: center;"><img class="alignnone size-medium wp-image-131 aligncenter" title="Fond de plan OSM" src="http://www.neogeo-online.net/blog/blog/wp-content/uploads/2008/12/capture-3-300x296.png" alt="Fond de plan OSM" width="300" height="296" /></p>
<p style="text-align: left;">mais uniquement quand il existe !</p>
<p style="text-align: left;">Données fragmentaires, obsolètes, erronées (et je m&#8217;en tiens à leur composante graphique, même pas attributaire !), sont autant d&#8217;écueils que les utilisateurs de services web cartographiques auront à gérer. Les métadonnées, quand elles existent, donnent des informations utiles (échelle, date&#8230;), mais rien ne permet de déterminer la qualité absolue d&#8217;une couche de données. Il ne faut donc jamais oublier que la donnée cartographique n&#8217;est, à l&#8217;instar des sondages, qu&#8217;une représentation simplifiée et conceptualisée de la réalité à un moment donné, et jamais une vérité définitive.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/128/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mieux comprendre les tuilages</title>
		<link>http://www.neogeo-online.net/blog/archives/127/</link>
		<comments>http://www.neogeo-online.net/blog/archives/127/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 13:57:37 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[TileCache]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=127</guid>
		<description><![CDATA[Voir c&#8217;est comprendre, ou du moins mieux comprendre. Cette page réalisée par Klokan Pietr Pridal permet de bien visualiser les grilles de tuilage utilisées en Spherical Mercator, que ce soit en TMS, Google ou QuadTree de Microsoft VirtualEarth. Chaque pyramide découpe le monde Spherical Mercator selon la même grille, seule change la manière de nommer [...]]]></description>
			<content:encoded><![CDATA[<p>Voir c&#8217;est comprendre, ou du moins mieux comprendre. <a href="http://www.maptiler.org/google-maps-coordinates-tile-bounds-projection/" target="_blank">Cette page réalisée par Klokan Pietr Pridal</a> permet de bien visualiser les grilles de tuilage utilisées en Spherical Mercator, que ce soit en TMS, Google ou QuadTree de Microsoft VirtualEarth.</p>
<p>Chaque pyramide découpe le monde Spherical Mercator selon la même grille, seule change la manière de nommer les tuiles. On remarquera donc l&#8217;inversion de l&#8217;axe des Y entre le système Google et le TMS (il faut bien faire travailler les développeurs), et le fait que seul le système quadtree puisse s&#8217;affranchir de l&#8217;information &laquo;&nbsp;niveau de zoom&nbsp;&raquo; puisqu&#8217;il l&#8217;intègre naturellement : c&#8217;est le nombre de chiffres du numéro de la dalle.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/127/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Piétonabilité : de l&#8217;analyse raster dans du GoogleMaps</title>
		<link>http://www.neogeo-online.net/blog/archives/120/</link>
		<comments>http://www.neogeo-online.net/blog/archives/120/#comments</comments>
		<pubDate>Mon, 13 Oct 2008 11:56:17 +0000</pubDate>
		<dc:creator>Guillaume Sueur</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[GoogleMaps]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=120</guid>
		<description><![CDATA[Jolie appli que je découvre aujourd&#8217;hui : WalkScore a pour but de déterminer un coefficient de &#171;&#160;piétonabilité&#160;&#187; des rues américaines, cartographié dans GoogleMaps. Mais tout l&#8217;intérêt de la chose, c&#8217;est qu&#8217;on voit apparaître un fond raster analytique, et non une thématisation sur les quartiers par exemple. Les résultats ont été obtenus en utilisant Google Local [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Walkscore à Portland" href="http://www.walkscore.com/rankings/Portland" target="_blank">Jolie appli</a> que je découvre aujourd&#8217;hui : WalkScore a pour but de déterminer un coefficient de &laquo;&nbsp;piétonabilité&nbsp;&raquo; des rues américaines, cartographié dans GoogleMaps. Mais tout l&#8217;intérêt de la chose, c&#8217;est qu&#8217;on voit apparaître un fond raster analytique, et non une thématisation sur les quartiers par exemple.</p>
<p>Les <a href="http://www.walkscore.com/rankings/ranking-methodology.shtml" target="_blank">résultats ont été obtenus</a> en utilisant Google Local Search API sur un maillage de 1,123,855 points différents situés dans les 40 plus grandes villes américaines. Sur chacun des points, un ensemble de divers services a été recherché, pour donner in fine un score. La grille des scores a ensuite été rastérisée. On ne va pas discuter de la méthodologie, c&#8217;est une réflexion que <a href="http://www.walkscore.com/how-it-doesnt-work.shtml" target="_blank">WalkScore continue d&#8217;affiner</a>. Mais la démarche est enthousiasmante car elle rappelle que les phénomènes spatiaux sont bien plus souvent continus que discrets, et qu&#8217;ils ne s&#8217;arrêtent pas aux frontières comme on voudrait vous le <a href="http://fr.meilleursagents.com/prix-immobilier/paris-75/#mb=48.801662612342525|2.215118408203125|48.90332040974438|2.4262619018554688" target="_blank">faire croire</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/120/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quelques tuiles pour l&#8217;hiver</title>
		<link>http://www.neogeo-online.net/blog/archives/114/</link>
		<comments>http://www.neogeo-online.net/blog/archives/114/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 21:47:36 +0000</pubDate>
		<dc:creator>Guillaume</dc:creator>
				<category><![CDATA[GeoHacks]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[GDAL]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[TileCache]]></category>
		<category><![CDATA[TMS]]></category>

		<guid isPermaLink="false">http://www.neogeo-online.net/?p=114</guid>
		<description><![CDATA[L&#8217;intérêt de tuiler un jeu de données raster, c&#8217;est-à-dire de préparer des imagettes multi-échelles qui seront exploitées nativement dans une application de webmapping n&#8217;est plus à démontrer. Dans le cadre du Google Summer of Code 2008, Klokan Petr Pridal vient d&#8217;ajouter un nouveau module de ce type aux outils GDAL : gdal2tiles. Son intérêt principal [...]]]></description>
			<content:encoded><![CDATA[<p>L&#8217;intérêt de tuiler un jeu de données raster, c&#8217;est-à-dire de préparer des imagettes multi-échelles qui seront exploitées nativement dans une application de webmapping n&#8217;est plus à <a title="Article sur TileCache" href="http://www.neogeo-online.net/blog/archives/84/" target="_self">démontrer</a>. Dans le cadre du <a href="http://code.google.com/soc/2008/" target="_blank">Google Summer of Code 2008</a>, Klokan Petr Pridal vient d&#8217;ajouter un nouveau module de ce type aux outils <a href="http://www.gdal.org/" target="_blank">GDAL</a> : <a href="http://www.klokan.cz/projects/gdal2tiles/" target="_blank">gdal2tiles</a>.</p>
<p>Son intérêt principal est de pouvoir exploiter directement une image existante (ECW, TIFF, MrSid, JPEG, JPEG2000 et PNG) sans passer par le relai d&#8217;un serveur WMS par exemple comme TileCache. Une arborescence est alors créée répondant aux principes du TMS (<a title="Les spécifications du TMS" href="http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification" target="_blank">Tile Mapping Service</a>). Publiée dans un répertoire web, elle est alors directement exploitable par les client TMS tels qu&#8217;OpenLayers.</p>
<p>Mais ce n&#8217;est pas tout. Klokan a également inclus des options spécifiques à la création de tuiles pour GoogleMaps (en projection sphérique Mercator donc) ou GoogleEarth (en WGS 84). Qui plus est, l&#8217;application génère automatiquement, pour peu qu&#8217;on lui demande, des fichiers html pour une mise en ligne immédiate. <a title="Exemple sous GoogleMaps" href="http://www.staremapy.cz/soc/samplemap/googlemaps.html">Simple</a> mais <a title="Exemple sous OpenLayers" href="http://www.staremapy.cz/soc/samplemap/openlayers.html" target="_blank">efficace</a>, même dans <a title="Exemple dans GoogleEarth" href="http://www.maptiler.org/example-usgs-drg-grand-canyon-gtiff/usgs-drg-grand-canyon.kml" target="_blank">GoogleEarth</a> qui exploite les <a title="Doc sur les SuperOverlays" href="http://code.google.com/apis/kml/documentation/kml_21tutorial.html#superoverlays" target="_blank">SuperOverlays</a> déjà disponible avec <a href="http://tilecache.org">TileCache</a> !</p>
<p style="text-align: left;">Mais ce n&#8217;est pas tout ! Klokan a également pensé à ceux d&#8217;entre nous qui ne sont jamais arrivés à faire une simple conversion ogr2ogr de Shapefile en MapInfo&#8230; Il prépare <a title="Le site de MapTiler" href="http://www.maptiler.org/" target="_blank">MapTiler</a>, une interface  graphique pilotant gdal2tiles pour générer ses tuiles en faisant clic clic clic ! Si c&#8217;est pas gentil ça !</p>
<p style="text-align: left;">Pour les autres, voici les quelques options glanées dans la <a title="La doc" href="http://trac.osgeo.org/gdal/wiki/UserDocs/Gdal2Tiles" target="_blank">documentation</a> :</p>
<pre class="wiki">gdal2tiles.py [-title "Title"] [-publishurl http://yourserver/dir/]
              [-nogooglemaps] [-noopenlayers] [-nokml]
              [-googlemapskey KEY] [-forcekml] [-v]
               input_file [output_dir]
-title : le titre pour les metadata xml, les pages web et le KML
-publishurl : URL de publication du répertoire contenant les tuiles
-nogooglemaps : pas de génération de page GoogleMaps
-noopenlayers : pas de génération de page OpenLayers
-nokml : pas de génération de KML
-googlemapskey : votre clé GM pour l'utilisation de la page html GoogleMaps
-forcekml : forcer la génération du KML
-v : mode verbeux.
input_file : fichier à traiter
output_dir : répertoire de création des tuiles</pre>
<p>Il faut bien noter que gdal2tiles.py est un module Python, et que GDAL doit donc avoir été compilé avec l&#8217;option &#8211;enable-python.</p>
<p>Source : gdal-dev mailing list</p>
]]></content:encoded>
			<wfw:commentRss>http://www.neogeo-online.net/blog/archives/114/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
