Path: news.mathworks.com!not-for-mail
From: <HIDDEN>
Newsgroups: comp.soft-sys.matlab
Subject: patch over lines
Date: Fri, 25 Sep 2009 20:08:03 +0000 (UTC)
Organization: The MathWorks, Inc.
Lines: 14
Message-ID: <h9j7v3$659$1@fred.mathworks.com>
Reply-To: <HIDDEN>
NNTP-Posting-Host: webapp-05-blr.mathworks.com
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Trace: fred.mathworks.com 1253909283 6313 172.30.248.35 (25 Sep 2009 20:08:03 GMT)
X-Complaints-To: news@mathworks.com
NNTP-Posting-Date: Fri, 25 Sep 2009 20:08:03 +0000 (UTC)
X-Newsreader: MATLAB Central Newsreader 2006150
Xref: news.mathworks.com comp.soft-sys.matlab:572989


I have some streamlines and quiver arrows I want to patch over the top of to block out values that are inside my structure. However neither patch nor fill actually get displayed over the top of the lines, even when I specifically tell uistack to place it on top. Is there a simple way to patch over the top of the lines, without resorting to regriding to avoid the structure (which in my case is complex)?

For a simple example:
w=load('wind');
i=10;
u=w.u(:,:,i); v=w.v(:,:,i); x=w.x(:,:,i); y=w.y(:,:,i); 
pcolor(x,y,sqrt(u.^2+v.^2));shading('interp');colorbar
hold on;
quiver(x,y,u,v,'w-') % I now have a nice quiver plot
theta=0:pi/8:2*pi;
x2=100+10*sin(theta); y2=40+10*cos(theta); % a circle
h=patch(x2,y2,'k'); 

If you run this you can still see the quiver arrows which I want to hide behind the circle. I've tried stuff like  'uistack(h,'top')' but I can't seem to cover up the arrows. I also have streamlines and other data and a more complex shape so I don't want to regrid. Any idea how to cover the arrows graphically?