- Create a MATLAB Function block in your Simulink model.
- Use the following code in the MATLAB Function block:
How to create a simple single color visualization in simulink ?
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi,I'm trying to visualize a single color in a simulink simulation. I would like to send a vector of 3 values [R,G,B] and simply have an that color displayed and updated live on some sort of screen/plot.
I have tried inserting an "matlab function" block and using this function:
function drawColor(RGB)
rectangle('FaceColor',RGB)
This works and displayes the color just like I want it to, but the display is updated very slowly.
Is there a proper way to do this ?
0 Kommentare
Antworten (1)
prabhat kumar sharma
am 12 Dez. 2024
Bearbeitet: prabhat kumar sharma
am 12 Dez. 2024
Hi Michael,
The slow update you're experiencing might be due to the overhead of repeatedly creating graphics objects.
Here is another approach you can try.
function drawColor(R, G, B)
coder.extrinsic('set', 'rectangle', 'gcf', 'cla');
persistent rect;
if isempty(rect)
% Create the rectangle once
figure('Name', 'Color Display', 'NumberTitle', 'off');
rect = rectangle('Position', [0, 0, 1, 1], 'FaceColor', [R, G, B]);
axis off; % Turn off the axes for a cleaner look
else
% Update the rectangle's color
set(rect, 'FaceColor', [R, G, B]);
drawnow limitrate; % Optimize rendering speed
end
end
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!