54 if (segment < numSegments - 1) {
57 double tI = double (segment);
58 double tIp1 = double (segment + 1);
64 int deltaX = qFloor (posScreenEnd.
x() - posScreenStart.
x());
65 int deltaY = qFloor (posScreenEnd.
y() - posScreenStart.
y());
66 double pixelDistance = qSqrt (deltaX * deltaX + deltaY * deltaY);
67 double numSteps = pixelDistance;
70 double tIDelta = 1.0 / numSteps;
71 for (
int itI = 1; itI < numSteps - 1; itI++) {
73 double tIm1 = segment + (itI - 1) * tIDelta;
74 double tI = segment + (itI ) * tIDelta;
75 double tIp1 = segment + (itI + 1) * tIDelta;
81 QPointF posScreenBefore (spBefore.x(), spBefore.y());
82 QPointF posScreenCurrent (spCurrent.
x(), spCurrent.
y());
83 QPointF posScreenAfter (spAfter.
x(), spAfter.
y());
85 QPointF posGraphBefore, posGraphCurrent, posGraphAfter;
86 m_transformation.transformScreenToRawGraph (posScreenBefore,
88 m_transformation.transformScreenToRawGraph (posScreenCurrent,
90 m_transformation.transformScreenToRawGraph (posScreenAfter,
95 double deltaXBefore = posGraphCurrent.x() - posGraphBefore.x();
96 double deltaXAfter = posGraphAfter.x() - posGraphCurrent.x();
98 if ((deltaXBefore > 0 && deltaXAfter < 0) ||
99 (deltaXBefore < 0 && deltaXAfter > 0)) {
bool segmentIsMultiValued(const Spline &spline, int numSegments, int segment) const
Return true if specified segment is multi-valued, else false.