我想在MATLAB中的图像上绘制矩形。在每次迭代中,我都需要绘制新的矩形并删除之前的矩形。
我读了一次图像,然后使用
在for循环中绘制矩形rectangle('Position',[boxPoint(1),boxPoint(2),24,32],'LineWidth',1, 'EdgeColor','g');
但是,在每次迭代中,矩形都是在旧的矩形之上绘制的。知道如何解决这个问题吗?
答案 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