Post Reply 
translucent grob
05-13-2016, 10:16 PM (This post was last modified: 06-14-2016 04:38 AM by Carlos295pz.)
Post: #6
RE: translucent grob
Los colores en la calculadora son opacos o transparentes, es posible crear GROB's con fondo transparente sin hacer uso de la inserción con omisión de color del comando BLIT, pero esto no se puede definir desde un programa con RECT(Realiza cambio o mezcla si se indicó alfa), sí es posible pero generalmente es el resultado de pasar una imagen PNG a una variable gráfica como:
PHP Code:
G1:=AFiles("icon.png"); 

Se debe tener en cuenta que el canal alpha para interpretado en la calculadora es en base a un color de 16bits, A1R5G5B5, por esta razón el alpha o es visible o no visible, por lo general si un pixel del GROB no es visible, RGB tienen su equivalencia en negro, por lo que un color negro con un alpha no visible equivale a #8000h o #1 00000 00000 00000b (junto).

Para conseguir crear un GROB con píxeles con el canal alpha activado se puede hacer uso del DIMGROB, usar una definición general como DIMGROB_P(G?,X,Y,RGB(0,0,0,>127)) o DIMGROB_P(G?,X,Y,#FF000000h) [No posible en 10077], también asumiendo el color de cada pixel cada 16bits de datos. Por ejemplo:
Code:
//G1:2x2 (Todos sus píxeles negros pero no visibles)
DIMGROB_P(G1,2,2,{#80008000h,#80008000h});

//G2:4x4 (Igual que G1 pero definido con datos de 64bits);
DIMGROB_P(G2,4,4,{#8000800080008000:64h,#8000800080008000:64h,#8000800080008000:​64h,#8000800080008000:64h});

Es decir que aún si tenemos un GROB que posee pixeles no visibles, estos tienen colores, por lo que se recomienda reemplazarlos, puesto que si se combina un color difuminado como en este ejemplo:
Code:
DIMGROB_P(G1,2,2,{#80008000h,#80008000h});
RECT_P(G1,RGB(255,0,0,150));
El resultado será la activación de la visibilidad de los píxeles comprendidos y la combinación del rojo translúcido con un color negro (O el color no visible que tenga el pixel), color + negro=negro.

Quote:Más ejemplos:
Azul(Translúcido)+Amarillo = Verde
Amarillo(Translúcido)+Blanco = Amarillo claro
Rojo(Translúcido)+Negro = Negro (Toda mezcla con negro es negro por obvias razones)

Viga C | TD | FB
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
translucent grob - fabila - 05-12-2016, 07:00 PM
RE: translucent grob - Carlos295pz - 05-13-2016, 03:24 PM
RE: translucent grob - fabila - 05-13-2016, 05:32 PM
RE: translucent grob - fabila - 05-13-2016, 06:31 PM
RE: translucent grob - Carlos295pz - 05-13-2016 10:16 PM



User(s) browsing this thread: 1 Guest(s)