2013-12-01 12 views
1

Да, я проверил предложенные вопросы/ответы, которые были даны мне, но наиболее вовлеченные кватернионы, или в них были символы, которые у меня даже нет на моей клавиатуре.Тригонометрия: 3D вращение вокруг центральной точки

Я потерпел неудачу в старшей школе, и, хотя я понимаю основные понятия о грехе и cos в 2D пространстве, я в недоумении, когда бросаю в третий самолет, чтобы справиться.

В принципе, у меня есть следующие вещи: центральная точка, расстояние и углы для каждой из трех осей. Учитывая эту информацию, я хочу рассчитать точку, которая находится на расстоянии от центральной точки, с указанными углами.

Я не уверен, что объясню это правильно. Я намерен получить то, что составляет электроны, вращающиеся вокруг ядра, если кто-то знает, как это сделать. Я работаю с Java, JRE 6, если есть какие-то полезные классы, которые могут помочь.

Мне не нужен только ответ, но также как и почему ответа. Если я собираюсь что-то узнать, я тоже хочу узнать об этом. Я не боюсь взять урок в тригонометрии или о том, как работают кватернионы и т. Д. Я не ищу полный курс ответа, но, по крайней мере, какое-то базовое понимание было бы круто.

ответ

0

Если вы сделали это в 2D, у вас была бы точка на плоскости с определенными координатами x и y. Расстояние от начала координат будет sqrt(x^2+y^2), а угол atan(y/2).

Если вы получили угол phi и расстояние r вы бы вычислить x= r*cos(phi); y=r*sin(phi);

Чтобы сделать это в трех измерениях, нужно два угла - угол в плоскости XY и угол относительно оси Z. Вызов этих Фи и тета, Вы можете вычислить координаты как

X = r*cos(phi)*sin(theta); 
Y = r*sin(phi)*sin(theta); 
Z = r*cos(theta); 

Когда у меня есть шанс я сделать эскиз, чтобы показать, как это работает.

Смежные вопросы