Умные вопросы
Войти
Регистрация
Кто знает высшую математику, как задать овал превращающийся в шар и наоборот неправильной формы? Анимация.
6 года
назад
от
Андрей
1 ответ
▲
▼
0
голосов
Должно быть, вы хотели сказать: преобразование сферы в эллипсоид.
Пусть имется система кординат (x, y, z) с центром в точке O.
Уравнение эллипсоида (с центром в O) : (x/A) ^2 + (y/B) ^2 + (z/C) ^2 = 1
Уравнение сферы (с центром в O) : x^2 + y^2 + z^2 = R^2
Если требуется растягивание и сплющивание сферы в одном направлении, например, по оси Oz, то нужен эллипсоид вращения относительно этой оси: A = B.
Если требуется, кроме того, сохранение объёма, то все параметры A, B, C должны зависеть от времени: A (t) , B (t) , C (t) . Имем:
V эллипсоида = V сферы
4п/3*A (t) *B (t) *C (t) = 4п/3*R^3
A (t) *B (t) *C (t) = R^3
A (t) ^2*C (t) = R^3
C (t) = R^3/A (t) ^2
Остаётся задать A (t) . Очевидно, нужна периодическая функция. Для плавных колебаний подходит sin () (или cos () . Когда sin () = 0, должна получаться сфера (то есть A = R, C = R) . А когда sin () = +-1, должно быть A 0, B 0. Сответственно:
A (t) = R* (1 + k*sin (t) , где параметр 0 k 1 определяет насколько сильно должна сплющиваться и растягиваться сфера.
Пусть F = F (t) = 1 + k*sin (t)
Тогда A (t) = R*F (t) , C (t) = R/F (t) ^2
Таким образом, получаем:
(x/A (t) ^2 + (y/B (t) ^2 + (z/C (t) ^2 = 1
(x/A (t) ^2 + (y/A (t) ^2 + (z/C (t) ^2 = 1
(x/ (R*F) ^2 + (y/ (R*F) ^2 + (z/ (R/F^2) ^2 = 1
(x/F) ^2 + (y/F) ^2 + (z*F^2) ^2 = R^2
В итоге имем:
(x/F) ^2 + (y/F) ^2 + (z*F^2) ^2 = R^2 - эллипсоид вращения относительно оси Oz с центром в начале кординат, объём которого равен объёму сферы радиуса R
F = F (t) = 1 + k*sin (t) - функция, за счёт которой эллипсоид сплющивается и растягивается
t - время
k - константа такая, что 0 k 1
6 года
назад
от
Элефат Драго
Связанные вопросы
1
ответ
=Подскажите, плиз, как преодолеть отвращение к чужому языку или выработать к нему симпатию?
11 года
назад
от
жека рок
1
ответ
Тщетно, наверное, искать Либери
4 года
назад
от
D-Lion
1
ответ
перевод плииииииииииииииииииз
10 года
назад
от
Draven