Forum des Hydrauliciens marocain
Bienvenue au forum des hydrauliciens marocain,

Pour visualiser les images et les liens de téléchargement veuillez s'inscrire.

Merci de votre compréhension.

Rejoignez le forum, c’est rapide et facile

Forum des Hydrauliciens marocain
Bienvenue au forum des hydrauliciens marocain,

Pour visualiser les images et les liens de téléchargement veuillez s'inscrire.

Merci de votre compréhension.
Forum des Hydrauliciens marocain
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Connexion

Récupérer mon mot de passe

Horloge
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

facebook
gme

gme

Derniers sujets
» Plan de 400 villa
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyMer 23 Mar - 11:36 par Admin

» bebliotheque des fichier Autocad
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyLun 21 Mai - 18:30 par said123456

» Epanet 2. pour simulation hydraulique
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyLun 21 Mai - 18:21 par said123456

» Formation pour calcul de projet routier sur covadis
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyMer 27 Avr - 8:24 par KOMO

» GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes)
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyMar 26 Avr - 7:44 par Admin

» cours pratique et simple en VRD
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyLun 25 Avr - 14:00 par Admin

» stl a tt je voudrai une aide sur epanet comment le retrouve
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyJeu 21 Avr - 9:40 par Admin

» calcul de terrassement assainissement
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyMer 20 Avr - 16:20 par ALI

» projet d Assainissement et Mensura Genius
GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) EmptyMar 12 Avr - 14:40 par Admin

Sondage
vous ete le visiteur N
Mon Site Gratuit : Compteur de visiteurs
plan du site
Mon Site Gratuit : Inserez une carte Google Maps sur votre site
Le deal à ne pas rater :
Pokémon EV06 : où acheter le Bundle Lot 6 Boosters Mascarade ...
Voir le deal

GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes)

Aller en bas

GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes) Empty GRASS GIS : géométries, topologies et conséquences pratiques (vecteurs, rasters, volumes)

Message par Admin Mar 26 Avr - 7:44

POUR QUE TOUS PROFITE DE L'INFO, CE SUJET ET UNE COPIE D'UN AUTRE FORUM.





Après avoir examiné la structure d'une
base de données GRASS, il est intéressant d'examiner comment sont
représentés les objets spatiaux dans cette base, leurs géométries, et les relations entre ces géométries, qui sont du domaine de la topologie.


Encore une fois, une recherche de ce
terme sur le Net, appliqué aux SIGs, aboutira, dans la majorité des
cas, aux explications dans le monde ESRI. Bien qu'elles soient
généralement très claires et très bien faites, elles ne s'appliquent pas
de cette manière à GRASS GIS.
Topologie



Latopologie est une
branche des mathématiques qui s'intéresse aux propriétés qualitatives
des objets (mathématiques), indépendamment de toute mesure. Le tout se
fait dans un espace topologique qui s'oppose à un espace métrique (quantitatif,
où, par exemple, des distances sont définies). C'est un sujet très
complexe que le monde des SIGs ne fait qu'effleurer. Je ne peux que vous
conseiller la lecture de « Topologicon », de Jean-Pierre Petit,
l'astrophysicien pédagogue, dans la série en bande dessinée « Les aventures d'Anselme Laturlu
Le ruban de Möbius est souvent cité comme un objet topologique remarquable. Le voici réalisé avec GRASS.

[Vous devez être inscrit et connecté pour voir cette image]


Il est cependant nécessaire de préciser quelques notions fondamentales à l'aide de deux figures.
Équivalence topologique ou homéomorphisme



La topologie se retrouve en géométrie dans les transformations par des déformations continues
(sans déchirement, « trou » ni collage dans les structures) d'objets.
Dans la figure suivante, adaptée d'une de celles du livre « Gis: A computing perspective», les 4 formes suivantes sont analysées qualitativement :


image adaptée de la fig. 3.24 de « Gis; A computing perspective »

