Mercurial > octave-nkf
comparison scripts/plot/draw/patch.m @ 18802:75f8926deef1
Fix Z-order stacking of patches and axes grid lines (bug #40722).
* gl-render.h (set_polygon_offset): Change function prototype for offset
argument to float.
* gl-render.cc (set_polygon_offset): Change offset argument to type float.
Now matches OpenGL prototype for glPolygonOffset.
* gl-render.cc (patch_tesselator::patch_tesselator): Change constructor
variable idx to a float, from int.
* gl-render.cc (patch_tesselator::begin): Pass index directly to
set_polygon_offset.
* gl-render.cc (opengl_renderer::draw_patch): Call patch_tesselator with index
of 1.0 for filled portion of patch to push it down below outline of patch.
* patch.m: For 2-D patches, set zlim to [-1,1] so that axes 'layer' property
works.
author | Rik <rik@octave.org> |
---|---|
date | Sat, 17 May 2014 12:56:11 -0700 |
parents | d63878346099 |
children | 87c3848cf3c0 |
comparison
equal
deleted
inserted
replaced
18800:10082673a8f0 | 18802:75f8926deef1 |
---|---|
84 | 84 |
85 [htmp, failed] = __patch__ (hax, varargin{:}); | 85 [htmp, failed] = __patch__ (hax, varargin{:}); |
86 | 86 |
87 if (failed) | 87 if (failed) |
88 print_usage (); | 88 print_usage (); |
89 endif | |
90 | |
91 ## FIXME: This is a hack to get 'layer' command to work for 2D patches | |
92 ## Alternative is much more complicated surgery in graphics.cc. | |
93 ## of get_children_limits() for 'z' axis and 'patch' object type. | |
94 if (! ishold ()) | |
95 if (isempty (get (htmp, "zdata"))) | |
96 set (hax, "zlim", [-1 1]); | |
97 endif | |
89 endif | 98 endif |
90 | 99 |
91 if (nargout > 0) | 100 if (nargout > 0) |
92 h = htmp; | 101 h = htmp; |
93 endif | 102 endif |