C'est loin les maths... Calcul de distance en 2D - C++ - Programmation
Marsh Posté le 22-04-2003 à 11:36:42
pt1(x1,y1)
pt2(x2,y2)
distance pt1->pt2 = sqrt((x1-x2)^2 + (y2-y1)^2)
c si loin que ca pythagore ?
si ton bidule est un demi cercle alors
1) tu jarte la sqrt
2) tu compares avec le rayon au carre
et zop
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!
Marsh Posté le 22-04-2003 à 11:46:15
chrisbk 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 !
Marsh Posté le 22-04-2003 à 11:47:16
Harkonnen a écrit : |
des sinus et des cosinus pour une bete distance 2d ?
Marsh Posté le 22-04-2003 à 11:49:46
chrisbk 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
Marsh Posté le 22-04-2003 à 12:52:01
Harkonnen a écrit : |
Oldschool tu trashes ton cache
la il a juste deux muls, deux subs, une add et zou (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
Marsh Posté le 22-04-2003 à 13:26:13
chrisbk a écrit : |
bof, avec 128k de L1, c'est pas une malheureuse table de quelques centaines d'octets qui va exploser le cache
spas idiot la couche alpha
Marsh Posté le 22-04-2003 à 11:32:28
Salut,
le problème qui m'embete est le suivant:
sur cette image
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