Il est intuitivement possible d'imaginer :

  • qu'en étirant, contractant ou tordant
    la forme B, il est possible de retrouver la forme A (un cercle, quelque
    soit sa dimension) ;
  • que pour passer de C à A, il faudra percer (ou reboucher) le trou (déformation non continue) ;
  • la forme D a été obtenue en collant le
    ruban sur lui même à un point de jonction. Pour passer de D à A, la
    déformation n'est donc pas continue.

On dit que les formes A et B sont topologiquement compatibles ou homéomorphes. Aucune n'est topologiquement équivalente à C (trou) et D (collage). C et D ne sont pas non plus homéomorphes.
Extension à la notion de voisinage et de limites.



Cette équivalence topologique a été, depuis longtemps, étendue aux notions de limites et de voisinages. Dans la figure suivante, les trois représentations sont aussi équivalentes du point de vue topologique.

[Vous devez être inscrit et connecté pour voir cette image]
Dans le domaine des Sigs



Cette notion de voisinage est aussi une
notion spatiale. Les SIGs vont donc faire appel à une topologie pour
rendre compte de façon sommaire, mais synthétique de la proximité entre
les entités. Les relations topologiques exploitées dans ce contexte
seront l'adjacence (voisinage), la connectivité, l'inclusion et
l'intersection, le tout dans un espace topologique. Mais ces objets ont aussi une géométrie simple ou complexe dans un espace métrique (ils ont des dimensions physiques).

En résumé (pour les SIGs)



  • ce qui relève de l'espace topologique :

    • un point est situé à l'extrémité d'une ligne ;
    • un point est situé sur le contour d'un polygone ;
    • un point est situé à l'intérieur d'un polygone ou d'une région ;
    • un polygone est connecté à une ligne ;
    • une aire est simple, non trouée ;
    • etc.

  • ce qui relève de l'espace métrique :

    • la distance entre deux points ;
    • la longueur d'une ligne ;
    • l'angle d'une ligne entre deux points ;
    • le périmètre ou la surface d'une aire ;
    • etc.




Mais un espace métrique peut être muni d'une topologie induite par les distances. C'est la topologie qui est utilisée dans les SIGs.
Géométries vectorielles



Examinons donc tout d'abord comment sont
encodées les géométries vectorielles dans GRASS (espace métrique
euclidien). Les divers types sont résumés dans la figure suivante.

[Vous devez être inscrit et connecté pour voir cette image]

  • point, point 3D : un simple point (x,y et x,y,z) ;
  • ligne, ligne 3D : une séquence (orientée) de sommets connectés par des segments qui peut être une ligne simple (arc) ou une polyligne. Les points extrémités sont appelés noeuds ;
  • contour : une ligne complètement fermée, c'est-à-dire un polygone ;

    • comme il n'y a plus de points extrémités, les sommets sont aussi des noeuds et les segments des arcs ;
    • ce contour (polygone) ne doit pas être confondu avec une aire ou une surface, qui sont définies dans GRASS par la topologie ;

  • face : une aire 3D ;
  • les volumes sont en voie d'implémentation, sur base des faces et des kernels (centroïde 3D, définis par la topologie)


Les conversions entre ces divers types sont possibles (v.type, v.build.polylines etc.).
Topologie vectorielle et principales règles


Présentation



Certains affirment ou disent encore que
GRASS GIS ne sait gèrer que les shapefiles (géométrie non topologique),
mais c'est une opinion un peu surannée... Depuis longtemps (surtout à
partir des versions 6.x), GRASS possède sa propre représentation
vectorielle (qui n'a rien à voir avec les shapefiles) avec :

  • une topologie de réseau (relations de connectivité), basée sur la DGLib (Directed Graph Library, [Vous devez être inscrit et connecté pour voir ce lien]
    qui est une bibliothèque pour les Graphes orientés). Elle apporte tous
    les éléments de la théorie des Graphes. Il est possible de calculer des
    itinéraires, les chemins les plus courts, les sous-graphes dans un
    réseau, etc. ;
  • une topologie de voisinage (relations d'adjacence / voisinage et d'intersection) qui
    permet, entre autres choses, de connaître les relations entre chaque
    polygone / surface à partir des segments / arcs et des sommets /
    noeuds ;
  • une topologie d'inclusion (relations d'inclusion)qui permet de gérer le fait que la géométrie d'un objet peut contenir ou être contenue par un autre.

