matlab中circle函数_MATLAB如何用自带函数画圆

朋友们经常遇到已知圆心和半径,不需要保留圆周点坐标,但是想实现MATLAB的圆形绘制的情况。这时候用角度或者散点生成圆周坐标显然不划算,但是MATLAB又没有Circle之类的函数可以用来直接画圆。这怎么办呢?

实际上MATLAB是有一个自带函数可以用来画圆的,rectangle

这个函数里有一个'Curvature'属性,改变它时可以绘制椭圆,那么当这个值设定为[1,1]时,即可以绘制标准圆。

假设center是圆心的坐标,

​rectangle('Position',center(1)-0.5,center(2)-0.5,1,1],'Curvature',[1,1]);

则​‘Position'变量中,第一个值和第二个值表示圆外接正矩形的左下角点坐标,后面两个值表示x和y方向的半径(显然这是为了绘制椭圆作准备的)。绘制标准圆时只需要让这两个值相等即可。

以下用一个例子来说明这个问题:​

Example: 随机给定十个点的圆心坐标,在一张图上绘制10个以坐标为圆心,以1为半径的圆。

A = cell(1,10);

for i = 1 : 10

A(i) =

{[10*(rand(1,1)-0),10*(rand(1,1)-0)]};

end

for i = 1 : 10

center =

cell2mat(A(i));

rectangle('Position',[center(1)-0.5,center(2)-0.5,1,1],'Curvature',[1,1]);

hold on;

plot(center(1),center(2),'r+');

end

axis equal

axis([0 10 0 10]);

box on;​

如是,以后遇到类似的情况,就可以用这种简单的方法实现标准圆的绘制了。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值