在for循环内的图像上绘制矩形

时间:2015-12-30 08:23:07

标签: matlab drawing rectangles

我想在MATLAB中的图像上绘制矩形。在每次迭代中,我都需要绘制新的矩形并删除之前的矩形。

我读了一次图像,然后使用

在for循环中绘制矩形
rectangle('Position',[boxPoint(1),boxPoint(2),24,32],'LineWidth',1, 'EdgeColor','g');

但是,在每次迭代中,矩形都是在旧的矩形之上绘制的。知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:4)

rectangle函数可以返回一个句柄,您可以随后使用该句柄将其删除:

% Draw figure with 2 rectangles
h = figure;
hold on
xlim([0,100])
ylim([0,100])
r(1) = rectangle('Position', [10,10,10,10]); % Make sure keep handles to rectangles
r(2) = rectangle('Position', [50,50,10,10]);

delete(r(1)) % Delete a rectangle