Principales règles



Ce que la communauté [Vous devez être inscrit et connecté pour voir ce lien]
appelle « construction d'une topologie » consiste à établir des règles
d'encodage des objets pour ordonner les relations entre noeuds, arcs et
polygones. Ces règles ont été formalisées par l' OGC et présentées (en partie) sur le Portail dans « Python:
le module Shapely, géométries, prédicats spatiaux, analyse spatiale,
matrices de Clementini (DE-9IM), traitements de shapefiles ou autres, et
représentation avec matplotlib
». La représentation de relations topologiques recommandées s’appuie sur un modèle composé de 8 prédicats binaires :

égalité, déconnexion,
intersection, adjacence, connectivité, inclusion et chevauchement qui
peuvent être combinées (inclusion et adjacence, par exemple).

GRASS, tout comme ESRI et autres, suit ces recommandations et cela se fait lors de la numérisation d'un objet ou postérieurement avec le module v.build. Les principales règles sont les suivantes :

  • les arcs ne peuvent pas se croiser. Ils
    sont découpés à leur intersection avec un sommet commun pour former des
    segments distincts (intersection, connectivité) ;


[Vous devez être inscrit et connecté pour voir cette image]

  • les lignes jointives (qui partagent un noeud) doivent être reliées par un noeud commun (adjacence, connectivité) ;


[Vous devez être inscrit et connecté pour voir cette image]

  • les limites de polygones jointifs doivent être uniques (adjacence, connectivité) ;


[Vous devez être inscrit et connecté pour voir cette image]

  • une entité surfacique ou aire est un ensemble topologique constitué par un centroïde (point situé à l'intérieur d'un contour) et un contour;

    • elle est identifiée par ce centroïde (topologie de type centroïde) ;
    • un centroïde est lié exclusivement à une entité surfacique ;
    • il est important de noter qu'une aire et son contour sont deux objets différents ;
    • un polygone sans centroïde n'est pas une entité surfacique.




[Vous devez être inscrit et connecté pour voir cette image]

  • Les entités surfaciques situées à l'intérieur d'une autre entité (anneaux, « polygonestroués ») sont appelées des îles (island, inclusion) ;


[Vous devez être inscrit et connecté pour voir cette image]

  • les contours des entités surfaciques
    doivent être explicitement fermés (sinon ce sont des lignes). Les
    sommets sont aussi des noeuds et les segments des arcs. Cela signifie
    qu'il y a moyen de discriminer des aires jointives en fonction de leurs
    contours et des noeuds communs (adjacence, connectivité et inclusion) ;


[Vous devez être inscrit et connecté pour voir cette image]

  • pour assurer la cohérence topologique, une couche vectorielle GRASS est composée de diverses sous-couches.

    • elles permettent la représentation des
      éléments géométriques de type différent (points, lignes, contours,
      surfaces) et/ou des éléments liés à des tables attributaires différentes
      ;
    • dans GRASS, ce sont les « layers » (0, 1...) ;
    • Il est possible, mais pas recommandé,
      de mélanger les géométries différentes dans une même sous-couche, mais
      toutes les règles précédentes devront être respectées et appliquées en
      spécifiant explicitement le type de géométrie d'un objet. Par exemple,
      dans le cas d'une route, ligne, qui constitue aussi la limite d'un
      champ, entité surfacique :

      • le champ doit être défini comme une aire;
      • la route doit être définie comme une ligne;
      • le segment commun doit être défini à la fois comme segment de la ligne et comme arc / segment du contour de l'aire.

    • lors de la structuration en sous-couches, ces relations sont ajustées automatiquement.




[Vous devez être inscrit et connecté pour voir cette image]

une seule sous-couche plusieurs sous-couches

Tout ça, c'est bien beau en théorie, mais comment cela s'applique-t-il en pratique ?
En pratique



Analisons le cas de l'importation d'un
shapefile surfacique. Aprés la phase d'importation s.s. , v.build
commence par le nettoyer (Passe 1) puis construit la topologie en
plusieurs passes, si nécessaire.

