创建圆
Syntax
viscircles(centers,radii)
viscircles(ax,centers,radii)
viscircles(___,Name,Value)
h = viscircles(___)
Description
viscircles(centers,radii)在当前轴上绘制具有指定中心和半径的圆。
viscircles(ax,centers,radii)在ax指定的轴上绘制圆。
viscircles(___,Name,Value)使用名称-值对参数来指定圆的其他属性。
h = viscircles(___)将手柄h返回到绘制的圆。
Examples
在图像的明亮和黑暗圆圈周围绘制线条
clear all
close all
clc
A = imread('circlesBrightDark.png');
imshow(A)
%定义半径范围。
Rmin = 30;
Rmax = 65;
%找到半径范围内图像中的所有亮圈。
[centersBright, radiiBright] = imfindcircles(A,[Rmin Rmax],'ObjectPolarity','bright');
%找到半径范围内图像中的所有黑圈。
[centersDark, radiiDark] = imfindcircles(A,[Rmin Rmax],'ObjectPolarity','dark');
%在明亮圆圈的边缘周围绘制蓝线。
viscircles(centersBright, radiiBright,'Color','b');
%在黑圈的边缘周围绘制红色虚线。
viscircles(centersDark, radiiDark,'LineStyle','--');
在绘制圆之前清除轴
绘制圆环之前,粘性圆环功能不会清除目标轴。 要删除以前在轴上绘制的圆,请使用cla函数。 为了说明这一点,此示例创建一个新图形,然后循环,每次迭代绘制一组圆,每次清除轴。
figure
colors = {
'b','r','g','y','k'};
for k = 1:5
% Create 5 random circles to display,
X = rand(5,1);
Y = rand(5,1);
centers = [X Y];
radii = 0.1*rand(5,1);
% Clear the axes.
cla
% Fix the axis limits.
xlim([-0.1 1.1])
ylim([-0.1 1.1])
% Set the axis aspect ratio to 1:1.
axis square
% Set a title.
title(['k = ' num2str(k)])
% Display the circles.
viscircles(centers,radii,'Color',colors{
k});
% Pause for 1 second.
pause(1)
end
ax — Axes in which to draw circles
画圆的轴,指定为gca或轴返回的手柄对象。