[Tech] Dubbio di programmazione

Christopher R. Gabriel cgabriel@softwarelibero.org
Sab 4 Nov 2000 22:11:43 CET


Non essendo un programmatore "arcore" come giannibi o altri, ho questo
dubbio.

Ho 4 quattro valori a 8 bit che descrivono un colore, e devo
trasformarli in un uint a 32 in esadecimale, tipo:

red   255
green 255
blue  255
alpha 255

e mi viene fuori un '0xffffffff'

attualmente uso questa macro:

#define GIVE_ME_THE_COLOR_WITH_ALPHA_YOU_BASTARD	(r, g, b, a) ((((int) (r) & 0xff) << 24)    \
							| (((int) (g) & 0xff) << 16)  \
							| (((int) (b) & 0xff) << 8)   \
							| ((int) (a) & 0xff))

la quale pero' non sembra fare il suo lavoro (colori sbagliati, e di brutto).

Il cast a int lo faccio poiche' i valori che passo alla macro sono per
forza di cose degli uint.

Avete qualche idea?


-- 
Christopher R. Gabriel 

http://www.linux.it/~cgabriel/

	




Maggiori informazioni sulla lista flug-tech