Wählt möglichst weit aus einander liegende Farben aus der Auswahl aller Farben, wobei die Enden (Schwarz und Weiß) ausgelassen werden. Da bei wenigen Farben nur Grautöne heraus kommen, werden bei weniger als 8 Farben die Abstände zwischen den Farben geringer als möglich gewählt.
function ColorGeneratorService(){
this.generateColorList = function(neededColorCount){
var minColorsfactor = 1;
if(neededColorCount < 8){
minColorsfactor = 3;
}
var result = [];
var end = parseInt(0xFFFFFF);
var step = Math.round(end / ((neededColorCount * minColorsfactor) + 1));
for(var i = 1; i <= neededColorCount; i++){
result[result.length] = "#"+(step * (i * minColorsfactor)).toString(16);
}
return result;
};
}