Esimerkki, jossa likupakĺkin liukupakĺkin arvo viedään Qwtplot:n arvoksi
Code Block |
---|
#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindowClass) { ui->setupUi(this); timer = new QTimer(this);//luo uusi ajastin ui->Slider->setRange(0,100,1,1); connect(ui->Slider, SIGNAL(valueChanged(double)),this, SLOT(PiirraPlotiin(double))); Kurvi.setText("Eka kuva"); Y_Akseli.setText("Y-akseli"); X_Akseli.setText("X-akseli"); EkaKurvi = new QwtPlotCurve();//new luo kekoon (heap) uuden muuttujan tilavarauksen EkaKurvi->setPen(QPen(Qt::red)); EkaKurvi->attach(ui->qwtPlot); ui->qwtPlot->setAxisTitle(0,Y_Akseli); ui->qwtPlot->setAxisTitle(2,X_Akseli); indeksi=0; EdellinenY=0; } MainWindow::~MainWindow() { delete ui; } void MainWindow::PiirraPlotiin(double Y) { if((int)Y != EdellinenY) { x[indeksi]=(double)indeksi; y[indeksi]=Y; EkaKurvi->setData(x, y, indeksi);//laitetaan data käppyriin ui-> qwtPlot->replot(); //piirretään indeksi++; if(indeksi>9999)indeksi=0; EdellinenY=(int)Y; } } |