TA的每日心情 | 开心 2019-11-20 15:05 |
|---|
签到天数: 2 天 [LV.1]初来乍到
|
有两种方法,以下是用来实现该功能的 MATLAB 函数: X; L6 l F5 i* t7 y' n9 j5 I
$ X) @) i- G$ n; N8 a6 {- function h = circle(x,y,r)
- hold on
- th = 0:pi/50:2*pi;
- xunit = r * cos(th) + x;
- yunit = r * sin(th) + y;
- h = plot(xunit, yunit);
- hold off$ |' H" \3 K( W' Q% T
( E) n( q5 C0 }: v
8 B; |( P) {$ V! M
. L, X! ?3 U6 Y) M另一种方法是使用 rectangle 函数:
' U! g* `# \8 Y j& A$ ?3 h* k
0 y/ [4 x3 g0 |8 K- function h = circle2(x,y,r)
- d = r*2;
- px = x-r;
- py = y-r;
- h = rectangle('Position',[px py d d],'Curvature',[1,1]);
- daspect([1,1,1])3 o; J8 i0 n( p& _/ J
5 d: M8 f+ H% J5 R) ]) q% I! |& `3 c( u. c( J3 ^0 l
( Y7 r" n. T( W; c% t( C
如果你正在使用 MATLAB R2012a 或者之后版本的 Image Processing Toolbox,你可以用 viscircles 函数: " D, R5 _+ L/ p9 x8 Y
& j( D$ `4 G# z P( j5 @ f- viscircles(centers,radii)
& E- o- E& R2 g- e8 J3 r8 A - y! i% x* N! J% J5 A
|
|