Mercurial > hg > simscene-py
diff nonExposed/randomColormap.m @ 34:39399de892ef
better handling of displays with pleasantness colors
author | Mathieu Lagrange <mathieu.lagrange@cnrs.fr> |
---|---|
date | Fri, 09 Jun 2017 16:37:50 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nonExposed/randomColormap.m Fri Jun 09 16:37:50 2017 +0200 @@ -0,0 +1,41 @@ +function cmap = randomColormap (sceneObjects) +% returns a colormap with randomly chosen colors somewhat evenly spread in +% the color spectrum, to be used for the graphical representations of a +% synthesized scene. + +% Background sounds will have a saturation of .3, foreground sounds of 1 +% Value is always let to .5, since modifying it would erroneously suggest +% a difference of intensity + +% This program was written by Mathias Rossignol & Grégoire Lafay +% is Copyright (C) 2015 IRCAM <http://www.ircam.fr> +% +% This program is free software: you can redistribute it and/or modify it +% under the terms of the GNU General Public License as published by the Free +% Software Foundation, either version 3 of the License, or (at your option) +% any later version. +% +% This program is distributed in the hope that it will be useful, but +% WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +% or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +% for more details. +% +% You should have received a copy of the GNU General Public License along +% with this program. If not, see <http://www.gnu.org/licenses/>. + +nbTracks = length(sceneObjects); + +% Colors for figures +% Choosing color hues evenly spread in the color spectrum, then randomizing their order +hues = (0:1/nbTracks:1); +hues = hues(1:nbTracks); +hues = hues(randperm(nbTracks)); +% Generate a colormap: +for c=1:nbTracks + if (sceneObjects(c).isBackground) + cmap(c,:) = hsl2rgb([hues(c), .3, .5]); + else + cmap(c,:) = hsl2rgb([hues(c), 1, .5]); + end +end +end \ No newline at end of file