patch object exceed axes when zoomed

2 views (last 30 days)
Pengfei
Pengfei on 2 Dec 2012
Commented: Silvia on 24 Feb 2014
Hi, I found the same question on this forum, but no answer for that. So I'm reposting this, hopefully somebody can help!
I've a GUI containing two panels, one to the left and the other right. The right panel contains an axes, which in turn contains a 3d patch object. When zoomed in, the patch object would exceed the panel borders, and appears in the background on the left panel. How to contain the patch object strictly inside the panel so that it doesn't mess up with other components?
I tried change figure renderer, doesn't help.
Thank you!

Answers (2)

Walter Roberson
Walter Roberson on 3 Dec 2012
Set the Clipping property of the uipanel to 'on'. See http://www.mathworks.com/help/matlab/ref/uipanelproperties.html#bqxrv_e_1
  1 Comment
Pengfei
Pengfei on 3 Dec 2012
Sorry this doesn't help. I'm a little confused now, as for panel, there's a Clipping property; for the axes, also a clipping property, saying: "Clipping mode. This property has no effect on axes". Looks like when zoomed, the object can exceed the uipanel borders, but cannot overshadow other uicontrol components.

Sign in to comment.


Jan
Jan on 3 Dec 2012
Edited: Jan on 3 Dec 2012
Try to set the Clipping property of the patch object, not of the axes. Then the patch should not be displayed outside the axes and in consequence not outside the panel also (when the axes do not exceed the panel also).
If this does not help, you could try to switch the renderer from OpenGL to ZBuffer.
  1 Comment
Silvia
Silvia on 24 Feb 2014
Hi Jan,
Do you know if there is a way to solve it with renderer OpenGL? the problem is that the problem is solved with Zbuffer but if Zbuffer is used the patches with transparency are lost. thank you very much
Silvia

Sign in to comment.

Categories

Find more on Labels and Annotations in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!