Pages: 1
- Sujet précédent - Extraire les extrémités d'une polyligne pour en extraire deux points. - Sujet suivant
#1 Mon 18 August 2008 10:17
- Macaron
- Participant assidu
- Lieu: Paris
- Date d'inscription: 12 Dec 2007
- Messages: 244
Extraire les extrémités d'une polyligne pour en extraire deux points.
Chère communauté,
Je suis devant une série de polylignes qui représente un réseau hydrographique.
J'aimerais que les extrémités de ces tronçons se transforment en points afin qu'à partir de celui qui est le plus bas, je puisse déterminer le bassin versant amont qui correspond à cet exutoire.
Le soucis, c'est que je ne sais pas si c'est possible de transformer deux extrémités d'une polyligne en deux points et comment y parvenir sous MI 8.5 ou MI 9.0.
Si l'un de vous pouvait éclairer ma chandelle, je lui en serais reconnaissant.
Merci d'avance pour votre aide,
Alban
PS : Tout à une fin sauf la banane qui en a deux.
Message rédigé intégralement à partir d'électrons recyclés.
Hors ligne
#2 Mon 18 August 2008 10:28
- JM
- Participant occasionnel
- Lieu: Toulouse
- Date d'inscription: 1 Jun 2006
- Messages: 34
Re: Extraire les extrémités d'une polyligne pour en extraire deux points.
Bonjour
La syntaxe est un peu lourde mais je fais comme suit (en sélection SQL)
select ("identifiant", "champs retenus"...., ObjectNodeX (obj,1,1), ObjectNodeY (obj,1,1), ObjectNodeX (obj,objectinfo(obj,21),objectinfo(obj,21+objectinfo(obj,21))) , ObjectNodeY (obj,objectinfo(obj,21),objectinfo(obj,21+objectinfo(obj,21)))) from "Table"
=> ObjectNodeX (obj,1,1) et
ObjectNodeY (obj,1,1)
désignent les X et Y du noeud initial
=> ObjectNodeX (obj,objectinfo(obj,21),objectinfo(obj,21+objectinfo(obj,21))) et
ObjectNodeY (obj,objectinfo(obj,21),objectinfo(obj,21+objectinfo(obj,21)))
désignent les X et Y du noeud final
Remerciements infinis au document MapBasic SQL de S RODDIER et J. PARIS
Hors ligne
#3 Mon 18 August 2008 10:42
- Macaron
- Participant assidu
- Lieu: Paris
- Date d'inscription: 12 Dec 2007
- Messages: 244
Re: Extraire les extrémités d'une polyligne pour en extraire deux points.
Bonjour JM,
Cela me parait interessant.
Je me lance et je vois ce que je peux obtenir avec cette requête.
Merci encore,
Alban
Dernière modification par Macaron (Mon 18 August 2008 10:44)
Message rédigé intégralement à partir d'électrons recyclés.
Hors ligne
#4 Mon 18 August 2008 13:19
- SRoddier
- Membre
- Date d'inscription: 19 Oct 2007
- Messages: 14
Re: Extraire les extrémités d'une polyligne pour en extraire deux points.
Bonjour
Je crois que nous avions évoquer cette possibilité dans le document que nous avions écrit Jacques et moi en 2001.
D'ailleurs à l'époque c'était également pour trouver les bassins versants à partir des points bas d'un réseau hyrdro. j'avais pour cela fait un petit mbx qui pour chaque tronçon :
- identifiait les noeuds extrème
- trouvait pour chaque noeud extrème l'altitude la plus basse (utilisation de gridengine.dll)
- identifiait pour le point le plus bas le BV correspondant (toujours avec gridengine.dll)
Si je retrouve le code (pas sur) je peux le mettre à dispo.
Sébastien RODDIER
Hors ligne
#5 Mon 18 August 2008 13:59
- Macaron
- Participant assidu
- Lieu: Paris
- Date d'inscription: 12 Dec 2007
- Messages: 244
Re: Extraire les extrémités d'une polyligne pour en extraire deux points.
Bonjour Sébastien,
Votre MBX m'intéresse puisque je travaille en hydrologie à l'identification des bassins versants à partir des noeuds d'une polyligne.
Où puis-je trouver cet outil fort utile ?
Merci d'avance pour toutes les précisions que vous pourrez m'apporter.
Alban
Dernière modification par Macaron (Mon 18 August 2008 14:00)
Message rédigé intégralement à partir d'électrons recyclés.
Hors ligne
Pages: 1
- Sujet précédent - Extraire les extrémités d'une polyligne pour en extraire deux points. - Sujet suivant