Hello,

Let's say i have curve with coordinates (x, y)(1, 1) (2, 1) (3, 1) and a marker. I want to get more x points for my marker to snap on when i move it with mouse. In other words i want my marker to snap to 1.1 , 1.2 , 1.3 x coordinates( now it only snaps to 1, 2 ,3).

Code snippet of how i move my marker:
Qt Code:
  1. marker->setLineStyle(QwtPlotMarker::VLine);
  2. marker->attach(tracePlot);
  3.  
  4. picker = new QwtPlotPicker(tracePlot->xBottom, tracePlot->yLeft, QwtPicker::NoRubberBand,
  5. QwtPicker::AlwaysOff, tracePlot->canvas());
  6. pickerMachine = new QwtPickerDragPointMachine();
  7. picker->setStateMachine(pickerMachine);
  8.  
  9. connect(picker, &QwtPicker::moved, this, &Widget::moveMarker);
  10.  
  11. void Widget::moveMarker(QPoint actualMousePosition)
  12. {
  13. if(!flagZoom)
  14. {
  15. QwtText label;
  16. QString temp;
  17. int x = curve->closestPoint(actualMousePosition, NULL);
  18. QPointF position = curve->sample(x);
  19. marker->setValue(position);
  20. temp = QString::number(marker->xValue());
  21. label.setText(temp);
  22. marker->setLabel(label);
  23. }
  24. tracePlot->replot();
  25. }
To copy to clipboard, switch view to plain text mode 

From what i know marker moves between curve vector indexes because
Qt Code:
  1. curve->closestPoint(actualMousePosition, NULL);
To copy to clipboard, switch view to plain text mode 
returns index of my data vector. So even tho i could use a fitter and get my curve interpolated my marker still would not move between those interpolated points only indexes. Does qwt have data interpolation methods? Or is there a way to move my marker differently? What's the best approach here?