Filter löschen
Filter löschen

How to move slider-bar with a step-size of two?

3 Ansichten (letzte 30 Tage)
John Doe
John Doe am 17 Mai 2020
Kommentiert: Rik am 18 Mai 2020
Hey there everyone. I have a slider which I want to increase like 1:2:10 by dragging the bar with mouse. How can I accomplish that?
Thanks in advance!
  1 Kommentar
Rik
Rik am 18 Mai 2020
I don't know if you have already come across this page, but especially since GUIDE is going to be removed from Matlab, here are some useful tips: https://www.mathworks.com/matlabcentral/answers/483657-how-to-create-a-gui

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Rik
Rik am 17 Mai 2020
Bearbeitet: Rik am 17 Mai 2020
Round the Value property to the nearest value in your array in the callback function.
allowed_vals=1:2:10;%better: store this in the guidata struct
val=3.2;%val=get(hObject,'Value');
[~,idx]=min(abs(allowed_vals-val));
val_rounded=allowed_vals(idx);
%set(hObject,'Value',val_rounded);
disp(val_rounded)
  4 Kommentare
John Doe
John Doe am 18 Mai 2020
I see. Thanks for the explanation.
Actually, I am trying to pass this slider value to a filter.
x = imboxfilt(Dummyimage,sliderval)
When I increase the slider, the picture gets blurred. But then when I decrease the value, the blurness does not decrease. I want the blur amount to vary with the slider value.
Is it because the pixels are already averaged and cannot be reverted back? Is there a way to solve this issue? Thanks.
Rik
Rik am 18 Mai 2020
You need to blur the original image, so you will have to store both the original and the processed version.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by