Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Esimerkki, jossa likupakĺkin liukupakĺkin arvo viedään Qwtplot:n arvoksi. Toimii qwt versiolla 6.0.1.

Code Block

TARGET = SimulaattoriQwt
TEMPLATE = app
INCLUDEPATH += /home/koneauto/QtSDK/qwt-6.0.1/src //Kirjoita tähän oikea polku
LIBS += -L/home/koneauto/QtSDK/qwt-6.0.1/lib -lqwt //Kirjoita tähän oikea polku
SOURCES += main.cpp\
        mainwindow.cpp
HEADERS  += mainwindow.h
FORMS    += mainwindow.ui
Code Block
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <qwt_legend.h>
#include <qwt_scale_draw.h>
#include <qwt_math.h>
#include <qwt_plot_item.h>
#include <qwt_plot_curve.h>
#include <qwt_text.h>
#include <QTimer>

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
    QwtPlot *EkaPlotti;
    QwtPlotCurve *EkaKurvi;
    QwtText Kurvi;
    QwtText Y_Akseli;
    QwtText X_Akseli;
    QTimer *timer;//osoitin ajastimeen
    int Arvo;
    int indeksi;
    int EdellinenY;
    double x[10000],y[10000];
private slots:
    void PiirraPlotiin(int Y);

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
Code Block

p, li { white-space: pre-wrap; }

#include "mainwindow.h"

#include "ui_mainwindow.h"



MainWindow::MainWindow(QWidget *parent) :

    : QMainWindow(parent),
    ui(new Ui::MainWindowClassMainWindow)

{

    ui->setupUi(this);

    timer = new QTimer(this);//luo uusi ajastin
    ui->Slider->setRange(0,100);
    //ui->Slider->setRange(0,100,1,1);

    connect(ui->Slider, SIGNAL(valueChanged(doubleint)),this, SLOT(PiirraPlotiin(doubleint)));

    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);

    timer->start(1000);//käynnistä ajastin, timeout sekunnin välein



    connect(timer, SIGNAL(timeout()), this, SLOT(update()));

    indeksi=0;

    EdellinenY=0;



}



MainWindow::~MainWindow()

{

    delete ui;

}





void MainWindow::PiirraPlotiin(doubleint Y)

{



    if((int)Y != EdellinenY)

    {



        x[indeksi]=(doubleint)indeksi;

        y[indeksi]=Y;

        EkaKurvi->setData>setSamples(x, y, indeksi);//laitetaan data käppyriin

        ui-> qwtPlot->replot(); //piirretään

        indeksi++;

        if(indeksi>9999)indeksi=0;

        EdellinenY=(int)Y;

    }

}





void MainWindow::update()

{





}