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 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 !!

 

Pied de page des forums

Powered by FluxBB