How to clear images in app designer
33 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Othman Alkandri
am 1 Feb. 2023
Bearbeitet: Othman Alkandri
am 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 Kommentare
Akzeptierte Antwort
Image Analyst
am 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 Kommentare
Image Analyst
am 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.
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!