Dernièrement je suis allé sur un site Gonta à la
Dernièrement je suis allé sur un site Gonta à la page : http://hotog.hp.infoseek.co.jp/sc_col1.htm et comme je suis très fort en Japonais, je vais vous traduire ce qui y est écrit.
C'est une présentation de base des fonctions de Gonta.
Par exemple:
Origine | Transformation |
coord=0; | R=0; B=0; |
Transformation |
R=G; B=G; |
Transformation |
R=255-R; G=255-G; B=255-B; |
Transformation |
G=G*1.2; |
C=(G+B)/2;
M=(R+B)/2;
Y=(R+G)/2;
Là, j'avoue que je peine un peu, mais c'est certainement une histoire de Sépia, etc.
Y=0.299R+0.587G+0.114B;
I=0.596R-0.274G-0.322B;
Q=0.212R-0.523G+0.311B;
Y=0.299R+0.587G+0.114B;
U=-0.147R-0.289G+0.437B;
V=0.615R-0.515G-0.100B;
Transformation |
Y=0.299*R+0.587*G+0.144*B; R=Y; G=Y; B=Y; |
Transformation |
Y=0.299*R+0.587*G+0.144*B; R=Y*1.2; G=Y; B=Y; |
Transformation |
Y=0.299*R+0.587*G+0.144*B; R=Y*1.2; G=Y*1.1; B=Y*0.9; |
Transformation |
R=(R+255)/2; G=(G+255)/2; B=(B+255)/2; |
Transformation |
R=(R*90+255*10)/100; G=(G*90+255*10)/100; B=(B*90+255*10)/100; |
Origine | Transformation |
coord=0; cx=cy=0; | R=(R*x+255*(100-x))/100; G=(G*x+255*(100-x))/100; B=(B*x+255*(100-x))/100; |
Transformation |
R=( 0*x+255*(xs-x))/xs; G=( 0*x+ 0*(xs-x))/xs; B=(255*x+ 0*(xs-x))/xs; |
Transformation |
R=(0 *x+255*(xs-x))/xs; G=0; B=(255*x+ 0*(xs-x))/xs; |
Transformation |
a=x/xs; R= 0*a+255*(1-a); G= 0; B=255*a+ 0*(1-a); |
Origine | Transformation |
coord=0; ?r1,Left R,0,255,255; ?g1,Left G,0,255,0; ?b1,Left B,0,255,0; ?r2,Right R,0,255,0; ?g2,Right G,0,255,0; ?b2,Right B,0,255,255; cx=cy=0; | a=x/xs; R=r2*a+r1*(1-a); G=g2*a+g1*(1-a); B=b2*a+b1*(1-a); |
Transformation |
a=y/ys; R=r2*a+r1*(1-a); G=g2*a+g1*(1-a); B=b2*a+b1*(1-a); |
Origine | Transformation |
coord=0; | if(x==0 || y==0){ R=G=B=255; } |
Origine | Transformation |
coord=0; cx=cy=0; | if(x==0 || y==0){ R=255; G=B=0; } |
Cette fois-ci, l'origne est dans le coin et affiché en rouge.
Origine | Transformation |
coord=0; ?ax,X axis,-100,100,0; ?ay,Y axis,-100,100,0; cx=int((ax+100)/200*xs); cy=int((ay+100)/200*ys); | if(x==0 || y==0){ R=G=B=255; } |
On peut, d'une façon ou d'une autre, déplacer l'origine.
Il semble qu'il y ait quelque interêt à repousser les limites...
Origine |
coord=0; ?ax,X axis,-100,100,0; ?ay,Y axis,-100,100,0; cx=int(cx+cx*ax/100); cy=int(cy+cy*ay/100); |
Origine |
coord=0; ?ax,X axis,-500,500,0; ?ay,Y axis,-500,500,0; cx=int(cx+cx*ax/100); cy=int(cy+cy*ay/100); |
Là, on est en coord=1; C'est donc une histoire de cercle...
Origine | Transformation |
coord=1; ?val,Value,-300,300,50; ?sc,Scale,50,200,120; ?sx,Center Xpos(%),-200,200,0; ?sy,Center Ypos(%),-200,200,0; rs=sqrt(cx*cx+cy*cy); cx=cx+cx*sx/100; cy=cy+cy*sy/100; val=val/10; sc=sc/100; | a=(rs-r)/rs; t=t+val*a*a; r=r/sc; |