05-04-2024, 10:58 PM
Naterao sam ovo sokoćalo da napravi ispravan code, ovde se vidi osnova za crtanje kruga sa početnim i krajnjim uglom.
Dalje može da se napravi funkcija (alias) koja crta 4 ćoška (gornj-levi, gornji-desni, donji-levi i donji-desni) i da se ona spoji sa funkcijom za crtanje zaobljenog pravougaonika gde imaš "r" kao prečnik za crtanje što je istovremeno i "offset" sa kojim moraš da pomeriš početak/kraj linija i sto toliko se pomera centar odakle se icrtava sam "ćošak".
Dakle tu je bitna matematika sinus/cosinus koji treba da se izračuna ali se često to "pre-izračuna" i postavi u lookup-tablice zbog brzine izvršavanja i eventulano ono deljenje sa 1 / r se stavi isto u tablice jer ima neki konačan broj rezultata tako da se onda celo iscrtavanbje može bazira na prostim i brzim funkcijama bez upotrebe floating-point modula i instrukcija.
Dalje može da se napravi funkcija (alias) koja crta 4 ćoška (gornj-levi, gornji-desni, donji-levi i donji-desni) i da se ona spoji sa funkcijom za crtanje zaobljenog pravougaonika gde imaš "r" kao prečnik za crtanje što je istovremeno i "offset" sa kojim moraš da pomeriš početak/kraj linija i sto toliko se pomera centar odakle se icrtava sam "ćošak".
Dakle tu je bitna matematika sinus/cosinus koji treba da se izračuna ali se često to "pre-izračuna" i postavi u lookup-tablice zbog brzine izvršavanja i eventulano ono deljenje sa 1 / r se stavi isto u tablice jer ima neki konačan broj rezultata tako da se onda celo iscrtavanbje može bazira na prostim i brzim funkcijama bez upotrebe floating-point modula i instrukcija.