Satellite color not changing dynamically

4 ビュー (過去 30 日間)
Krish
Krish 2024 年 2 月 28 日
編集済み: Krish 2024 年 3 月 1 日
I want that the satellite color changes to that of its current network manager.
When i move frame by frame by using advance function the color changes occur in the simulation but when I use the loop:
while sc.SimulationTime ~= sc.StopTime
sc.advance();
for leo_in=1:size(leo_satellites)
for nm_in=1:size(network_managers)
if detect_change_nm(leo_in,nm_in) ~= size(access_list{leo_in,nm_in}.accessIntervals,1)
detect_change_nm(leo_in,nm_in) = detect_change_nm(leo_in,nm_in) + 1;
% change color of satellite same as its network manager
leo_satellites(leo_in).matlab_sat.MarkerColor = network_managers(nm_in).gs.MarkerColor;
end
end
end
end
The simulation shows the initial color only.
Color change occuring when moving frame by frame
:
Originally they were red and not changed to green even though they must change color according to the code (using above loop)
  1 件のコメント
Walter Roberson
Walter Roberson 2024 年 2 月 28 日
drawnow() ?

サインインしてコメントする。

回答 (1 件)

Gayatri
Gayatri 2024 年 2 月 29 日
Hi Krish,
In MATLAB, when you run a loop that updates graphical objects, you often need to manually force the graphics to render the updates. This is typically done using 'drawnow', which is a MATLAB function that forces the figure window to update and display any pending graphics events.
Here's an example of how 'drawnow' can be used:
x = 1:100;
y = sin(x);
figure
plot(x, y)
for i = 1:100
y = sin(x + i/10);
plot(x, y)
drawnow % Usage of drawnow
end
Please refer the below documentation for 'drawnow' function: https://in.mathworks.com/help/matlab/ref/drawnow.html
I hope it helps!
  3 件のコメント
Gayatri
Gayatri 2024 年 3 月 1 日
Can you please send the complete code files?
Krish
Krish 2024 年 3 月 1 日
編集済み: Krish 2024 年 3 月 1 日
The main file that has to be executed is "Simulation_original.m"

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeReference Applications についてさらに検索

製品


リリース

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by