Название: [Qwt] Как узнать координаты точки кривой на графике. Отправлено: karpenko1989 от Февраля 13, 2012, 13:34 Добрый день. Необходимо реализовать слеедующее:
(http://s2.ipicture.ru/uploads/20120213/JbvOeUq7.jpg) (http://s2.ipicture.ru/Gallery/Viewfull/8565796.html) Т.е при клике на графике необходимо узнать значение точки по оси Y. Насколько я понял стандартными методами библиотеки Qwt это сделать невозможно. Может быть, кто-либо сталкивался с подобной задачей, и нашел для неё решение? Название: Re: [Qwt] Как узнать координаты точки кривой на графике. Отправлено: twp от Февраля 13, 2012, 13:57 зная две точки прямого отрезка можно найти любую точку на нем методом пропорции
а найти индекс ближайшей точки кривой можно используя метод QwtPlotCurve::closestPoint() Название: Re: [Qwt] Как узнать координаты точки кривой на графике. Отправлено: madRoger от Февраля 13, 2012, 16:33 Можно прикрутить к Plot-у QwtPlotPicker. У него есть метод QPoint trackerPosition(), с помощью которого можно узнать X-координату. Зная ее, можно определить две ближайшие точки отрезка. Далее как twp написал, методом пропорции.
Название: Re: [Qwt] Как узнать координаты точки кривой на графике. Отправлено: karpenko1989 от Февраля 14, 2012, 08:19 Добавил picker
Код: d_picker = new QwtPlotPicker(QwtPlot::xBottom, QwtPlot::yLeft, Код: void TrendTop::UpdVizir() Хочу в label psetInterval вывести ту самую X-координату. Перепробовал все сигналы picker, но ничего не отображается. Название: Re: [Qwt] Как узнать координаты точки кривой на графике. Отправлено: madRoger от Февраля 14, 2012, 12:13 Метод trackerPosition() возвращает пиксельные координаты. Их нужно перевести в координаты графика
Используй QPointF QwtPlotPicker::invTransform(сonst QPoint &pos) const для перевода. Х-координата будет invTransform(trackerPosition()).x(); |