MATLAB Answers

Where are all drawn shapes stored from an axis?

1 view (last 30 days)
Joseph Henry
Joseph Henry on 16 Jul 2019
Edited: Adam Danz on 19 Jul 2019
Let's say that I have an axis and I draw three shapes on it using drawrectangle.
Is there some way to call an array that holds the handles to each of these shapes?

  1 Comment

Adam on 16 Jul 2019
If you store them when you call drawrectangle and keep the output argument, yes.

Sign in to comment.

Accepted Answer

Adam Danz
Adam Danz on 16 Jul 2019
Edited: Adam Danz on 19 Jul 2019
Store handles
In the block below, r1, r2, & r3 are handles to the 3 rectangles.
r1 = rectangle('Position',[0 0 2 4],'Curvature',0.2);
hold on
axis equal
r2 = rectangle('Position',[3 0 2 4],'Curvature',1);
r3 = rectangle('Position',[6 0 2 4],'Curvature',[0.5,1]);
Retrieve handles if they aren't stored
The line below search for objects of type "rectangle" in the current axes. For the plot created above, r would be a vector of object handles of size [3x1].
r = findobj(gca, 'Type', 'rectangle');


Sign in to comment.

More Answers (0)

Sign in to answer this question.