Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Алгоритмы _ Формулы для координат

Автор: -Александр- 30.10.2007 0:15

Я совсем недавно начал программировать, месяца два назад. Так что не судите меня строго. Проблема состоит в том, что я хочу добиться поворота трехмерной фигуры в двух плоскостях, тоесть(если использовать трехмерную систему отсчета) в плоскостях X-Y и X-Y. По отдельности для поворота в плоскости X-Y, я спользую вот такие формулы:
X:=R*COS(A);
Y:=0.5*R*SIN(A);
Z:=const;
где R у меня постоянное неизменное число.А вот угол A я как раз и изменяю, тем самым добиваясь поворота тела в плоскости X-Y.
А для поворота в плоскости X-Y я использую немного другие формулы
X:=const;
Y:=0.5*R*COS(B);
Z:=R*SIN(B);
Где опять же R у меня постоянное неизменное число. А угол B я изменяю, тем самым добиваясь поворота в плоскости Y-Z.
Вопрос состоит в том как объединить законы изменения координат, чтобы я мок крутить тело в обеих плоскостях, а не по отдельности.

М
Тема переносится в Алгоритмы, как не имеющая прямого отношения к Паскалю


Автор: -Александр- 8.11.2007 17:54

Я извиняюсь. Ошибочку допустил........

Я совсем недавно начал программировать, месяца два назад. Так что не судите меня строго. Проблема состоит в том, что я хочу добиться поворота трехмерной фигуры в двух плоскостях, тоесть(если использовать трехмерную систему отсчета) в плоскостях X-Y и Z-Y. По отдельности для поворота в плоскости X-Y, я спользую вот такие формулы:
X:=R*COS(A);
Y:=0.5*R*SIN(A);
Z:=const;
где R у меня постоянное неизменное число.А вот угол A я как раз и изменяю, тем самым добиваясь поворота тела в плоскости X-Y.
А для поворота в плоскости Z-Y я использую немного другие формулы
X:=const;
Y:=0.5*R*COS(B);
Z:=R*SIN(B);
Где опять же R у меня постоянное неизменное число. А угол B я изменяю, тем самым добиваясь поворота в плоскости Y-Z.
Вопрос состоит в том как объединить законы изменения координат, чтобы я мок крутить тело в обеих плоскостях, а не по отдельности.