// valeurs R V B pour une luminosité de 50% et une saturation de 100%
function teinte_rvb_lum50_sat100(teinteDepart) {
	var teintes = Array;
	var octet=256/60;
	var Rouge;
	var Vert;
	var Bleu;
	var nom;

	var ti = (teinteDepart>359) ? teinteDepart%360 : teinteDepart;
	if(teinteDepart<0) {
		ti = teinteDepart+360 ;
		while(ti<0) ti+=360;
	}

	if(ti>=0 && ti<60) {
		tj=ti;
		Rouge=255;
		Vert=Math.floor(tj*octet);
		Bleu=0;
		if(ti==0) nom='rouge'; else nom="";
	}
	if(ti>=60 && ti<120) {
		tj=ti-60;
		Rouge=255-Math.floor(tj*octet);
		Vert=255;
		Bleu=0;
		if(ti==60) nom='jaune'; else nom="";
	}
	if(ti>=120 && ti<180) {
		tj=ti-120;
		Rouge=0;
		Vert=255;
		Bleu=Math.floor(tj*octet);
		if(ti==120) nom='vert'; else nom="";
	}
	if(ti>=180 && ti<240) {
		tj=ti-180;
		Rouge=0;
		Vert=255-Math.floor(tj*octet);
		Bleu=255;
		if(ti==180) nom='cyan'; else nom="";
	}
	if(ti>=240 && ti<300) {
		tj=ti-240;
		Rouge=Math.floor(tj*octet);
		Vert=0;
		Bleu=255;
		if(ti==240) nom='bleu'; else nom="";
	}
	if(ti>=300 && ti<360) {
		tj=ti-300;
		Rouge=255;
		Vert=0;
		Bleu=255-Math.floor(tj*octet);
		if(ti==300) nom='magenta';  else nom="";
	}
	Rouge=Math.round(Rouge,0);
	Vert=Math.round(Vert,0);
	Bleu=Math.round(Bleu,0);
	
	teintes['R']=Rouge;
	teintes['V']=Vert;
	teintes['B']=Bleu;
	
	return teintes;
}
/////////////////////////////////////////
//2:fonction pour saturation
function satur(ti,lum,saturation) {
	var tab=Array;
	
	var lumMax=Math.max(lum['R'],lum['V'],lum['B']);
	var lumMin=Math.min(lum['R'],lum['V'],lum['B']);
	
	var s0=lumMin+Math.ceil((lumMax-lumMin)/2);

		tab['R']=Math.round((((lum['R']-s0)/100*saturation)+s0),0);
		tab['V']=Math.round((((lum['V']-s0)/100*saturation)+s0),0);
		tab['B']=Math.round((((lum['B']-s0)/100*saturation)+s0),0);

	return tab;
}



//1 : calcul des luminosites
function creer_rvb(get_teinte, luminosite,saturation) {
	var couleur_rvb;
	var ti = (get_teinte>359) ? get_teinte%360 : get_teinte;
	var tj;
	var lum=Array;
	
	if(get_teinte<0) {
		ti = get_teinte+360 ;
		while(ti<0) ti+=360;
	}

	var teintes = teinte_rvb_lum50_sat100(ti);

	if(luminosite>=0 && luminosite<50) {
		tj=luminosite/5;
		lum['R']=Math.round(teintes['R']/10*tj,0);
		lum['V']=Math.round(teintes['V']/10*tj,0);
		lum['B']=Math.round(teintes['B']/10*tj,0);
	}

	if(luminosite>=50 && luminosite<=100) {
		tj=(luminosite-50)/5;
		if(ti>=0 && ti<60) {
			lum['R']=teintes['R'];
			lum['V']=Math.round((((255-teintes['V'])/10*tj)+teintes['V']),0);
			lum['B']=Math.round((255/10*tj),0);
		}
		if(ti>=60 && ti<120) {
			lum['R']=Math.round((teintes['R']+(255-teintes['R'])/10*tj),0);
			lum['V']=teintes['V'];
			lum['B']=Math.round((255/10*tj),0);
		}
		if(ti>=120 && ti<180) {
			lum['R']=Math.round((255/10*tj),0);
			lum['V']=teintes['V'];
			lum['B']=Math.round((((255-teintes['B'])/10*tj)+teintes['B']),0);
		}
		if(ti>=180 && ti<240) {
			lum['R']=Math.round((255/10*tj),0);
			lum['V']=Math.round((teintes['V']+(255-teintes['V'])/10*tj),0);
			lum['B']=teintes['B'];
		}
		if(ti>=240 && ti<300) {
			lum['R']=Math.round((((255-teintes['R'])/10*tj)+teintes['R']),0);
			lum['V']=Math.round((255/10*tj),0);
			lum['B']=teintes['B'];
		}
		if(ti>=300 && ti<360) {
			lum['R']=teintes['R'];
			lum['V']=Math.round((255/10*tj),0);
			lum['B']=Math.round((teintes['B']+(255-teintes['B'])/10*tj),0);
		}
	}
	couleur_rvb=satur(ti,lum, saturation);
	return couleur_rvb;
}




