#include #include #include #include #include #include #include #include //------------------------------------------------------------ // curvdemo1 // // This example program features some of the different // display styles of the QwtPlotCurve class //------------------------------------------------------------ // // Array Sizes // const int Size = 27; const int CurvCnt = 6; // // Arrays holding the values // double xval[Size]; double yval[Size]; QwtScaleMap xMap; QwtScaleMap yMap; class MainWin : public QFrame { public: MainWin(); protected: virtual void paintEvent(QPaintEvent *); void drawContents(QPainter *p); private: void shiftDown(QRect &rect, int offset) const; QwtPlotCurve d_curves[CurvCnt]; }; MainWin::MainWin() { int i; xMap.setScaleInterval(-0.5, 10.5); yMap.setScaleInterval(-1.1, 1.1); // // Frame style // setFrameStyle(QFrame::Box|QFrame::Raised); setLineWidth(2); setMidLineWidth(3); // // Calculate values // for(i=0; isetRenderHint(QPainter::Antialiasing, d_curves[i].testRenderHint(QwtPlotItem::RenderAntialiased) ); d_curves[i].draw(painter, xMap, yMap, r); shiftDown(r, deltay); } // // draw titles // r = contentsRect(); // reset r painter->setFont(QFont("Helvetica", 8)); const int alignment = Qt::AlignTop|Qt::AlignHCenter; painter->setPen(Qt::black); painter->drawText(0,r.top(),r.width(), painter->fontMetrics().height(), alignment, "Style: Line/Fitted, Symbol: Cross"); shiftDown(r, deltay); painter->drawText(0,r.top(),r.width(), painter->fontMetrics().height(), alignment, "Style: Sticks, Symbol: Ellipse"); shiftDown(r, deltay); painter->drawText(0 ,r.top(),r.width(), painter->fontMetrics().height(), alignment, "Style: Lines, Symbol: None"); shiftDown(r, deltay); painter->drawText(0 ,r.top(),r.width(), painter->fontMetrics().height(), alignment, "Style: Lines, Symbol: None, Antialiased"); shiftDown(r, deltay); painter->drawText(0, r.top(),r.width(), painter->fontMetrics().height(), alignment, "Style: Steps, Symbol: None"); shiftDown(r, deltay); painter->drawText(0,r.top(),r.width(), painter->fontMetrics().height(), alignment, "Style: NoCurve, Symbol: XCross"); } int main (int argc, char **argv) { QApplication a(argc, argv); MainWin w; w.resize(300,600); w.show(); return a.exec(); }