#1 Sat 03 July 2004 09:27
- Frédéric VIÑAS
- Invité
Tracer un polygone a partir d'un centroide !!!
Bonjour a tous !!!
Je souhaiterais savoir si quelqu'un pourrait me donner un code (MapBasic) qui me permettrait de faire la chose suivante :
J'ai un point qui represente un centroide et dans mes attributs j'ai une colonne qui me donne la largeur et la longueur du polygone situe autour de ce polygone !!!
J'aimerai retracer le polygone (de facon approximative) a partir de ces deux attributs comme le montre le schema suivant :
Si quelqu'un a une idee je suis preneur !!!! Merci !!!
#2 Sat 03 July 2004 09:27
- Jacques Paris
- Invité
Re: Tracer un polygone a partir d'un centroide !!!
On fait l’hypothese que tous les enregistrements de votre_table sont des points, et qu’il y a nrec points
dim i, nrec as smallint
dim nouvel_obj as object
dim x, y as float
set coordsys table votre_table
nrec=5 ‘pour faire marcher l’exemple
For i=1 to nrec
Fetch rec i from votre_table
x=centroidx(votre_table.obj)
y=centroidy(votre_table.obj)
Create ellipse into variable Nouvel_obj (x-votre_table.long,
y+votre_table.larg) (x+votre_table.long, y-votre_table.larg)
Nouvel_obj=converttoregion(nouvel_obj)
'(trois choix ici)
update votre_table set obj=nouvel_obj where rowid=i
'(ou)
'insert into votre_table (obj) values (nouvel_obj)
'(ou)
'insert into nouvelle_table (obj) values (nouvel_obj)
next
Jacques Paris
#3 Sun 04 July 2004 14:17
- Frédéric VIÑAS
- Invité
Re: Tracer un polygone a partir d'un centroide !!!
Bonjour !!
Je me permets d'abuser juste pour un dernier element !!!
Toujours dans mon probleme d'ellipse en fonction d'un centroide, j'aimerais que cette ellipse soit orientee en fonction de la valeur d'un angle qui se trouverait dans un troisieme champ !!!
J'ai pense a la commande RotateAtPoint (Dispo sous MI 7.5) mais elle n'est pas reconnue par MapBasic 6.5 !!!
Y a-t-il une solution sous MapBasic 6.5 pour faire pivoter un objet ?
Merci a tous !!