TA的每日心情 | 开心 2019-11-20 15:05 |
|---|
签到天数: 2 天 [LV.1]初来乍到
|
有两种方法,以下是用来实现该功能的 MATLAB 函数:
- }4 h$ F1 x& w
% w2 L E: ]8 m$ g3 { p- 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
* z Z, a% b/ H% e3 g+ J: c
8 W8 b4 t* E/ ^$ X# L9 A
4 k2 v3 }# z( d3 Y$ M* \% z8 W0 ]9 Z! I. c+ }* [, M) q
另一种方法是使用 rectangle 函数:
# k& v5 V: x J& f+ K7 }& T" C$ @
+ l: v% c, D: l+ f n8 p. O1 W- 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])2 [6 A- m+ n1 O% Q- r6 Z
4 F$ V! C& N, Z0 g5 S* J
% {$ `1 T( L4 J3 |% r; S2 s* h1 Q$ o% E3 Y2 q( q
如果你正在使用 MATLAB R2012a 或者之后版本的 Image Processing Toolbox,你可以用 viscircles 函数:
4 l4 v& c5 B% U( H3 `* n7 h5 t
. z. ]1 y! Q n# J! b- viscircles(centers,radii)% B/ y+ J5 O& |1 i. W
) E3 ?$ q* r* O1 t
|
|