Clear Filters
Clear Filters

imrotate in Matlab App Desinger

12 views (last 30 days)
monkey_matlab on 13 Oct 2017
Commented: monkey_matlab on 24 Oct 2017
Is it possible to rotate an image in Matlab app designer?
I input an image using the following code:
% Code that executes after component creation
function startupFcn(app)
imag = imread('cameraman.tif');
handles.I = imresize(imag,0.75);
How to now rotate the image using a slider.
Under the slider code, I have tried the following but could not get it to work:
% Value changing function: SteeringSlider
function SteeringSliderValueChanging(app, event)
changingValue = event.Value;
angle = round(event.Value);
imshow( imrotate(app.UIAxes,angle,'bilinear','crop') );
Can you tell me how to rotate an image in Matlab App Designer? Thanks.

Answers (2)

Rajesh Balagam
Rajesh Balagam on 17 Oct 2017
Edited: Rajesh Balagam on 17 Oct 2017

Sean de Wolski
Sean de Wolski on 17 Oct 2017
You're calling imshow on the uiaxes not the image. I would manage this like this:
app.UIAxes = uiaxes; % You won't need this in app designer since it's already there
im = imread('cameraman.tif');
imh = imshow(im, 'Parent', app.UIAxes);
for angle = 0:10:360
imh.CData = imrotate(im,angle,'bilinear','crop');
Store imh and im as properties of your app.
Sean de Wolski
Sean de Wolski on 24 Oct 2017
app.imh.CData = imrotate(app.imageData, ...)
drawnow limitrate
You're rotating the handle not the image data and also need to reference app. Also
monkey_matlab on 24 Oct 2017
I edited the code as per your suggestion (see updated code above) but the image is still not rotating when I move the slider.

Sign in to comment.


Find more on Interactive Control and Callbacks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!