Я написал код для создания анимации ( движение спутника вокруг Земли ).Когда я запускаю его, он работает нормально.Однако, когда он был изменен, чтобы стать частью кода, намного более сложного, присутствующего в GUI Matlab, результаты привели к изменениям (в основном из-за большего количества точек для построения графика).Я также заметил, что если я использую рендерер OpenGL, то движение спутника происходит быстрее, чем при использовании других рендереров (Painters и Zbuffer).Я не знаю, есть ли дальнейшие возможности для улучшения визуализации движения спутника.Я думаю, что ключ, возможно, заключается в изменении кода, который создает фактическое положение спутника (handles.psat) и его траекторию по времени (handles.tray)
handles.tray = zeros(1,Fin);
handles.psat = line('parent',ah4,'XData',Y(1,1), 'YData',Y(1,2),...
'ZData',Y(1,3),'Marker','o', 'MarkerSize',10,'MarkerFaceColor','b');
...
while (k<Fin)
az = az + 0.01745329252;
set(hgrot,'Matrix',makehgtform('zrotate',az));
handles.tray(k) = line([Y(k-1,1) Y(k,1)],[Y(k-1,2) Y(k,2)],...
[Y(k-1,3) Y(k,3)],...
'Color','red','LineWidth',3);
set(handles.psat,'XData',Y(k,1),'YData',Y(k,2),'ZData',Y(k,3));
pause(0.02);
k = k + 1;
if (state == 1)
state = 0;
break;
end
end
...