Clear Filters
Clear Filters

creating a line cursor in app designer

12 views (last 30 days)
David
David on 30 Apr 2023
Edited: Adam Danz on 15 May 2023
Hi!
assume I create a signal and show it over an UIiAxes in matlab app designer.
is there a way to create a retangle cursor or line cursor using the imaged.roi.rectangle object / imaged.roi.rectangle object ?
something like the next function:
a full code is needed, if is possible.
thanks
  2 Comments
Adam Danz
Adam Danz on 1 May 2023
Could you elaborate on what you mean by cursor? Would the line/rectangle follow the mouse cursor?
David
David on 1 May 2023
Yes, If we use rectangle, i want that only the vertical lines would be dragged after the mouse ). The same for 2 lines objects.

Sign in to comment.

Answers (1)

Sachin
Sachin on 12 May 2023
Hi
I understand that you want to create a line cursor for an app designer.
You can use the Callback function in MATLAB to achieve this. There are several callback functions in MATLAB uifigure that you can help you.
  1. WindorButtonMotionFcn – This callback function executes whenever the user moves the pointer within the UI figure.
  2. ButtonDownfcn - This callback executes whenever the user clicks on the mouse button
fig = uifigure();
gl = uigridlayout(fig,[2 2]);
ax = uiaxes(gl);
hline = line(ax, [5 5], ax.YLim, 'Color', 'r');
%
fig.WindowButtonMotionFcn = @(fig, eve) btnCb(fig, eve, ax, hline);
function btnCb(~, ~, ax_up, l_h)
x = ax_up.CurrentPoint(1, 1)
if (ax_up.XLim(1) < x) && (x < ax_up.XLim(2))
l_h.XData = [x,x];
end
end
Referring to this MATLAB Answer page might be helpful to you:
Hope this helps you

Categories

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!