如何在Matlab中创建象限圆形状矩阵?

时间:2016-01-31 13:49:06

标签: matlab matrix

目前我在创建具有象限形状的矩阵时遇到问题。问题如下:

我想要一个138 x 140的矩阵,其值为2和3.在象限圆的内部和上面,值应为2.圆外的所有东西,我需要值为3.半径圆圈是138(= R138)。希望下面的图片能够支持我的解释。

138x140 matrix with quadrant circle.

我在考虑使用' triu' (然后翻转)在matlab中:然后我不会得到一个圆圈,而是一个三角形(尚未尝试过)。这不是我想要的。

创建此矩阵的最简单方法是什么?

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

a = ones(138, 140)*3;
[gx, gy] = meshgrid(139:-1:0, 137:-1:0);
a(gx.*gx + gy.*gy <= 138*138) = 2;