чем лучше нарисовать поверхность (функцию 2х пееменных) ?

mozyr

есть двумерная поверхность в трёхмерном пространстве (типа z=f(x,y) )
задаётся таблицей.
функция ещё зависит от параметра (назовём его временем).
было бы супер, если бы софтина рисовала динамическую картинку (анимацию) - изменение поверхности во времени.
или , может, одной прогой рисовать картинки, делать из них слайдшоу, или даже видео , но тогда нада этот процесс автоматизировать.
чем лучше замутить это ?

Chupa

> одной прогой рисовать картинки, делать из них слайдшоу, или даже видео , но тогда нада этот процесс автоматизировать.
Я бы делал через gnuplot с помощью скриптов (возможно, с использованием netpbm и ffmpeg).
Не знаю, насколько это применимо в данном конкретном случае.

mozyr

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

durka82

А оно под винду есть?

krasikovroman

Я поверхности рисую в Surfer'e 8, по моему наиболее удобная прога, можно рисовать еще в MatLab, Maple, Matematica.
Но как сделать видео, которое бы плавно переходило с кадра на кадр, я не знаю.
Может кто-ниб. подскажет?
Вроде бы в MatLabe, можно это сделать вот только не знаю как.

Girin

Можно в Maple . Там примеры стандартные на это есть. С них можно и начать. Я наверное не ошибаюся

Chupa

gnuplot есть.
ffmpeg должен скомпилиться, но в винде, думаю, и без него можно из отдельных картинок видео сделать.
netpbm - аналогично. Он понадобится только в случае, если от gnuplot не удастся картинки в нормальном формате получить.
Другие конверторы в винде тоже существуют.
Возиться в основном придётся с формированием входных параметров для gnuplot'а.

Ivan8209

ffmpeg собирали и под ДОС.
netpbm есть.
Для создания входных есть sed, awk, textutils.
---
...Я работаю...

Ivan8209

Кстати, можно просто склеить получаемые PostScript-овые картинки в книгу.
Надо бы прочитать про psutils
---
...Я работаю...

voronetskaya

А Excell'ем нельзя разве?

mozyr

excel'ем?
хз.. а разве можно? вроде он графики рисует, но анимацию - не знаю.

Anturag

А можно чуть-чуть запариться и написать всё на сях. Это кстати не очень сложно, у меня даже где-то первая часть субжа написана(то есть без изменений во времени). А потом всё в нехилый массивчик записать и прокручивать можно.

yolki

А как такой вариант: рисовать grayscale-картинку, где цвет точки=f(x,y)?
Очень эффектно решения задачи теплопроводности показывать
ограничение в 256 уровней (цветов) можно снять, если сделать палитру (например, плавный переход R->G->B->W - 1024 цветов)
можно шкалу сделать логарифмическую или экспоненциальную - это дело вкуса.
BMP-шки ваять - это с полпинка. (Староверов даёт такие задачи 2курсу ММ)

Silent

В MatLab.
Пример:
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);
Оставить комментарий
Имя или ник:
Комментарий: