Почему Math.Cos возвращает неправильное значение? - PullRequest
5 голосов
/ 12 ноября 2010

В моем коде:

Vector2 colCircle = new Vector2();

colCircle = new Vector2((R * Math.Sin(D)), -(R * Math.Cos(D)));

В то время как:

R = 22.627
D = 89.214

При проверке на моем калькуляторе значение X является правильным, но значение Y должно быть -0,310, а в программе - -7,134.

Есть идеи, почему?

Ответы [ 2 ]

23 голосов
/ 12 ноября 2010

Тригонометрические функции рассчитывают радианы, а не градусы.

4 голосов
/ 12 ноября 2010

Замените то, что у вас есть

colCircle = new Vector2((R * Math.Sin(D*Math.PI/180.0)), -(R * Math.Cos(D*Math.PI/180.0))); 

и у тебя все будет хорошо. Cos / Sin ожидают радианы, а не градусы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...