Az elso sor y erteket viszi 0 tol 400-1 ig, a masik x-et 0 tol 500-1-ig.
for(int y=0;y<400;y++)
for(int x=0;x<500;x++)
Magyarul soronkent vegig meg a kepernyo minden pontjan. Minden y erteknel x vegigfut 0 tol 500-1-ig. Ezeket is leirom, hogy mindent tisztazzunk. Mert a reszletekben van a lenyeg.
A definiciok mellekesek, jon a legfontosabb resz.
dx=x-100;
dy=y-100;
100,100 koordinatan vagy a hullamforras. Ebbol huzok egy vektort, egy 'vonalat' minden kepernyopontba. Ez a vonal a dx,dy. Az origot eltorlam a 100,100 pontba.
A kovetkezo a tavolsag meghatarozasa, semmi extra, szerencsere a ter sem gorbul.
t=sqrt(dx*dx + dy*dy) *M_PI/10;
A vegen az m_pi/10 a hullamhossz adja meg. A szogfuggvenyek parameteret, mint jelen esetben a sin()-et, radianban kell megadni. Szog eseten M_PI/180-as szorzoval valthatunk at, de jelen esetben egy tavolsagbol akarok fazist eloallitani.
Mivel egy kor az radianban megadva M_PI*2, ezert a szorzas 20-as tavolsagertekre ad egy kornyi faziselterest. Hagyarul a hullam hullamhossza 20.
amp=sin(t);
Ez pedig az amplitodo, ami +-1 kozott fog valtozni fazistol fuggoen. Ez latjuk a kepen, mint a zold arnyalatait.
Eddig egyszeru, mont hozzaadok tobb azonos fazisu hullamot.