Determiner un point sur une droite

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
lataupe123
Messages: 2
Enregistré le: 24 Mai 2009, 12:57

Determiner un point sur une droite

par lataupe123 » 24 Mai 2009, 13:11

Bonjour,

Je développe actuellement un jeux vidéo (un pong) et je bloque sur une question qui sera, je l'espère, facilement résolu :p


En gros, ma balle avance sur une droite de la forme y = ax + b à une certaine vitesse (10 cm/s). A un instant t elle se trouve sur un point de la droite A. A partir de là j'aimerais savoir comment obtenir le prochain point B sur cette droite se trouvant à 10 cm de A.

J'attends vos réponses avec impatience et un grand Merci d'avance !

Léo



Cheche
Membre Rationnel
Messages: 650
Enregistré le: 17 Avr 2009, 19:25

par Cheche » 24 Mai 2009, 13:21

Salut,

On suppose que les mesures de y et x sont en cm.





=>
=>
=>

Remarque tu as donc x_b en fonction de x_a, mais tu dois prendre en compte comme tu te déplaces sur la droite.

phryte
Membre Irrationnel
Messages: 1406
Enregistré le: 05 Juil 2008, 17:09

par phryte » 24 Mai 2009, 17:22

Bonjour.
Une idée de programme sous Matlab :
Code: Tout sélectionner
clear
MV=10;%Module de la vitesse cm/s
x=0:0.1:20;
y=2*x+1;%Equation
theta=atan(2);%Angle en fonction de la Pente
V=MV*[cos(theta) sin(theta)];%Coordonnées du vecteur vitesse
A=[2 5];
dt=1;%Durée du mouvement
B=A+V.*dt;%Equation du mouvement
plot(x,y)
grid;hold on
plot(A(1),A(2),'.','MarkerSize',30)
plot(B(1),B(2),'.','MarkerSize',30)

lataupe123
Messages: 2
Enregistré le: 24 Mai 2009, 12:57

par lataupe123 » 24 Mai 2009, 18:14

Un grand merci à tous les deux d'avoir pris le temps de me répondre.

J'ai implementé la version de cheche avec une vitesse fixe et si j'ai bien compris ça donne ça :

Code: Tout sélectionner
//Si le coeff directeur est positif
//afin de gerer le + ou - racine de ...
if (balle.coeffDirecteur >= 0)
{
   xb = balle.x + Math.sqrt(100/(balle.coeffDirecteur^2+1));
}
else
{
   //Math.abs permet d'avoir une valeur absolu pour la racine
   //je me suis aperçu que -2^2 = -4 sinon :/
   xb = balle.x - Math.sqrt(100/(Math.abs(balle.coeffDirecteur^2)+1));
}
         
var yb:Number = this.coeffDirecteur * xb;

balle.x = xb;
balle.y = yb;


Malheureusement cela ne marche pas, je m'explique : Au début de mon code j'ai : coeffDirecteur = 1. Visuellement la balle va à une allure modéré.
si je modifie sa valeur de 1 à 2 la direction de la balle est modifié mais la balle s'accélère alors que je cherche à garder une vitesse constante :-(


Si vous avez une idée, je suis preneur :p

Léo

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 56 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite