Bonjour à tous
habitué à utiliser OpenJump pour ce genre de choses, je ne (re)trouve pas dans QGis la possibilité de, à partir d'un ensemble d'arcs, calculer un graphe planaire. Ai-je mal cherché ou QGis ne propose-t-il pas cette fonctionnalité ?
Bonjour à tous
habitué à utiliser OpenJump pour ce genre de choses, je ne (re)trouve pas dans QGis la possibilité de, à partir d'un ensemble d'arcs, calculer un graphe planaire. Ai-je mal cherché ou QGis ne propose-t-il pas cette fonctionnalité ?

non, je ne crois pas, mais on peut utiliser la console Python en se basant sur le module Python networkx comme cela a été fait pour les shapefiles dans http://www.portailsig.org/content/py...-un-reseau-top
Cette démarche a été transformée en un plugin expérimental par Tom Holderness dans https://github.com/talltom/NetworkX-Tools-QGIS-Plugin
La deuxième solution est de se baser sur la classe Network analysis library (http://www.qgis.org/api/group__networkanalysis.html) qui peut être traitée dans la console:http://www.qgis.org/pyqgis-cookbook/...-analysis.html
Vous avez le droit de poster sur différents forums mais prévenez nous qu'on ne perde pas de temps à faire les mêmes réponses !
"Caminante, no hay camino, el camino se hace al andar" A. Machado
Bonjour Gene et merci pour ta réponse,
J'ai consulté les liens que tu as fournis et lu les articles aussi mais j'ai l'impression qu'ils n'abordent pas les aspects qui m'intéressent (et que j'aurais dû préciser dans mon post initial).
Par exemple, dans networkx, ce sont les problématiques liées aux parcours et trajets qui sont traitées. La localisation géographique des arcs importe peu (même si, dans la fonction read_shp qui crée un graphe à partir d'un shapefile, les coordonnées des noeuds sont les coordonnées géographiques : la localisation des autres points est ignorée et seul le fait que les noeuds soient reliés est pris en compte).
Le graphe planaire d'OpenJump (barre de menu Outils + Edition géométrie + Conversion + Graphe planaire) fournit les couches (cetaines sont optionnelles) :
- des arcs (avec sommets initial et final, faces gauche et droite),
- des noeuds,
- des faces.
Les arcs en entrée sont donc recoupés, si nécessaire, aux intersections, les parties d'arcs communes sont "commonalisées" (vraie partage de géométrie) et les faces induites sont calculées. Ce sera plus clair sur un petit exemple.
les arcs en entrée :
résultat du calcul de graphe planaire sous OpenJump :
Ce sont ces aspects qui m'intéressent, pour passer d'un format sans topologie, shapefile en l'occurence, à un autre, avec topologie (le nom a peu de chance de te parler).
Dernière modification par PLeroux ; 14/10/2012 à 07h33.
Sans doute faut-il regarder du côté de GRASS

De fait, les seuls SIGs qui sont topologiques par nature sont ArcInfo et GRASS GIS (voir http://www.portailsig.org/content/grass-gis-geometries-topologies-et-consequences-pratiques-vecteurs-rasters-volumes)
Vous avez le droit de poster sur différents forums mais prévenez nous qu'on ne perde pas de temps à faire les mêmes réponses !
"Caminante, no hay camino, el camino se hace al andar" A. Machado
Merci à tous les deux pour les pistes (GRASS et ArcInfo). J'ai testé GRASS et plus particulièrement v.clean (que gene m'a soufflé).
En plus du "simple" calcul du graphe planaire, cette commande permet aussi, avec ses très nombreuses options, de corriger/nettoyer les données avant de procéder au calcul proprement-dit (saisies topologiquement imparfaites, qui provoquent l'apparition de micro surfaces (trous ou recouvrements) à cause d'un non partage strict de la géométrie).
Mais je suis obligé de me restreindre à OpenJump et QGIS car, in fine, ce calcul sera utilisé en production. Je ne peux pas me permettre de multiplier les logiciels (OpenJump, QGIS, GeoConcept, un autre "maison" déjà utilisés).
Tout ça va se terminer par l'écriture d'un script (et peut-être d'un plugin QGIS) en Python. Depuis la toute dernière version de Shapely (mi-septembre), j'ai toutes les billes pour reproduire le calcul de graphe planaire proposé par OpenJump.
Dernière chose : OpenJump n'est pas "topologique" (j'ai de très bonnes sources). L'import de shapefiles, par exemple, ne s'accompagne pas d'un calcul de ... (de quoi ?) comme avec GRASS où l'on voit la différence. QGIS pourrait, très bien, proposer une fonctionnalité identique.
Liens sociaux