求教如何在圆外的区域内填充红色?(即矩形内除圆以外的剩余区域) 最好请给出代码~:lol 这是我画圆的代码: x=[-1 1 1 -1];y=[-1 -1 1 1]; patch(x,y,'w'); %画矩形 hold on %画基圆 t=linspace(-pi,pi); plot(R*sin(t)',R*cos(t)'); axis equal plot(0,0,'r+'); 解答: x=[-1 1 1 -1];y=[-1 -1 1 1]; patch(x,y,'w'); %画矩形 hold on %画基圆 t=linspace(-pi,pi); R=1; plot(R*sin(t)',R*cos(t)'); axis([-1 1 -1 1]) plot(0,0,'r+'); %填充左下角 t1=linspace(-pi,-pi/2,20); yt1=R*cos(t1); xx=[-1 0 R*sin(t1)]; yy=[-1 -1 yt1 ]; fill(xx,yy,'r') %填充右下角 t2=linspace(pi/2,pi,20); yt2=R*cos(t2); xx1=[0 1 R*sin(t2)]; yy1=[-1 -1 yt2]; fill(xx1,yy1,'r') %填充右上角 t3=linspace(0,pi/2,20); yt3=R*cos(t3); xx2=[0 R*sin(t3) 1]; yy2=[1 yt3 1]; fill(xx2,yy2,'r') %填充左上角 t4=linspace(-pi/2,0,20); yt4=R*cos(t4); xx3=[-1 R*sin(t4) 0]; yy3=[1 yt4 1]; fill(xx3,yy3,'r')
[ 本帖最后由 mooni 于 2009-3-31 19:06 编辑 ] |
|