TA的每日心情 | 开心 2019-11-20 15:05 |
|---|
签到天数: 2 天 [LV.1]初来乍到
|
有两种方法,以下是用来实现该功能的 MATLAB 函数:4 F$ \: ^+ v u0 f# [5 M
" ?, C& G, I( ]3 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" i$ a! V9 S/ w# s4 H+ n# ]. x+ R/ @
( ^6 g. ^* S2 M0 ~# ]# l
; g2 {% o# t( s1 H* g, t r# Z1 o9 C
( _" O1 s/ \. ?# l' w; C另一种方法是使用 rectangle 函数:
8 ^" J* N: T S p* X1 S' ~% C# `6 L$ P8 N# W' Q* P
- 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])
& E4 u3 j( u9 t& U5 M
2 k1 t! \$ j# Q1 T
4 H% [3 H6 C% u6 U( q# |8 I4 H' C: a& _
如果你正在使用 MATLAB R2012a 或者之后版本的 Image Processing Toolbox,你可以用 viscircles 函数:
1 w; P9 k; O3 a2 b
8 [- N- e/ r% I: ?- viscircles(centers,radii)
2 s; I8 K; d. b8 W / M* v% h/ w: n: G4 w6 [
|
|