чем лучше нарисовать поверхность (функцию 2х пееменных) ?
Я бы делал через gnuplot с помощью скриптов (возможно, с использованием netpbm и ffmpeg).
Не знаю, насколько это применимо в данном конкретном случае.
может готовое есть ?
и скрипты.. никогда не писал скрипты.
А оно под винду есть?
Но как сделать видео, которое бы плавно переходило с кадра на кадр, я не знаю.
Может кто-ниб. подскажет?
Вроде бы в MatLabe, можно это сделать вот только не знаю как.
Можно в Maple . Там примеры стандартные на это есть. С них можно и начать. Я наверное не ошибаюся
ffmpeg должен скомпилиться, но в винде, думаю, и без него можно из отдельных картинок видео сделать.
netpbm - аналогично. Он понадобится только в случае, если от gnuplot не удастся картинки в нормальном формате получить.
Другие конверторы в винде тоже существуют.
Возиться в основном придётся с формированием входных параметров для gnuplot'а.
netpbm есть.
Для создания входных есть sed, awk, textutils.
---
...Я работаю...
Надо бы прочитать про psutils
---
...Я работаю...
А Excell'ем нельзя разве?
хз.. а разве можно? вроде он графики рисует, но анимацию - не знаю.
А можно чуть-чуть запариться и написать всё на сях. Это кстати не очень сложно, у меня даже где-то первая часть субжа написана(то есть без изменений во времени). А потом всё в нехилый массивчик записать и прокручивать можно.
Очень эффектно решения задачи теплопроводности показывать
ограничение в 256 уровней (цветов) можно снять, если сделать палитру (например, плавный переход R->G->B->W - 1024 цветов)
можно шкалу сделать логарифмическую или экспоненциальную - это дело вкуса.
BMP-шки ваять - это с полпинка. (Староверов даёт такие задачи 2курсу ММ)
Пример:
Z = peaks; surf(Z);
axis tight
set(gca,'nextplot','replacechildren');
% Record the movie
for j = 1:20
surf(sin(2*pi*j/20)*Z,Z)
F(j) = getframe;
end
% Play the movie twenty times
movie(F,20)
В Maple еще проще.
Пример:
restart;
> with(plots):
> animate3d(cos(t*x)*sin(t*yx=-Pi..Pi, y=-Pi..Pi,t=1..2, frames=100);
Оставить комментарий
mozyr
есть двумерная поверхность в трёхмерном пространстве (типа z=f(x,y) )задаётся таблицей.
функция ещё зависит от параметра (назовём его временем).
было бы супер, если бы софтина рисовала динамическую картинку (анимацию) - изменение поверхности во времени.
или , может, одной прогой рисовать картинки, делать из них слайдшоу, или даже видео , но тогда нада этот процесс автоматизировать.
чем лучше замутить это ?