Pasar valor de funcion GetColor a valores rojo, azul y verde

438 views
Skip to first unread message

roberto zugazua

unread,
Aug 8, 2012, 5:17:15 PM8/8/12
to publice...@googlegroups.com

Buenas tardes tengo una inquietud respecto de como transformar el valor numérico de la función getcolor a la gama de colores (rojo,verde,azul) es decir obtener los tres valores numéricos.

 

Muchisimas gracias por vuestra atención.

Víctor Hugo Espínola Domínguez

unread,
Aug 8, 2012, 5:59:15 PM8/8/12
to publice...@googlegroups.com

http://www.portalfox.com/index.php?name=News&file=article&sid=26 

Saludos.
Víctor.

El 8 de agosto de 2012 17:17, roberto zugazua <rpzu...@gmail.com> escribió:

Buenas tardes tengo una inquietud respecto de como transformar el valor numérico de la función getcolor a la gama de colores (rojo,verde,azul) es decir obtener los tres valores numéricos.

 

Muchisimas gracias por vuestra atención.

--
 
 
 

Walter R. Ojeda Valiente

unread,
Aug 8, 2012, 6:22:23 PM8/8/12
to publice...@googlegroups.com
Los colores RGB se obtienen multiplicando:
ROJO X 1
VERDE X 256
AZUL X 65536

y sumando esos valores:

lnMiColor = lnRojo x 1 + lnVerde x 256 + lnAzul * 65536

Cuando utilizas la función RGB() ella hace exactamente eso: al primer parámetro lo multiplica por 1, al segundo parámetro lo multiplica por 256 y al tercer parámetro lo multiplica por 65536, devolviéndote la suma de esos tres números.

Por lo tanto, para obtener los valores originales debes hacer las operaciones inversas:

lnMiColor = RGB(100, 150, 200)
lnAzul    = INT(lnMiColor / 65536)
lnVerde   = INT((lnMiColor - lnAzul * 65536) / 256)
lnRojo    = lnMiColor - lnAzul * 65536 - lnVerde * 256

Saludos.

Walter.





Date: Wed, 8 Aug 2012 14:17:15 -0700
From: rpzu...@gmail.com
To: publice...@googlegroups.com
Subject: [vfp] Pasar valor de funcion GetColor a valores rojo, azul y verde


Buenas tardes tengo una inquietud respecto de como transformar el valor numérico de la función getcolor a la gama de colores (rojo,verde,azul) es decir obtener los tres valores numéricos.

 

Muchisimas gracias por vuestra atención.


--
 
 
 

Victor Espina

unread,
Aug 9, 2012, 1:42:26 PM8/9/12
to publice...@googlegroups.com
Llego tarde, pero igual aca va otra opcion:


Saludos

Victor Espina
Reply all
Reply to author
Forward
0 new messages