[Vous devez être inscrit et connecté pour voir cette image]

Une fois encodé comme vecteur, avec ses
aires, ses îles et la création des centroïdes attachés, comment se
présente la topologie ?
représentation réelle de la topologie de voisinage

(en italien) a décomposé la topologie complète d'un ensemble d'entités
surfaciques représentées dans la figure suivante. Il fournit, de manière
détaillée, toute la procédure, impressionnante, qui l'a conduit aux
résultats.

  • la topologie des arcs et des contours / polygones (figure reprise des articles cités)


[Vous devez être inscrit et connecté pour voir cette image]

  • la topologie des noeuds (figure reprise des articles cités) :


[Vous devez être inscrit et connecté pour voir cette image]

  • les tableaux de synthèse (fournis la démarche) :


[Vous devez être inscrit et connecté pour voir cette image]an nIls l
représentation réelle de la topologie de réseau



Il a fait de même avec la topologie de réseau, [Vous devez être inscrit et connecté pour voir ce lien]Après avoir généré un réseau, décomposé la topologie, il montre comment obtenir les divers éléments . Les figures suivantes sont reprises de l'article cité :
[Vous devez être inscrit et connecté pour voir cette image]

Iso-distances (v.net.iso) Chemin le plus court (v.net.path, d.path)
[Vous devez être inscrit et connecté pour voir cette image]

arbres de Steiner de longueur minimale (v.net.steiner) sous-graphes (v.net.alloc)

Si l'on veut vraiment comprendre les
relations topologiques dans GRASS GIS, il est intéressant de refaire
toutes les procédures des divers articles en les assimilant.
Représentation et topologie des rasters



Depuis le début de son histoire, la spécialité de GRASS a été le traitement des rasters.

  • Ils sont tous représentés par un quadrillage matriciel (grille de points) qui contient implicitement des informations géométriques et topologiques ;
  • l'unité fondamentale est la cellule (un pixel ou un voxel
    (pixel 3D)) dont les dimensions xy(z) définissent la résolution. A
    chaque pixels peuvent être associées 1 à n valeurs (matrices) ;
  • ces matrices peuvent être codées sous forme de :

    • matrices bidimensionnelles avec des valeurs entières (CELL) ou décimales avec précision simple (FCELL) ou double (DCELL) ;
    • matrices tridimensionnelles (GRID3D) avec des valeurs décimales à précision simple ou double.




[Vous devez être inscrit et connecté pour voir cette image]

  • les relations topologiques induites sont le voisinage / adjacence et la connectivité;


[Vous devez être inscrit et connecté pour voir cette image]

relations d'adjacence/voisinage dans un raster

  • Grass permet de représenter :

    • les rasters 2D dont l'élement fondamental est le pixel x,y ;
    • les rasters dits 2.5D dont l'élement fondamental est toujours le pixel (x,y) mais où les valeurs z sont insérées comme valeurs dans la matrice ;
    • les véritables rasters et volumes 3D, dont l'élément fondamental est le voxel (x,y,z) (z n'est plus une valeur comme un autre, mais une coordonnée) ;
    • un volume 3D est constitué d'une « pile » de rasters 2D ou 2.5D.




[Vous devez être inscrit et connecté pour voir cette image]

[Vous devez être inscrit et connecté pour voir ce lien]
[Vous devez être inscrit et connecté pour voir cette image]
Tous les outils pour l'analyse spatiale sont disponibles
(r.reclass,r.resample, etc.), sans extension supplémentaire, de même que l'algèbre spatiale (r.mapcalc pour les rasters 2D et r3.mapcalc pour les rasters 3D) mais le sujet sera traité dans un autre article.

Conséquences pratiques

Vecteurs ou rasters ?



  • En général, GRASS a plus de
    potentialités dans le traitement les rasters que dans celui des vecteurs
    (histoire oblige). Cependant, il est très facile de transformer un
    vecteur en raster (v.to.rast) en conservant les
    spécificités du vecteur dans la(les) matrice(s) du raster (ici, valeur
    unique de la table attributaire = CAT du raster), puis de le traiter
    comme un raster. Dans les figures suivantes, vecteur et rasters
    donneront les mêmes informations si je clique sur un point, que ce soit
    en 2D ou en 2.5D (avec en plus, le z) ;


