void view_iko::drawBackground(QPainter *painter, const QRectF &rect){ painter->fillRect(q,Qt::transparent); int h,s,l,a; base_color.getHsl(&h,&s,&l,&a); QColor color = base_color; for(int i=0; i<5000; i++){ for (int j=0; j< 1000; j++) { a = mw->var->matrixAmpl2[i][j] * 255 / 2000 ; color.setAlpha(a); painter->setPen(QPen(color,1)); x=(scl)*sin(i*0.003067962); y=(scl)*cos(i*0.003067962); painter->drawPoint(cP.x()+x,cP.y()-y); } } } QGraphicsView::drawBackground(painter, rect);}
void draw::run(){ exec(); // поток в ожидании}
void draw::draw_signal(){ draw1(); // рисую в pixmap1 значения из матрицы mw->var->lock_drawing_2->lock(); *mw->var->p2 = *mw->var->p1; // копирую в pixmap2 mw->var->lock_drawing_2->unlock();}
void view_iko::drawBackground(QPainter *painter, const QRectF &rect)//drawBackground(QPainter *painter, const QRectF &rect){ drawGrid(); // рисую сетку и прочие мелочи mw->var->lock_drawing_2->lock(); painter->drawPixmap(q,*mw->var->p2); // вывожу буфер на экран mw->var->lock_drawing_2->unlock(); QGraphicsView::drawBackground(painter, rect);}