C++ (Qt)void paintEvent( QPaintEvent * ){ QPainter p( this ); p.save(); // сохранили состояние рисовальщика // настроили вывод графика + нарисовали график p.rotate( 45 ); p.scale( 2, 2 ); p.drawEllipse( QRect( 100, 10, 200, 100 ) ); p.drawText( QPoint( 100, 10 ), tr( "Test str" ) ); p.restore(); // восстановили (или настроили заново) состояние рисовальщика // нарисовали подписи p.drawText( QPoint( 100, 10 ), tr( "Test str" ) );}
template <typename Functor>void recreate(Functor func){ m_pointsArray = func(); ... // доп. данные, минимум-максимум на промежутке [xMin; xMax] и др. repaint();}