MATLAB Answers


Where are all drawn shapes stored from an axis?

Joseph Henry さんによって質問されました 2019 年 7 月 16 日
最新アクティビティ Adam Danz
さんによって 編集されました 2019 年 7 月 19 日
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 件のコメント

2019 年 7 月 16 日
If you store them when you call drawrectangle and keep the output argument, yes.

サインイン to comment.

1 件の回答

Adam Danz
回答者: Adam Danz
2019 年 7 月 16 日
編集済み: Adam Danz
2019 年 7 月 19 日

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');

  0 件のコメント

サインイン to comment.

Translated by