1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
function rgb= color_gradient( pos, base_color_rgb, Ncolors )
%% returns rgb=[R,G,B] components from the brightness gradient of the base color
% base_color_rgb - [R,G,B] of the base color
% Ncolors - number of positions in gradient
%% color map as gradient of particular color
% starting values
hsv_s=rgb2hsv(base_color_rgb);
hue_f = hsv_s(1);
sat_f = hsv_s(2);
val_f = hsv_s(3);
% stop values
hue_s = hue_f;
sat_s = 0;
val_s = 1;
hue=linspace(hue_s,hue_f, Ncolors);
sat=linspace(sat_s,sat_f, Ncolors);
val=linspace(val_s,val_f, Ncolors);
cmap = hsv2rgb([hue', sat', val']);
%% check that pos is with in the reach
pos = floor(pos);
if( pos < 1 )
pos=1;
end
if( pos > Ncolors )
pos=Ncolors;
end
rgb = cmap(pos,:);
end
|