[Résolu]identifier les formes voisin d'une forme/contour

Discussions sur le module de dessin de Draw.

Modérateur : Vilains modOOs

fabienne35
Fraîchement OOthentifié
Messages : 2
Inscription : 17 juil. 2013 17:43

[Résolu]identifier les formes voisin d'une forme/contour

Message par fabienne35 »

Bonjour
je dispose d'un dessin au format odg d'une carte avec des "formes" qui représentent chacune un département.
je souhaite développer une macro me permettant de faire un tableau qui définit pour chaque département( ou N+ d'identifiant de la forme) quel sont les identifiants des formes voisines ie qui "se touchent"
Est-ce possible ??

:alerte: nb : je n'ai pas l'habitude d'utiliser draw.. j'avoue que writer et calc me sont beaucoup plus familiers... il y a sans doute plein de menus/options que je n'ai pas du bien explorer....

Merci
Dernière modification par lawrence le 27 juil. 2013 00:26, modifié 1 fois.
Raison : Ajout de la Balise [Résolu] et de la coche verte
openoffice3.4 windows XP
Avatar de l’utilisateur
alhazred
ManitOOu
ManitOOu
Messages : 3028
Inscription : 01 mai 2011 01:08
Localisation : Casablanca (Maroc)

Re: identifier les formes voisin d'une forme/contour

Message par alhazred »

Bonjour,

Puisque tu parles de macro, c'est donc que tu t'es trompée de section (Macros et API)

À mon humble avis, cette question est hors des limites d'OpenOffice (parcours point par point des frontières, ou autre procédé nécessitant de toute façon l'accès au graphique lui-même) ; il faudrait vraisemblablement faire appel aux fonctions du système.

Même en utilisant la distance des centres de zones (possible par macro sans vraie complication), on pourrait tomber sur le cas d'un département non limitrophe et pourtant plus proche qu'un autre qui l'est.

Seule l'édition manuelle du tableau, bien que fastidieuse, me semble raisonnable (copier-coller les départements de la province et supprimer ceux qui ne conviennent pas).
À bientôt

LibO 4.1.5.3 et AOO 4.0.1 sous Windows 7, MRI et SDK pour les macros.

Et la sauvegarde incrémentée, c'est sympa !
fabienne35
Fraîchement OOthentifié
Messages : 2
Inscription : 17 juil. 2013 17:43

Re: identifier les formes voisin d'une forme/contour

Message par fabienne35 »

en réfléchissant au problème, voici l'idée que j'ai eu
pour chaque département,
je fait un grossissement homothétique (genre +5%) et je soustrait le département à lui même (je trouve donc une sorte de contour lisière)
et ensuite je cherche l'intersection de ce contour lisière avec le reste de la carte.
ainsi les morceaux "qui restent" appartiennent à la frontière.

mon soucis : peux-ton automatiser cela ?
quand on faire une intersection de 2 formes, peut-on conserver l'étiquette "nom" d'une des 2 formes ? si oui comment ?

Merci d'avance pour vos éclairages...
openoffice3.4 windows XP
Avatar de l’utilisateur
alhazred
ManitOOu
ManitOOu
Messages : 3028
Inscription : 01 mai 2011 01:08
Localisation : Casablanca (Maroc)

Re: identifier les formes voisin d'une forme/contour

Message par alhazred »

L'idée est intéressante (en fait, j'avais pensé à travailler sur les frontières plutôt que sur les zones)

Je viens de tomber dans l'API sur l'interface XRegion qui pourrait peut-être servir. Ce n'est donc pas tout à fait sans espoir (mais en tout cas pas sans peine :aie: ).

Mais ouvre un nouveau sujet dans Macros et API avec [Draw] au début du titre et indique les liens de l'un à l'autre.
 Ajout : J'oubliais : joins ton fichier, ça facilitera la recherche et éventuellement (je ne suis pas très optimiste quand même) la solution 
À bientôt

LibO 4.1.5.3 et AOO 4.0.1 sous Windows 7, MRI et SDK pour les macros.

Et la sauvegarde incrémentée, c'est sympa !
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25143
Inscription : 03 mars 2006 08:45
Localisation : 127.0.0.1
Contact :

Re: identifier les formes voisin d'une forme/contour

Message par Dude »

Salut,
alhazred a écrit :Ce n'est donc pas tout à fait sans espoir
Autant vouloir visser avec un marteau.
Il faut utiliser le bon outil : un SIG qui gère l'analyse spatiale.

Merci d'ajouter [Résolu] au début du titre de ton 1er message sans oublier de cocher la case de l'icône de sujet (le V vert).
Répondre