VladimirCDT VladimirCDT programer Beograd
Član broj: 220281 Poruke: 45 *.cisco.com.
|
Meni se cini da sam ukapirao kako mislis da ti se sinusoida pomera, ali nisam bas siguran. :)
No, to je manje vazno, ja bih da ti napomenem par drugih stvari.
Kao prvo, nisam siguran da ti je potrebno 100 fps, ako je osvezavanje ekrana sporije od toga. U principu, gornja granica bi ti bila frekvencija osvezavanja ekrana. Medjutim, cak ni to nije nuzno postici, mislim da bi ti npr. 50 fps bilo savrseno dovoljno.
Druga stvar se tice crtanja. Po mom iskustvu, crtanje pixel po pixel je daleko sporije od iscrtavanja celih linija (lukovi, figure itd...). Takodje, u slucaju visoke amplitude sinusoide, u okolini n*PI, razmak izmedju susednih piksela je relativno velik i tada izmedju takva dva piksela imas prazan prostor po visini, bez obzira sto su im x koordinate susedne. Prema tome, potrebno je da izmedju dve susedne tacke iscrtas liniju, ne samo da imas dva piksela.
Medjutim, ni to nije bas najbrzi nacin za iscrtavanje, stavise ume da bude primetno spor. Ja se ne bavim grafikom, tako da ti ne mogu dati neki validan savet po tom pitanju. Ipak, iskreno bih ti preporucio da potrazis na netu neku pricu o tehnikama iscrtavanja takvih funkcija u realnom vremenu. Stavise, mozda nadjes negde i neku malu biblioteku otvorenog koda koja radi takve stvari efektno, dok je tvoj posao da se bavis samo simulacijom, ondnosno izracunavanjima. Problem je, verujem prilicno cest, tako da bi moglo nesto da se iskopa.
Sto se tice struktura podataka, u principu STL zavrsava stvar u vecini slucajeva. Postoji i stack, s tim sto je njegova implementacija odradjena uz koriscenje druge strukture (list, deque...) a koju ti zadajes. STL moze da bude problem samo tamo gde si zaista u problemu sa performansama i bijes se za svaki takt. Odnosno, udobnost rada sa STL-om placas odredjenim gubitkom na performansi. Medjutim, cak i tada je jedino brze imati neke strukture sa staticki odredjenim kapacitetom, bez ulancanih lista tj. staticke nizove i tek tada bi imalo smisla pisati sopstvene strukture. Verujem medjutim da se ti neces naci u takvoj vrsti problema, stoga udri po STL-u. :)
Pozz
|