#1 Wed 12 April 2017 08:42
- itawa25
- Juste Inscrit !
- Date d'inscription: 11 Apr 2017
- Messages: 2
Intersection de zones tampons d'une même couche
Bonjour,
Actuellement en stage de Master 2 en SIG, je bloque sur un problème, que voici :
Pour faire simple, J'ai une table attributaire contenant 105 points. J'ai effectué une zone tampon de 50 mètres autour de cette couche (ce qui me donne 105 zones tampons indépendantes autour de ces 105 points qui, parfois, peuvent se recouper entre elles, 1 ou plusieurs fois).
Je souhaiterai maintenant extraire les zones d'intersection de chaque zone tampon de cette couche, et si possible, pouvoir identifier les zones qui sont à l'intersection de 2 zones tampons, les zones qui sont à l'intersection de 3 zones tampons, puis de 4,...ect.
Est ce possible ?
Si le problème n'est pas clair, n'hésitez pas à me demander plus de détails.
Merci d'avance, Geoffrey.
Hors ligne
#2 Wed 12 April 2017 23:10
- CRIGBAB
- Participant assidu
- Lieu: Bayonne
- Date d'inscription: 14 Nov 2005
- Messages: 180
Re: Intersection de zones tampons d'une même couche
Bonsoir,
Voici une procédure testée pour votre problème.
methodo pour extraction de zone de recouvrement.
1) création de deux tables identiques
Creer la table des zones tampons et y ajouter deux colonnes XC YC commme entier (ZonesA)
Faire une copie de ZonesA avec le nom ZonesB et ouvrir cette table.
Vous avez donc deux tables ZonesA et ZonesB identiques et superposées dans une carte.
2) Nous allons découper ZonesB avec les ZonesA
Pour cela rendre la table ZonesB éditable dans la carte
Vous sélectionnez tous les objets de ZonesB
Vous les definissez comme cibles (Objet->Définir cible)
Vous selectionnez tous les objets de ZonesA
Vous découpez vos objets cibles (Objet->Découper)
vous enregistrez votre table ZonesB et vous la compactez
3) Suppression des doublons de ZonesB
Vous l'ajoutez de nouveau à la carte et vous mettez pour cette table ZonesB les champs XC et YC
Dans Table->Mettre à jour colonne
dans la colonne XC vous mettez la formule suivante
centroidx(obj)
idem pour YC
Dans Table->Mettre à jour colonne
dans la colonne YC vous mettez la formule suivante
centroidy(obj)
Vous enregistrez votre table ZonesB
Avec l'outil Suppression des doublons vous allez supprimer les objets de ZonesB qui portent les mêmes XC et YC
Vous créez alors une table ZonesC propre qui est un découpage sans doublon de ZonesA par elle-même.
Cet outil est à charger dans le menu Outils->Gestionnaire d'Outils et charger Suppression des doublons
le mbx est celui-ci :
C:\Program Files\MapInfo\Professional1200\Tools\DeleteDuplicates.MBX
4) Décompte du nombre de ZonesA présentes dans ZonesC
Pour cela il faut dans Table->Mettre à jour colonne avec les paramètres suivants
Table à mettre à jour ZonesC
Utiliser une valeur de la table ZonesA
jointure où l'objet de la table ZonesA 'contient' objet de la table ZonesC
Choisir la colonne qui contiendra le nombre d'objets comptés (ou ajout d'une colonne temporaire)
dans Valeur choisir Count
et affichez le résultat
Normalement pour chaque objet de ZonesC vous avez le décompte d'objets de ZonesA qui sont présents dessus (ou dessous)
J'espère que c'est assez clair. En tout cas cela fonctionne très bien.
Cordialement
Dernière modification par CRIGBAB (Wed 12 April 2017 23:15)
Hors ligne
#3 Wed 10 May 2017 11:18
- itawa25
- Juste Inscrit !
- Date d'inscription: 11 Apr 2017
- Messages: 2
Re: Intersection de zones tampons d'une même couche
Bonjour,
Merci pour ta réponse CRIGBAB, ça m'a bien débloqué la situation et j'ai pu avancer beaucoup plus rapidement !
Cordialement.
Hors ligne