1

我对 Matlab 很陌生。我需要根据文件 squares.txt 中给我的规格在白色画布上创建正方形。文本文档包含一个 6 列和一些行的数字矩阵。矩阵每行的前两个数字是要绘制的正方形的中心坐标。第三个值是宽度,最后一个值是 RGB 值。给定中心坐标,我很难找到在画布上绘制正方形的方法。

4

1 回答 1

1

给定中心坐标、宽度和 RGB 值,绘制一个彩色正方形,如下所示:

sq = rectangle('Position', [i-width/2, j-width/2, width, width],'EdgeColor',[r g b]);

根据您的颜色值是介于 0 和 1 之间还是 0 和 255 之间,您可能需要r除以255gb

编辑:

不使用文件的最小示例:

width=100;
for count = 1:2
    if (count == 1)
       canvas = ones(400,400,3);
    else
        canvas = ones(300,700,3);
    end
    figure, imshow (canvas);
    rectangle('Position', [100-width/2, 200-width/2,  width, width], 
EdgeColor', [0.5 0.5 0.2]);
end
于 2016-04-09T07:05:56.567 回答