C'est loin les maths... Calcul de distance en 2D

C'est loin les maths... Calcul de distance en 2D - C++ - Programmation

Marsh Posté le 22-04-2003 à 11:32:28    

Salut,
 
le problème qui m'embete est le suivant:
 
sur cette image
 
http://oppc.free.fr/divers/terrain.jpg
 
l'utilisateur clique sur le terrain de basket à l'endroit où un tir a été effectué...
 
Je voudrais savoir s'il a cliqué pour un tir à 3 points (à l'extérieur du grand demi-cercle) ou 2 points...
 
Donc en fait il faudrait vérifier que la distance entre le panier et le tir soit supérieure au rayon de ce demi-cercle...
Quoi que ce ne soit pas exactement cela car sur les côtés on a deux segments "droits" qui viennent rejoindre ce demi-cercle...
 
Donc voilà...
 
Merci d'avance

Reply

Marsh Posté le 22-04-2003 à 11:32:28   

Reply

Marsh Posté le 22-04-2003 à 11:36:42    

[:xx_xx]
 
pt1(x1,y1)
pt2(x2,y2)
 
distance pt1->pt2 = sqrt((x1-x2)^2 + (y2-y1)^2)
 
c si loin que ca pythagore ? :D
 
si ton bidule est un demi cercle alors  
 
1) tu jarte la sqrt
2) tu compares avec le rayon au carre
 
et zop
 
 


Message édité par chrisbk le 22-04-2003 à 11:37:37
Reply

Marsh Posté le 22-04-2003 à 11:37:44    

http://www.lsp.ups-tlse.fr/Carlier [...] node7.html
[edit]
grillaid, mais ca peut servir...et google est ton ami!


Message édité par skeye le 22-04-2003 à 11:38:36
Reply

Marsh Posté le 22-04-2003 à 11:46:15    

chrisbk a écrit :

[:xx_xx]
 
pt1(x1,y1)
pt2(x2,y2)
 
distance pt1->pt2 = sqrt((x1-x2)^2 + (y2-y1)^2)
 
c si loin que ca pythagore ? :D
 
si ton bidule est un demi cercle alors  
 
1) tu jarte la sqrt
2) tu compares avec le rayon au carre
 
et zop
 
 
 


Ah bordel !! j'étais parti pour lui rédiger une réponse à base de sinus et cosinus, et j'ai tellement pris mon temps que j'ai vu que tu avais posté autre chose ! :d


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 22-04-2003 à 11:47:16    

Harkonnen a écrit :


Ah bordel !! j'étais parti pour lui rédiger une réponse à base de sinus et cosinus, et j'ai tellement pris mon temps que j'ai vu que tu avais posté autre chose ! :d
 


 
des sinus et des cosinus pour une bete distance 2d ?

Reply

Marsh Posté le 22-04-2003 à 11:49:46    

chrisbk a écrit :


 
des sinus et des cosinus pour une bete distance 2d ?  


Ben ça lui aurait permis l'utilisation de tables précalculées ! Et étant donné qu'il est susceptible d'y faire appel relativement souvent, il aurait pu charger cette table en cache, ça aurait évité une multiplication [:sinclaire]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 22-04-2003 à 12:52:01    

Harkonnen a écrit :


Ben ça lui aurait permis l'utilisation de tables précalculées ! Et étant donné qu'il est susceptible d'y faire appel relativement souvent, il aurait pu charger cette table en cache, ça aurait évité une multiplication [:sinclaire]


 
Oldschool :O tu trashes ton cache :O :D
la il a juste deux muls, deux subs, une add et zou :O (la sqrt on s'en balance joyeusement)
 
ou alors il stocke l'info dans la couche alpha de son image, ensuite il a juste a faire une lookup au niveau du pt de click [:meganne] :D

Reply

Marsh Posté le 22-04-2003 à 13:26:13    

chrisbk a écrit :


 
Oldschool :O tu trashes ton cache :O :D


bof, avec 128k de L1, c'est pas une malheureuse table de quelques centaines d'octets qui va exploser le cache [:sinclaire]
spas idiot la couche alpha [:meganne]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed