Merge pull request #1977 from daschw/colorbar-alpha

fix alpha for colorbar in GR (fix #1976)
This commit is contained in:
Daniel Schwabeneder 2019-04-02 21:55:49 +02:00 committed by GitHub
commit 926ccdf618
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -79,7 +79,7 @@ gr_set_fillcolor(c) = GR.setfillcolorind(gr_getcolorind(_cycle(c,1)))
gr_set_markercolor(c) = GR.setmarkercolorind(gr_getcolorind(_cycle(c,1))) gr_set_markercolor(c) = GR.setmarkercolorind(gr_getcolorind(_cycle(c,1)))
gr_set_textcolor(c) = GR.settextcolorind(gr_getcolorind(_cycle(c,1))) gr_set_textcolor(c) = GR.settextcolorind(gr_getcolorind(_cycle(c,1)))
gr_set_transparency(α::Real) = GR.settransparency(clamp(α, 0, 1)) gr_set_transparency(α::Real) = GR.settransparency(clamp(α, 0, 1))
function gr_set_transparency(::Nothing) end gr_set_transparency(::Nothing) = GR.settransparency(1)
# -------------------------------------------------------------------------------------- # --------------------------------------------------------------------------------------
@ -471,6 +471,7 @@ function gr_draw_colorbar(cbar::GRColorbar, sp::Subplot, clims)
GR.setwindow(xmin, xmax, zmin, zmax) GR.setwindow(xmin, xmax, zmin, zmax)
if (series = cbar.gradient[]) !== nothing if (series = cbar.gradient[]) !== nothing
gr_set_gradient(series) gr_set_gradient(series)
gr_set_transparency(get_fillalpha(series))
GR.cellarray(xmin, xmax, zmax, zmin, 1, 256, 1000:1255) GR.cellarray(xmin, xmax, zmax, zmin, 1, 256, 1000:1255)
end end
@ -488,6 +489,7 @@ function gr_draw_colorbar(cbar::GRColorbar, sp::Subplot, clims)
colors = gr_colorbar_colors(series, clims) colors = gr_colorbar_colors(series, clims)
for (from, to, color) in zip(levels[1:end-1], levels[2:end], colors) for (from, to, color) in zip(levels[1:end-1], levels[2:end], colors)
GR.setfillcolorind(color) GR.setfillcolorind(color)
gr_set_transparency(get_fillalpha(series))
GR.fillrect( xmin, xmax, from, to ) GR.fillrect( xmin, xmax, from, to )
end end
end end
@ -495,6 +497,7 @@ function gr_draw_colorbar(cbar::GRColorbar, sp::Subplot, clims)
if (series = cbar.lines[]) !== nothing if (series = cbar.lines[]) !== nothing
gr_set_gradient(series) gr_set_gradient(series)
gr_set_line(get_linewidth(series), get_linestyle(series), get_linecolor(series, clims)) gr_set_line(get_linewidth(series), get_linestyle(series), get_linecolor(series, clims))
gr_set_transparency(get_linealpha(series))
levels = contour_levels(series, clims) levels = contour_levels(series, clims)
colors = gr_colorbar_colors(series, clims) colors = gr_colorbar_colors(series, clims)
for (line, color) in zip(levels, colors) for (line, color) in zip(levels, colors)