Aby nakreślić sobie wykres róży biegunowej, korzystam z poniższego wykresu do obliczeń współrzędnych punktów wykresu:
X := OriginX + A * Cos(K * Theta) * Cos(Theta);
Y := OriginY + A * Cos(K * Theta) * Sin(Theta);
Teraz w pętli generuję sobie punkty i je renderuję — Theta od 0 do 2 * Pi (pełne koło, w radianach) i wszystko gra. Problem jednak w tym, że wykres jest poprawy tylko jeśli K jest liczbą naturalną. W przypadku ułamków, np. dla K = 1 / 3 wykres powinien wyglądać tak:

a mój jest niedorobiony — brakuje sporej części:

Żeby wyrenderował się poprawnie, muszę obliczać punkty dla Theta w zakresie od 0 do 4 * Pi.
Ma ktoś pojęcie jak powinien wyglądać wzór obliczający górną granicę Theta, tak aby móc wyliczać wszystkie punkty wykresu, bez względu na to czy k jest całkowite czy rzeczywiste?