2017-02-03 3 views
0

Этот answer обеспечивает отличный способ сделать плавные анимации в SciLab. Теперь я должен написать симуляцию тела, прикрепленного к двум струнам (и, следовательно, его движение относительно некоторых дополнительных сил).Гладкая анимация трех фигур в SciLab

Код в ссылке хорошо работает, чтобы отобразить перемещение одной точки и, к сожалению, мне не удалось сделать анимацию точки + две строки, используя этот метод. Если кому-то интересно, я попробовал этот код, чтобы сделать это:

frametime=(tk-t0)/Nt//defining the waitnig time 

plot(Y(1,1),Y(2,1),"o")//plotting the point 
plot([0;Y(1,1)],[0;Y(2,1)],style=1) 
plot([D;Y(1,1)],[0;Y(2,1)],style=1)//plotting the two initial lines 
h1_compound = gce(); 
h_point=h1_compound.children 
h_point.mark_size = 20; 
h_point.mark_background = 2; 
h_line1=h_compound.children 
h_line2=h_compound.children 
//h_axes = gca(); 
//h_axes.data_bounds = [0,-1;10,1]; 
realtimeinit(frametime); 
for i=1:Nt//my vectors have Nt points 
    realtime(i);//wait "frametime" seconds before drawing the new position 
    h_point.data=[Y(1,i),Y(2,i)]; 
    h_line1.data=[[0;Y(1,i)],[0;Y(2,i)]] 
    h_line2.data=[[D;Y(1,i)],[0;Y(2,i)]] 
end 

Возникает вопрос: есть ли способ сделать анимацию из трех форм без осей моргать (как с окном освежения) или другим странный материал?

ответ

0

Поскольку вы не создали MCVE, я не могу воспроизвести вашу точную проблему. Но вы можете попытаться добавить drawlater(); раньше, и drawnow(); после изменения данных, чтобы увидеть, помогает ли оно мигать или нет.

Или вы можете получить гораздо лучший результат, сохранив ваши сюжеты в каждом раунде с помощью xs2gif и создайте анимацию с помощью другой gifmaker progam (для этого есть бесплатные онлайн-сайты, однако с некоторыми ограничениями). Если вам нужно представить свой результат, вы должны сделать этот шаг в любом случае.

Смежные вопросы