2013-05-05 6 views
0

Je crée un jeu très très simple pour m'amuser. Réalisant que j'avais besoin de la trajectoire d'un objet avec un angle et une vitesse, il semblait logique d'utiliser cette équation paramétrique: x = (v * cos (ø)) t et y = (v * sin (ø) t - 16t^2 Je sais que cette équation fonctionne pour une trajectoire, mais elle ne fonctionne pas avec la plupart des valeurs ø que j'utilise Les angles java fonctionnent-ils différemment du calcul de l'angle normal? Mon objectif est que l'objet commence par le bas à gauche de la fenêtre et suivre un arc qui est déterminé par la vitesse et l'angle donné.Toutefois, il tend à aller directions étrangesEquation de trajectoire paramétrique?

La valeur de ø devrait être horizontale à 0 degrés et verticale à 90, et dans l'équation, il se réfère à l'angle de début de l'arc

Ceci est mon premier post de question sur ce site, donc si je manque quelque chose à cet égard s'il vous plaît faites le moi savoir.

Voici la partie calcul de mon code

non représenté est le temps de vide() qui compte pour chaque 5ms aussi je dois mentionner que le Parx et Pary sont utilisés pour désigner les coordonnées x et y dans une forme non arrondie, car les coordonnées graphiques requièrent des valeurs entières. Toute aide est très appréciée, et merci d'avance!

public void parametric() 
{ 
    parX = (float) ((speed*cos(-ø))*time); 
    gravity = (time*time)*(16); 
    parY = (float) ((float) ((speed*sin(-ø))*time)+gravity)+500; 

    xCoord = round(parX); 
    yCoord = round(parY); 






} 

Répondre

0

Est-ce que les angles de Java fonctionnent différemment tout de calcul d'angle normal?

Il vous suffit de lire le docs

public static double cos(double a) 

Parameters: 
a - an angle, in radians. 

Je suppose que vous utilisez au lieu de degrés radians?

+0

Je me demandais simplement si les angles commençaient à autre chose que 0. Je sais que l'axe y, par exemple, est retourné, et je me demande si cela correspond aussi aux angles. –

+0

Les angles semblent donner des valeurs aléatoires, et les fonctions trigonométriques semblent être les coupables probables. Il peut faire un arc correct à 15 degrés, mais pas à 20, et ainsi de suite. Cela ira dans plusieurs directions différentes. –

+0

Je ne veux pas être dense, mais: utilisez-vous des degrés ou des radians? – leonbloy