bip98
Messages postés104Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention29 avril 2008
-
22 févr. 2005 à 14:47
billou_13
Messages postés860Date d'inscriptionjeudi 4 mars 2004StatutMembreDernière intervention19 août 2014
-
22 févr. 2005 à 23:30
Table à 2 axes
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />
Bonjour,
J’aurais voulu avoir vos avis !
J’ai une table XY. Le but de mon programme est d’enregistrer les coordonnées de la souris et de les redessinées sur ma table.
Le but et de tracer le chemin le plus court entre 2 points.. Normal..
Pour mon algo :
<OL style="MARGIN-TOP: 0cm" type=1>
<LI class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt">Si les points sont sur la même ligne ou même colonne pas de problème :</LI></OL>
Ex : p1.X=5 p1.Y=23 p2.X=15 p2.Y=23
Dans ce cas je me déplace vers de 15-5=10 pour arriver au point… jusque là pas de problème.
<OL style="MARGIN-TOP: 0cm" type=1 start=2>
<LI class=MsoNormal style="MARGIN: 0cm 0cm 0pt; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt">Si les points ne sont pas sur la même ligne ni la colonne</LI></OL>
Ex : p1.X=4 p1.Y=4 p2.X=8 p2.Y=8
Pour le chemin le plus court : 8-4 =4 8-4=4 donc 4/4=1
Dans se cas je descends tout les 1.. ça forme un escalier régulié de près.. pas de problème ici.
Ca se complique si :
Ex : p1.X=4 p1.Y=4 p2.X=13 p2.Y=9
13-4=11 9-4=5 11/5=2.2 Mon problème c’est que ma table ne peut faire qu’un pas. Je ne peux pas faire de 0.2.
Que me conseillez-vous ?
J’avais comme ID de faire un algo qui arrondi les nombres de sorte que le quotient de mes divisions soit entier !
Ou d’arrondir ma division ex 2.2 je l’arrondit à 2 puis le chemin qui reste à faire je le fait à la fin de mon trait, je m’explique si je dois descendre de 4 : 4*0.2=0.8 je l’arrondi à 1 et je fais un pas pour compenser se qu’il manque.
billou_13
Messages postés860Date d'inscriptionjeudi 4 mars 2004StatutMembreDernière intervention19 août 201429 22 févr. 2005 à 15:21
J'avais eu le même problème avec la rotation d'une image lorsque que tu veux tourner de 15° par exemple.
Le mieux est comme tu pense faire. Tu prend l'équation de la droite
y=mx+p et tu arrondi à chaque point. Ca te donnera un bon truc. Moi ca
marchait impeccable pour une rotation donc je pense que pour toi ca
sera cool.