Salut,
Je suis en train de programmer une version améliorée du "jeu de la vie " et j'aimerais pouvoir calculer la distance entre deux points sur un tore. Quelqu’un pourrait m'aider?
-----
08/09/2012, 13h02
#2
invite332de63a
Date d'inscription
janvier 1970
Messages
1 182
Re : Distance sur un tore
Bonjour, quel niveau as-tu en mathématiques ?
08/09/2012, 14h01
#3
inviteb4466a8c
Date d'inscription
janvier 1970
Messages
111
Re : Distance sur un tore
J'entre en 1ère s.
08/09/2012, 18h24
#4
phys4
Date d'inscription
mars 2009
Localisation
Ile de France
Âge
81
Messages
9 784
Re : Distance sur un tore
Envoyé par Coban
Je suis en train de programmer une version améliorée du "jeu de la vie " et j'aimerais pouvoir calculer la distance entre deux points sur un tore. Quelqu’un pourrait m'aider?
Bonjour, cette quantité n'est pas donnée par une formule simple en général, voici pourquoi :
Soit R et r les rayons du tore, avec r < R, les angles sont sur le petit rayon et sur le grand rayon.
Avec compté nul à partie de l'extérieur, une petite distance dl pour de petites variations des angles s'écrit
Du fait que intervienne dans la distance selon introduit une variation telle que la ligne donnant le plus court chemin devienne très déformée, ce n'est pas une simple hélice autour du tore. l'étude d'une telle courbe sort du cadre du programme de 1ère.
Comme il s'agit d'un jeu, vous pouvez simplifier, en faussant les distances intérieures du tore par rapport à l'extérieur, donc en négligeant par rapport à R. Ce la nous ramène à des coordonnées planes.
La distance entre deux points et devient simplement
Il faut écrire un petit sous programme qui traite les différences d'angle pour les ramener dans l'intervalle afin de prendre le plus court chemin.
Dernière modification par phys4 ; 08/09/2012 à 18h25.
Comprendre c'est être capable de faire.
Aujourd'hui
A voir en vidéo sur Futura
08/09/2012, 19h09
#5
inviteb4466a8c
Date d'inscription
janvier 1970
Messages
111
Re : Distance sur un tore
Merci pour votre réponse. J'ai appris un truc intéressant.
En effet, il n'est pas aisé de calculer la distance sur un tore... Finalement, je viens de me rendre compte que mon programme serait plus intéressant si la structure de l'espace était régulière, j’appliquerais donc la règle Racine((xa-xb)^2+(ya-yb)^2) sur un carré aux cotés opposés collés en déplaçant les deux points de façon à ce qu'un des deux se retrouve au centre du tore.
Cela me fait penser à la structure de l'univers, j'ai entendu dire que l'univers était un tore, si c'est le cas, l'espace temps serait-il irrégulier??? La matière aurait elle tendance à s'accumuler sur "l’équateur" du tore?
08/09/2012, 21h08
#6
inviteea028771
Date d'inscription
janvier 1970
Messages
3 448
Re : Distance sur un tore
Tout dépend de ce que tu appelles un tore... le monde de Pac-man est aussi appelé un tore (et pour le coup, parfaitement régulier)
C'est je pense une définition plus intéressante du tore pour le jeu de la vie
Calculer une distance dessus est alors très simple :
Pour simplifier, on va dire que le carré est [0,1]x[0,1], tu as le point A(xA,yA) et le point B(xB,yB) et tu cherches d(A,B)
Alors, tu "clones" le carré, et tu places les points B1, B2, B3 et B4 des 4 carrés clonés autour (ils ont pour coordonnées (xB+1,yB), (xB-1,yB), (xB, yB-1) et (xB,yB+1) ), tu calcules les distances classiques d(A,B), d(A,B1)... et tu prends la plus petite
08/09/2012, 21h33
#7
inviteb4466a8c
Date d'inscription
janvier 1970
Messages
111
Re : Distance sur un tore
Pas mal, mais l'idée de déplacer les points pour en placer un au milieu reste tout de même plus courte à calculer.
08/09/2012, 23h35
#8
phys4
Date d'inscription
mars 2009
Localisation
Ile de France
Âge
81
Messages
9 784
Re : Distance sur un tore
Un déplacement d'un point au milieu n'assure pas que l'autre soit ramené au point de plus courte distance, à moins de contrôler à chaque fois qu'il soit entre 0 et 1.
S'il est vrai que la mesure des 4 distances sera un peu longue, le calcul de la différence avec vérification de l'intervalle de cette différence reste le plus court, car n'y a qu'un seul contrôle par différence.