webForumDet fria alternativet

Leker med färgerna

Flash

5 svar · 229 visningar · startad av Mr. N.

Medlem sedan sep. 20025 506 inlägg
Frågan#1

Här är en liten grej som jag har pysslat med. Man kan alltså välja vilket lager man vill visa genom att antingen ställa in genomskinligheten eller genom att använda de gröna/röda knapparna. Sen ska man få ställa in färgen på konturerna också, här kommer problemet. Som jag har det nu måste man skriva in färgkoderna som Hex-värden, finns det någon funktion som kan konvertera decimala tal till hexadecimala?
För då kan man ju ha tre rutor, en för varje färg, sen får man ange 0-255 vilken blandning man vill ha och sen konverterar skriptet värdena till hexadecimala tal och sen kan det slå ihop värdena för att bilda en ordentlig hexkod.

Medlem sedan feb. 2003108 inlägg
#2

Tjena!

Kul sak dedär. tog ett tag innan jag fattade att det även va en bil i bakgrunden... hehe lite trött idag.

Men angående det andra så knåpade jag ihop en omvandlare i AS.
http://213.100.95.34/~martin/DECtoHEX.html

http://213.100.95.34/~martin/DECtoHEX.fla

/Martin

Medlem sedan feb. 2003108 inlägg
#3

Jag gjorde bara en vanlig omräkning. (såg att du gick offline och jag har inte alltid servern uppe så jag slänger in omräkningskoden här)

x=decimal;
hel=Math.floor(decimal/16);
rest=((decimal/16)-hel)*16;

if (hel==10)
hel="a";
if (hel==11)
hel="b";
if (hel==12)
hel="c";
if (hel==13)
hel="d";
if (hel==14)
hel="e";
if (hel==15)
hel="f";

if (rest==10)
rest="a";
if (rest==11)
rest="b";
if (rest==12)
rest="c";
if (rest==13)
rest="d";
if (rest==14)
rest="e";
if (rest==15)
rest="f";

hexamal= hel + "" + rest;

Medlem sedan sep. 20025 506 inlägg
#4

Ja, jag har använt din funktion nu, tack för att du tog dig tid att skriva en omvandlare. :)
Det finns alltså ingen färdig funktion som skriver om till Hex?

Nu ligger den nya versionen uppe på länken ovan.

Medlem sedan juli 20031 505 inlägg
#5
trace (parseInt("ff", 16));//Returnerar 255
trace((255).toString(16));//Returnerar ff

Kanske nått du kan använda dig av :)

Medlem sedan maj 2003750 inlägg
#6

Om du har tre separata värden mellan 0 och 255 för röd grön och blå så kan du på ett enkelt sätt använda opertorerna "vänster shift" och "bitvis eller" för att själv få en nätt liten funktion.

Här är en snabbt ihopplockad funktion:

function colorConverter(red, green, blue)
{
    return red << 16 | green << 8 | blue;
}

/Mirandir

263 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)