Естественные науки

Кто знает высшую математику, как задать овал превращающийся в шар и наоборот неправильной формы? Анимация.

Должно быть, вы хотели сказать: преобразование сферы в эллипсоид.

Пусть имеется система координат (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 574
Лучший ответ
Кто Че Сможет Сказать??? Ты знаком с программированием, как это задать с помощью программирования?
Марина Бауэр А как происходит обратное преобразование?
Овал и шар - правильные фигуры
Марина Бауэр А ты можешь сделать с правильными фигурами?