#1 Thu 30 October 2008 12:44
- domingo
- Participant occasionnel
- Date d'inscription: 30 May 2008
- Messages: 11
[MapInfo 8.0] transformer des points en polygones
Bonjour,
Bon,
Je dispose d'un fichier de type Identifiant X Y (pour info il est extrait d'un fond de carte philcarto au format initial Illustrator)
Ce fichier définit les contours de mes polygones:
01000 11112 7866
01000 11104.5 7869.5
01000 ... ...
01000 11034 7848.5
01000 11112 7866
01090 10841.5 7722
01090 10833 7728.5
01090 ... ....
01090 10841.5 7722
etc.
Ce que je souhaite c'est recréer ces polygones dans MI. (pour la projection je m'arrangerai plus tard)
Je précise -qu'il s'agit de plusieurs centaines de polygones (donc traitement polygone par polygone impossible).
-que je ne maitrise pas du tout MapBasic.
-que j'ai pu trouver un certain nombre de sujets ayant trait à mon problème de près ou de loin, mais il me semble qu'aucun n'y répond (du moins entièrement).
-que je me doute bien que l'idéal serait de créer un mif/mid mais que je ne voit pas trop comment le faire automatiquement, et que cela ne doit pas être la seule solution.
Les sujets plus ou mois proches :
http://georezo.net/forum/viewtopic.php?id=51647
http://georezo.net/forum/viewtopic.php?id=51560
http://georezo.net/forum/viewtopic.php?id=47151
http://georezo.net/forum/viewtopic.php?id=18609
http://georezo.net/forum/viewtopic.php?id=56189
http://georezo.net/forum/viewtopic.php?id=51320
Si vous avez des idées, un mbx...
Merci de votre aide
TG
Dernière modification par domingo (Thu 26 November 2009 15:33)
Hors ligne
#2 Thu 30 October 2008 13:41
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: [MapInfo 8.0] transformer des points en polygones
Bonjour
La meilleure piste me semble être le dernier post de ce sujet
L'idéal serait de préparer le fichier pour lui donner la forme
ID X_pnt Y_pnt
1 11112 7866
1 11104.5 7869.5
1 ... ...
1 11034 7848.5
1 11112 7866
2 10841.5 7722
2 10833 7728.5
2 ... ....
2 10841.5 7722
Dans ce cas on peut (un peu) automatiser en utilisant la fenêtre MapBasic (pas le programme, la fenêtre dans MI !)
Dim i as Integer
i=1
Select * from Pts_Polyg where ID1=i
Create Object As ConvexHull From Selection Into Table Polyg
print i
i=i+1
On sélectionne une fois toutes les lignes (puis 'enter') et ensuite on sélectionne seulement les ligne en gras...et on garde le doigt appuyé sur 'enter' en surveillant la fenêtre message jusqu'à ce que s'affiche X, le nombre de polygones
Hors ligne
#3 Thu 30 October 2008 15:06
- domingo
- Participant occasionnel
- Date d'inscription: 30 May 2008
- Messages: 11
Re: [MapInfo 8.0] transformer des points en polygones
Merci pour cette réponse rapide.
J'ai créé les points dans une couche "point"
J'ai créé une couche "polyg" (avec la même structure que la couche "point")
Lorsque les polygones sont créés, les attributs ne sont pas transférés de la couche "point" à la couche "poly", mais je pense qu'on doit pouvoir faire le lien avec le numéro de ligne (rowid) pour récupérer l'identifiant.
ça c'est ok
une remarque :
et on garde le doigt appuyé sur 'enter' en surveillant la fenêtre message jusqu'à ce que s'affiche X, le nombre de polygones smile
En fait il faut ré-appuyer sur enter à chaque fois qu'un polygone est terminé, si on laisse le doigt appuyé on a le message 'Opération annulée.' qui apparait.
Seulement voila, la fonction ConvexHull crée une enveloppe convexe autour de mes points et pas un polygone dont le contour passe par tous les points le définissant (voir image jointe) ce qui est mon but.
Il n'existe pas une autre fonction du type de ConvexHull qui passerait par tout les point?
TG
Dernière modification par domingo (Thu 26 November 2009 15:33)
Hors ligne
#4 Thu 30 October 2008 15:42
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: [MapInfo 8.0] transformer des points en polygones
Aïe et zut !!
On ne peut passer que par des Create Pline ou Create Region...mais la méthode évoquée ne marchera pas
Je prends le temps de réflêchir à ça...un peu plus tard (désolé)
Hors ligne
#5 Mon 05 January 2009 16:55
- domingo
- Participant occasionnel
- Date d'inscription: 30 May 2008
- Messages: 11
Re: [MapInfo 8.0] transformer des points en polygones
Du coup j'ai utilisé une macro du logiciel SAS qui transforme un fichier "Iden XY " en mif/mid.
Donc pas d'outils MI de mon coté.
(merci Maurice pour les MP)
T.G.
Hors ligne