
Рафа, специально для вас, как любителю С++.
void MainWindow:

aint(QPainter& painter)
{
int cnt = width();
int h = height();
QPoint* points = new QPoint[cnt];
painter.setPen(Qt::gray);
for(int k = 0; k < cnt/4; k+=5) {
qreal tan = qTan(2*M_PI*k/cnt);
qreal I0 = 1/qSqrt(1+tan*tan);
for(int i = 0; i < cnt; i++) {
int y = (int)(h*(1-qFastCos(2*M_PI*(i-k)/cnt)*I0)/2);
points[i]
[топ] QPoint(i,y);
}
painter.drawPolyline(points, cnt);
}
for(int i
0; i < cnt; i++) {
int y = (int)(h*(1-qFastSin(2*M_PI*i/cnt))/2);
points[i] = QPoint(i,y);
}
painter.setPen(Qt::red);
painter.drawPolyline(points, cnt);
delete points;
}