Results 1 to 2 of 2

Thread: qwt5.2 to qt6.0 : waterfall

  1. #1
    Join Date
    Mar 2008
    Posts
    44
    Thanks
    2
    Platforms
    Unix/X11 Windows

    Default qwt5.2 to qt6.0 : waterfall

    Hello

    I has this waterfall running with qwt5.2.
    Basically the code (per new line) was (within a derived class from qwtspectrogram):

    WaterfallData = new SpectrogramData (plotData,
    orig,
    width,
    Rastersize,
    Displaysize,
    amp);
    this -> detach ();
    this -> setData (WaterfallData);
    this -> setDisplayMode (QwtPlotSpectrogram::ImageMode,
    TRUE);
    plotgrid -> setAxisScale (QwtPlot::xBottom,
    orig,
    orig + width);
    plotgrid -> enableAxis (QwtPlot::xBottom);
    Marker -> setXValue (marker);
    this -> attach (plotgrid);
    plotgrid -> replot();

    with Spectrogramdata being derived from QwtRasterData.
    Plotdata is a vector (array is you wish) containing the data to be printed.

    Although exactly the same code worked nicely with qwt5.2, it does not work with qwt6.0. !!!!
    No functions are called within the spectrogramdata (just added some print statements for verfication) such as initRaster, interval and value, while
    - with the same parametervalues - when using 5.2 bith the Interval and the value functions from the (derived) Qwtrasterdata
    is called many, many times.

    So, my understanding of either QwtRasterdata, qwtspectrogram or qwtplot (the plotgrid used here) is failing and some semantic
    changes occur between 5.2 and 6.0 within either qwtspectrogram or qwtplot. Note that I verified that the replot for the plotgrid (i.e. a QwtPlot)
    is called regularly.
    Any help would be greatly appreciated

    best
    jan

    '
    Last edited by janK; 11th July 2013 at 19:44. Reason: typo

  2. #2
    Join Date
    Feb 2006
    Location
    Munich, Germany
    Posts
    3,312
    Thanked 879 Times in 827 Posts
    Qt products
    Qt3 Qt4 Qt/Embedded
    Platforms
    MacOS X Unix/X11 Windows

    Default Re: qwt5.2 to qt6.0 : waterfall

    With Qwt 6.0 the integer based render engine was replaced by floating point based code, what is the main reason for incompatibilities. I recommend to check all your classes that are overloading methods of Qwt classes if there is a mismatch between int/double, QPoint/QPointF or QRect/QRectF parameters.

    Note that QwtRasterData::rasterHint() has been replaced by pixelHint(), with a different semantic. Without implementing pixelHint() the spectrogram doesn't know about the resolution of your data and will call the value() method according to the screen resolution. Also have a look at QwtMatrixRasterData, that had been introduced with Qwt 6.0: it implements a raster data interface for a vector of values ( the rasterview example shows how to use it ).

    When migrating to Qwt 6 better start with Qwt 6.1. Only Qwt 6.1 works with Qt5 ( with Qt >= 4.4 ) an of course: http://qwt.sourceforge.net/qwtchangelog.html

    Uwe

Similar Threads

  1. Replies: 23
    Last Post: 9th January 2013, 07:27
  2. Replies: 3
    Last Post: 26th November 2012, 07:51
  3. updating waterfall QwtSpectrogram
    By tnorthardt in forum Newbie
    Replies: 2
    Last Post: 2nd November 2012, 14:59
  4. x-axis for waterfall plot
    By janK in forum Qwt
    Replies: 8
    Last Post: 29th July 2009, 15:00
  5. waterfall display
    By jmsbc in forum Qt Programming
    Replies: 7
    Last Post: 15th November 2008, 08:29

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.