#1 Wed 16 July 2008 10:44
- stephane.sautonie
- Participant occasionnel
- Date d'inscription: 11 Jul 2008
- Messages: 24
Extraire la partie commune de 2 polylignes
Bonjour,
Je possède 2 tables avec des polylignes.
Certaines parties de ces polylignes sont communes d'une table à une autre.
Existe-il un moyen d'extraire ces parties communes?
J'ai essayé plusieurs requêtes SQL qui n'ont donné aucun résultat.
Merci.
Hors ligne
#2 Wed 16 July 2008 11:08
- stephane.sautonie
- Participant occasionnel
- Date d'inscription: 11 Jul 2008
- Messages: 24
Re: Extraire la partie commune de 2 polylignes
Je suis arrivé à quelque chose en prenant les tables en .obj dans les commandes SQL avec la requête intersects.
Cependant à chaque fois qu'il y a un contact entre les polylignes, l'ensemble de la polyligne est retenue et non juste la partie commune.
Hors ligne
#3 Wed 16 July 2008 11:31
- jrmieo123
- Participant actif
- Date d'inscription: 17 Apr 2007
- Messages: 66
Re: Extraire la partie commune de 2 polylignes
Bonjour,
Essaie ce petit outils : Pline_Intersect
Je pense qu'il exécute exactement ce que tu souhaites.
Il trouve toute les jonctions et crée une nouvelle table de ces jonctions
Voici quelques détails sur les procédures et les options:
1 - La table choisie doit contenir des polylignes et/ou des segments. Elle peut aussi contenir d’autres types d’objets.
2 – s’il y a des polylignes formées de plus d’une section, la table est refusée (MI version <6.50) pour que l’utilisateur « explose » ces polylignes lui-même, ou (MI=>6.5) la fonction de désagrégation est utilisée.
3 – s’il y a des lignes, elles sont converties en polylignes
4 - l’utilisateur doit choisir une colonne de cette table qui soit caractère, smallint ou integer, pour servir d’identificateur unique des polylignes.
5 – si des polylignes se coupent autre part qu’aux nœuds existant, des nœuds sont rajoutés où il le faut. Ces modifications seront sauvegardées ou non, plus tard, au choix de l’utilisateur
6 – si des polylignes « traversent » un marqueur, le programme demande à l’utilisateur si de telles polylignes doivent être découpées
7 – les marqueurs d’intersection sont alors créés et si l’utilisateur décide de les conserver, chaque marqueur reçoit les noms de toutes les polylignes la traversant ou y aboutissant
8 – l’utilisateur peut conserver l’ensemble des polylignes « modifiées » (avec nœuds ajoutés, ou découpées) sous un nom de table qu’il choisit. Si la table originale contient des objets d'autres types, ils ne sont pas transférés dans cette table. Les styles de lignes sont respectés.
9 – les marqueurs peuvent être sauvegardés comme une table indépendante
10 – si les marqueurs sont conservés, l’utilisateur peut visionner (à son choix) les résultats : les tables sont nommées Polylines et Intersection_Markers de façon générique.
Bon courage !
Hors ligne
#4 Wed 16 July 2008 11:55
- stephane.sautonie
- Participant occasionnel
- Date d'inscription: 11 Jul 2008
- Messages: 24
Re: Extraire la partie commune de 2 polylignes
Merci, mais comment "exploser" une polyligne?
Hors ligne
#5 Wed 16 July 2008 12:03
- jrmieo123
- Participant actif
- Date d'inscription: 17 Apr 2007
- Messages: 66
Re: Extraire la partie commune de 2 polylignes
Tu veux extraire la partie commune, cet outil le fait !
Que veux tu exploser ?
Hors ligne
#6 Wed 16 July 2008 12:09
- stephane.sautonie
- Participant occasionnel
- Date d'inscription: 11 Jul 2008
- Messages: 24
Re: Extraire la partie commune de 2 polylignes
J'ai réuni sur une tables les deux tables contenant des polylignes.
Après execution du .MBX, la commande me dit de désagréger les polylignes.
J'ai appliqué la commande désagrégation de données ("sélection d'une cible", "modification objet", "désagrégation") en conservant la "valeur d'origine de l'objet" et la commande .MBX m'indique toujours le même message d'erreur.
Hors ligne
#7 Wed 16 July 2008 12:32
- jrmieo123
- Participant actif
- Date d'inscription: 17 Apr 2007
- Messages: 66
Re: Extraire la partie commune de 2 polylignes
Quel est le message d'erreur ?
As tu vérifier que ta couche est modifiable !!!
Hors ligne
#8 Wed 16 July 2008 13:24
- stephane.sautonie
- Participant occasionnel
- Date d'inscription: 11 Jul 2008
- Messages: 24
Re: Extraire la partie commune de 2 polylignes
Oui la couche est modifiable.
Le message d'erreur est :
"The table contains multi-section polylines. Disaggregate them before submitting this table again."
Hors ligne
#9 Wed 16 July 2008 14:35
- jrmieo123
- Participant actif
- Date d'inscription: 17 Apr 2007
- Messages: 66
Re: Extraire la partie commune de 2 polylignes
Si je comprends bien ce qui t'arrive :
"The table contains multi-section polylines. Disaggregate them before submitting this table again."
Ce qui est en lien avec ce qui est annoncé dans le point 2 de l'explication précédente :
2 – s’il y a des polylignes formées de plus d’une section, la table est refusée (MI version <6.50) pour que l’utilisateur « explose » ces polylignes lui-même, ou (MI=>6.5) la fonction de désagrégation est utilisée.
Afin que tu puissses éliminer tes polylignes formées de plusieurs sections, je te fais parvenir un autre outils, celui-ci s'appelle ExploLin.mbx :
Cette application transforme toutes les polylignes faites de plusieurs segments d'une table OUVERTE comme une CARTE, COMPACTÉE et NON "SEAMLESS", en autant de polylignes d'un seul segment. Les nouvelles polylignes ont les mêmes données tabulaires que leurs "originales". Il n'y a aucune assignation proportionnelle des données.
Les options offertes au moment de l'exécution sont : 1 - sauvegarde des nouvelles polylignes dans un fichier séparé (elles sont placées dans le fichier EXPLOD que l'utilisateur doit sauvegrader de lui même) 2 - élimination des polylignes explosées, - 3 compactage de la table originale.
Auteur : Jacques de Paris
Après avoir supprimé les polylignes multisections tu peux relancer le premier mbx.
En espérant que ça fonctionne .
Bon courage !!!!!
Hors ligne
#10 Wed 16 July 2008 15:51
- stephane.sautonie
- Participant occasionnel
- Date d'inscription: 11 Jul 2008
- Messages: 24
Re: Extraire la partie commune de 2 polylignes
Il semble que ça fonctionne enfin!!!
Merci beaucoup pour ton aide.
Hors ligne
#11 Wed 16 July 2008 16:19
- nicoboud
- Membre
- Lieu: Nantes
- Date d'inscription: 12 Oct 2007
- Messages: 860
Re: Extraire la partie commune de 2 polylignes
Auteur : Jacques de Paris
...je croyais qu'il était Canadien...
en tout cas, ses outils sont forts utiles ! et il sont maintenant hébergés par georezo : outils de J.Paris.
Dernière modification par Nicolas Boudesseul (Wed 16 July 2008 16:20)
Co-modérateur du forum Mapinfo
Utilisateur Mapinfo et QGIS
Hors ligne
#12 Wed 16 July 2008 16:29
- Daniel
- Membre
- Lieu: Victoriaville, Québec
- Date d'inscription: 6 Sep 2005
- Messages: 2028
Re: Extraire la partie commune de 2 polylignes
jrmieo123 a écrit:Auteur : Jacques de Paris
...je croyais qu'il était Canadien...
en tout cas, ses outils sont forts utiles ! et il sont maintenant hébergés par georezo : outils de J.Paris.
Bonjour
Oui il est Canadien, québécois. Son nom est Jacques Paris. Un nom à retenir!!!
Daniel
De retour à la géomatique
Hors ligne
#13 Wed 16 July 2008 16:52
- jrmieo123
- Participant actif
- Date d'inscription: 17 Apr 2007
- Messages: 66
Re: Extraire la partie commune de 2 polylignes
Oui, il est bien Québécois, désolé pour cette erreur, il s'agit d'une faute frappe
en voulant dépanner Stéphane entre deux boulots de carto.
En tout cas, ces outils me régalent au quotidien, ils me sortent de nombreuses épines du pied.
Merci à lui pour son travail !!!!!!!!!!!!!!
Hors ligne