Forum Heroes' Chronicles http://forum.heroeschronicles.nainwak.org/phpbb3/ |
|
Formule Php pour la distance http://forum.heroeschronicles.nainwak.org/phpbb3/viewtopic.php?f=5&t=21646 |
Page 1 sur 1 |
Auteur: | Florpy [ Dim 11 Oct, 2009 15:50 ] |
Sujet du message: | Formule Php pour la distance |
Bonjour ! J'aurais voulu savoir qu'elle était la formule php qui permet de connaitre la distance entre nous et une autre personne sur la carte. Merci |
Auteur: | Little-Boss [ Dim 11 Oct, 2009 16:00 ] |
Sujet du message: | |
Position du joueur x : $xabs = abscisse x $xord = ordonnée x idem y donc genre ... abs pour abscisse ou absolu. max(abs($xabs - yabs),abs($xord - $yord)). ou ... C'est marrant ta question arrive pile 3 jours après que je l'ai fait. |
Auteur: | Florpy [ Dim 11 Oct, 2009 16:27 ] |
Sujet du message: | |
Parfait ! Merci beaucoup |
Auteur: | Florpy [ Lun 11 Jan, 2010 11:32 ] |
Sujet du message: | |
Et comment réorganiser les données renvoyées par la requête selon ce calcul ? |
Auteur: | Little-Boss [ Lun 11 Jan, 2010 12:28 ] |
Sujet du message: | |
*3 mois tout pile plus tard* Soit plus précis ? Je comprends pas la question... |
Auteur: | Florpy [ Ven 15 Jan, 2010 12:58 ] |
Sujet du message: | |
Et bien, j'ai une requête MySQL qui me renvoi la position (X et Y) des joueurs qui sont dans le champ de vision de notre personne. Dans la boucle de cette requête je fais le calcul de distance. Mais il est trop tard pour réorganiser les données selon la distance. Donc comment faire ? C'est assez compliqué a expliquer. Si tu n'as pas compris je te montre un bout de code |
Auteur: | chatissimus [ Ven 15 Jan, 2010 13:55 ] |
Sujet du message: | |
il faut faire faire le calcul lors de la requête, avant de traiter le recordset bien sur cela dépend du moteur de DB utilisé. exemple si on considère une personne en 48-50 (X-Y) et sa position par rapport aux personnes des 4 cases adjacentes: Code: SELECT
if( abs( 48 - Pos_X ) > abs( 50 - Pos_X ) , abs( 48 - Pos_X ) , abs( 50 - Pos_X ) ) AS distance FROM `heroes` WHERE 1=1 AND pos_X >= 48 -4 AND pos_X <= 48 +4 AND pos_Y >= 50 -4 AND pos_Y <= 50 +4 ORDER BY distance ASC // pour ce genre de question il vaut mieux passer sur Forum de l'association Nainwak ![]() |
Auteur: | Florpy [ Ven 15 Jan, 2010 19:57 ] |
Sujet du message: | |
Parfait ! Merci beaucoup chatissimus. D'accord pour le forum, je ne savais pas ![]() |
Page 1 sur 1 | Heures au format UTC + 1 heure |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |