Why does appear in a 3D mesh plot lines that should not be there?

1 view (last 30 days)
Following the first example in the mesh documentation:
figure;
[X,Y] = meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
mesh(Z);
It should appear this:
But when I run the code, it appears other lines that are not in the example. I do not know why this is happening.
The funny thing is that if I copy the figure using Edit/Copy Figure it copies the image without those lines. Pretty strange.

Accepted Answer

Titus Edelhofer
Titus Edelhofer on 27 Feb 2015
Hi,
might be a problem with your OpenGl driver ... You could try either
set(gcf, 'Renderer', 'zbuffer')
or to switch from hardware opengl to software opengl:
opengl software
Let us know the outcome of either of those ...
Titus
  2 Comments
Dani Tormo
Dani Tormo on 27 Feb 2015
The first option worked!
I will try the next one if the problem persists.
Thanks!
Mike Garrity
Mike Garrity on 27 Feb 2015
I think that was a bug in how a particular family of graphics card drivers handled OpenGL index buffers. I think that it was nVidia, but I'm not sure I'm remembering correctly.
As for it not showing up when you copy the figure, my guess would be that you have 'Preserve information' set in your Copy Options. That uses painters instead of opengl.
Anyways, the opengl renderer in MATLAB R2014b contains a workaround for this issue. I'd be interested to know whether you still encounter it after upgrading.

Sign in to comment.

More Answers (0)

Categories

Find more on Graphics Performance in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!