TA的每日心情 | 开心 2019-11-20 15:05 |
|---|
签到天数: 2 天 [LV.1]初来乍到
|
有两种方法,以下是用来实现该功能的 MATLAB 函数:
* o7 T3 d/ W! J+ R5 E* \/ S9 \# ~+ }* r7 R
- 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 off5 V% Q+ [$ B: ~4 J- a
6 a) L6 O* K: s: |8 c' S1 @
0 ^# T9 V f% z _& d+ z$ m1 b. u8 U) y; _9 `+ G, u6 z
另一种方法是使用 rectangle 函数:
. P+ U' a" c7 S' p9 a! x9 @$ X0 F
z. r6 A9 k7 H# u s+ ~- 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])( L+ j! p3 H. l% U: M8 |
# ]! |; \' c7 A5 p. h
4 H- `, b/ X3 |4 l) R/ F- J$ F3 [1 n' E+ z3 R% p# R
如果你正在使用 MATLAB R2012a 或者之后版本的 Image Processing Toolbox,你可以用 viscircles 函数: ) n* D9 b; B& ]" Y
) B, T, Y3 F. H' H/ Z0 i- viscircles(centers,radii)6 Y" q' P' @# L' _4 j z
+ ^! i. U1 |( O% c- j
|
|