How to clear images in app designer
30 views (last 30 days)
Show older comments
Othman Alkandri
on 1 Feb 2023
Edited: Othman Alkandri
on 2 Feb 2023
Hello guys,
I am trying to clear the image when I click the reset button. I tried the following two commands.
clf(app.Image3)
cla(app.Image3, 'reset')
Do you recommend other commands to use?
0 Comments
Accepted Answer
Image Analyst
on 1 Feb 2023
clf clears a whole figure, not just one axes on the figure. It clears everything I believe. So, since that is never anything I want to do I never use it.
cla clears just the current axes or the one you told it to. I use this one a lot because I want to make sure the axes gets cleared. Often I put "hold on" to draw graphics in the overlay and forget to turn it off. If you don't call cla then display a new image, it will just add to the axes and be on top covering everything that was there before. If you do that enough, like dozens or hundreds of times, your memory will get exhausted and your program will get slower and slower.
4 Comments
Image Analyst
on 2 Feb 2023
Here is one way. You can set the ImageSource to a small white image of whatever color you want.
% Button pushed function: DisplayImageButton
function DisplayImageButtonPushed(app, event)
% Get selected filename from listbox.
selectedFileName = app.ListBox.Value;
if isempty(selectedFileName)
return;
end
% Display image in the axes control.
theImage = imread(selectedFileName);
imshow(theImage, 'Parent', app.UIAxes);
% Display image in the "Image" control.
app.Image.ImageSource = theImage;
end
% Button pushed function: ClearImagesButton
function ClearImagesButtonPushed(app, event)
cla(app.UIAxes, 'reset'); % Clear axes control.
app.Image.ImageSource = 255*ones(2,2,3); % Clear image control.
end
See attached demo.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!