Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#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

jrmieo123 a écrit:

Auteur : Jacques de Paris


...je croyais qu'il était Canadien... big_smile

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

Nicolas Boudesseul a écrit:
jrmieo123 a écrit:

Auteur : Jacques de Paris


...je croyais qu'il était Canadien... big_smile

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

 

Pied de page des forums

Powered by FluxBB