[Vous devez être inscrit et connecté pour voir cette image]

vecteur v.to.rast --> raster résultant

[Vous devez être inscrit et connecté pour voir cette image]

raster 2.5 D (les valeurs z sont ajoutées, à partir d'un MNT , avec r.mapcalc)

  • c'est surtout vrai pour les modélisations 3D avec les nombreux modules pour l'interpolation de surfaces ou de volumes. Il n'y a ainsi pas de module standard pour créer des TIN (Triangulated irregular Network), les résultats de l'interpolation par la méthode des splines (v.surf.xx, r.surf.xx) donnant de meilleurs résultats. Les modules v.delaunay et v.voronoi sont néanmoins présents et si l'on veut vraiment des TINs il faut consulter [Vous devez être inscrit et connecté pour voir ce lien]. Des exemples ont été donnés dans « Grass Gis et Paraview:la modélisation géologique 3D pour les démunis, ou les enthousiastes... »

Lors de l'importation



  • le module v.in.ogr va toujours essayer de construire une topologie pour le vecteur avec le module v.build et les paramètres « snap » ou « Min_area » dans v.in.ogr (en particulier lors de l'importation de shapefiles qui n'ont aucune topologie) ;
  • si il y a des erreurs, elles peuvent être sélectionnées avec le paramètre «error» puis corrigées automatiquement (jusqu'à un certain point) avec le module v.clean ou manuellement avec le module v.digit ;
  • dans certains cas, les vecteurs n'ont pas besoin d'une topologie (dans
    le cas de grandes quantités de données comme les données LIDAR). C'est
    pourquoi certains modules autorisent l'importation de valeurs sans
    topologie (exemple le module v.in.ascii avec l'attribut « -b ») . Ils sont classés comme vecteurs de niveau 1 par rapport à ceux avec topologie qui sont classés au niveau 2 ;
  • quelque soit le type de raster (images
    satellites, etc.), les divers modules d'importation le feront toujours
    sous une forme matricielle ;
  • ces rasters seront toujours décomposés
    en leurs éléments essentiels (fichiers .red, .green et .blue pour les
    rasters multibande, par exemple). Il y a toujours moyen de recomposer
    l'image avec r.composite.
Lors de l'exportation
si un vecteur est exporté sous forme de

  • shapefile, la représentation résultante perdra toutes ses relations
    topologiques. Malheureusement, il n'y a pas encore de format
    d'exportation qui les conserve ;
  • c'est la même chose avec les rasters ...
Avec le plugin grass dans QGIS
GRASS n'est pas QGIS (géométrie et

  • topologie) et si l'on veut utiliser le plugin grass pour appliquer les
    modules de GRASS dans QGIS, il est toujours préférable d'importer
    préalablement les objets dans un secteur (LOCATION) pour réellement
    bénéficier de toutes les possibilités.
Conclusions
J'espère avoir donné une idée des
géométries et de leurs relations topologiques dans GRASS, tant pour les
vecteurs que pour les rasters.

Encore une fois, ce n'est pas ArcGIS
avec sa très belle interface, fonctionnelle, et sa simplicité apparente,
le tout avec la solide expérience acquise, qui masque souvent les
difficultés (quoique...). Ici, il faut « mettre les mains dans le
cambouis » et l'apprentissage est long, avec, malheureusement,
relativement peu de documentation (il faut fouiller) . Mais on devient
vite efficace, une fois ces concepts bien maitrisés.

Tous les traitements ont été effectués sur Mac OS X avec GRASS GIS 6.4.1 RC2 et Inkscape pour les figures.
Admin
Admin
Admin
Admin

Messages : 285
Points : 1021
Réputation : 60
Date d'inscription : 21/09/2010
Age : 43
Localisation : Rabat

http://www.www.hydraulique.co.cc

Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum