![]() |
Qt 6.x
The Qt SDK
|
Classes | |
struct | SingleCubicBezier |
Public Member Functions | |
BezierEase (QEasingCurve::Type type=QEasingCurve::BezierSpline) | |
void | init () |
QEasingCurveFunction * | copy () const override |
void | getBezierSegment (SingleCubicBezier *&singleCubicBezier, qreal x) |
qreal | value (qreal x) override |
![]() | |
QEasingCurveFunction (QEasingCurve::Type type, qreal period=0.3, qreal amplitude=1.0, qreal overshoot=1.70158) | |
virtual | ~QEasingCurveFunction () |
virtual qreal | value (qreal t) |
virtual QEasingCurveFunction * | copy () const |
bool | operator== (const QEasingCurveFunction &other) const |
Static Public Member Functions | |
static qreal | newtonIteration (const SingleCubicBezier &singleCubicBezier, qreal t, qreal x) |
static qreal | evaluateSegmentForY (const SingleCubicBezier &singleCubicBezier, qreal t) |
static qreal | evaluateForX (const SingleCubicBezier &singleCubicBezier, qreal t) |
static qreal | evaluateDerivateForX (const SingleCubicBezier &singleCubicBezier, qreal t) |
static qreal | _cbrt (qreal d) |
static float | _fast_cbrt (float x) |
static double | _fast_cbrt (double d) |
static qreal | _acos (qreal x) |
static qreal | _cos (qreal x) |
static bool | inRange (qreal f) |
static void | cosacos (qreal x, qreal &s1, qreal &s2, qreal &s3) |
static qreal | singleRealSolutionForCubic (qreal a, qreal b, qreal c) |
static bool | almostZero (qreal value) |
static qreal | findTForX (const SingleCubicBezier &singleCubicBezier, qreal x) |
Public Attributes | |
QList< SingleCubicBezier > | _curves |
QList< qreal > | _intervals |
int | _curveCount |
bool | _init |
bool | _valid |
![]() | |
QEasingCurve::Type | _t |
qreal | _p |
qreal | _a |
qreal | _o |
QList< QPointF > | _bezierCurves |
TCBPoints | _tcbPoints |
Definition at line 427 of file qeasingcurve.cpp.
|
inline |
Definition at line 442 of file qeasingcurve.cpp.
Definition at line 673 of file qeasingcurve.cpp.
Definition at line 612 of file qeasingcurve.cpp.
References _fast_cbrt(), d, and sign().
Referenced by singleRealSolutionForCubic().
Definition at line 678 of file qeasingcurve.cpp.
References M_PI.
|
inlinestatic |
Definition at line 650 of file qeasingcurve.cpp.
References d.
|
inlinestatic |
Definition at line 635 of file qeasingcurve.cpp.
References i.
Referenced by _cbrt().
|
inlinestatic |
Definition at line 808 of file qeasingcurve.cpp.
References e.
Referenced by findTForX().
|
inlineoverridevirtual |
Reimplemented from QEasingCurveFunction.
Reimplemented in TCBEase.
Definition at line 500 of file qeasingcurve.cpp.
References QEasingCurveFunction::_a, QEasingCurveFunction::_bezierCurves, QEasingCurveFunction::_o, QEasingCurveFunction::_p, QEasingCurveFunction::_t, and QEasingCurveFunction::_tcbPoints.
Definition at line 716 of file qeasingcurve.cpp.
References qSqrt(), s2, and s3.
Referenced by singleRealSolutionForCubic().
|
inlinestatic |
Definition at line 600 of file qeasingcurve.cpp.
References BezierEase::SingleCubicBezier::p0x, p1, BezierEase::SingleCubicBezier::p1x, p2, BezierEase::SingleCubicBezier::p2x, and BezierEase::SingleCubicBezier::p3x.
Referenced by newtonIteration().
|
inlinestatic |
Definition at line 582 of file qeasingcurve.cpp.
References BezierEase::SingleCubicBezier::p0x, p1, BezierEase::SingleCubicBezier::p1x, p2, BezierEase::SingleCubicBezier::p2x, and BezierEase::SingleCubicBezier::p3x.
Referenced by newtonIteration().
|
inlinestatic |
Definition at line 564 of file qeasingcurve.cpp.
References BezierEase::SingleCubicBezier::p0y, p1, BezierEase::SingleCubicBezier::p1y, p2, BezierEase::SingleCubicBezier::p2y, and BezierEase::SingleCubicBezier::p3y.
Referenced by value().
|
inlinestatic |
Definition at line 815 of file qeasingcurve.cpp.
References almostZero(), BezierEase::SingleCubicBezier::p0x, p1, BezierEase::SingleCubicBezier::p1x, p2, BezierEase::SingleCubicBezier::p2x, BezierEase::SingleCubicBezier::p3x, and singleRealSolutionForCubic().
Referenced by value().
|
inline |
Definition at line 512 of file qeasingcurve.cpp.
References _curveCount, _curves, _intervals, and QList< T >::data().
Referenced by value().
|
inline |
Definition at line 446 of file qeasingcurve.cpp.
References QEasingCurveFunction::_bezierCurves, _curveCount, _curves, _init, _intervals, _valid, QList< T >::at(), QList< T >::constLast(), i, QList< T >::size(), QPointF::x(), and QPointF::y().
Referenced by value().
|
inlinestatic |
Definition at line 711 of file qeasingcurve.cpp.
Referenced by singleRealSolutionForCubic().
|
inlinestatic |
Definition at line 527 of file qeasingcurve.cpp.
References evaluateDerivateForX(), and evaluateForX().
Reimplemented from QEasingCurveFunction.
Reimplemented in TCBEase.
Definition at line 536 of file qeasingcurve.cpp.
References QEasingCurveFunction::_bezierCurves, _init, _valid, evaluateSegmentForY(), findTForX(), getBezierSegment(), init(), QList< T >::isEmpty(), Q_ASSERT, qWarning, and QList< T >::size().
Referenced by TCBEase::value().
int BezierEase::_curveCount |
Definition at line 438 of file qeasingcurve.cpp.
Referenced by getBezierSegment(), and init().
QList<SingleCubicBezier> BezierEase::_curves |
Definition at line 436 of file qeasingcurve.cpp.
Referenced by getBezierSegment(), and init().
bool BezierEase::_init |
Definition at line 439 of file qeasingcurve.cpp.
Definition at line 437 of file qeasingcurve.cpp.
Referenced by getBezierSegment(), and init().
bool BezierEase::_valid |
Definition at line 440 of file qeasingcurve.cpp.