2016-12-07 5 views
-1

궤적 방정식을 모델링하려고하는 Im (2 차원 탱크 게임의 경우). 사용하려고 방정식 임이다C++을 사용하는 방정식과 관련된 문제

https://www.wolframalpha.com/input/?i=y+%3D+xtan(60)+-+(9.82++x%5E2)+%2F+(2++150%5E2++cos%5E2(60))

이 내 초기 속도와 같이 60도 각도로 (150)를 사용한 예이다. 이 그래프를 보면 근은 x = 1984가되어야합니다.

는 C++에서 나는 가지고 경과

if (shoot) { 
    x += elapsed*500; 
    y = x*tan(60) - (g * pow(x, 2))/(2 * pow(150, 2) * pow(cos(60), 2)); 
} 

마지막 프레임 및 g는 9.82 초 이후에 경과 된 시간이다. 내 문제는 x = 1378에있는 슛이 200이라는 가장 높은 y 값을 갖는다는 것입니다. 제가 방정식을 올바르게 모델링 했으므로 이제는 내 잘못이 무엇인지 알 수 없습니다. 궤적을 위해 나는이 자습서를 따라 갔다 : https://www.youtube.com/watch?v=5EjQkutYOZg

+3

삼각 함수는 IIRC가 아닌 라디안을 취합니다. –

+0

degrees * (PI/180),'std' 함수를 사용한다고 가정하십시오. – George

+0

감사합니다. 학위가 필요없는 기능이 있습니까? – Bonbin

답변

0

당신은 라디안 단위로 일해야한다.

무엇이든 60*(PI/180)이 같으면 방정식이 작동합니다. PI가 원이되는 곳 3.1415 ...

관련 문제