27 Q_PROPERTY(qreal strength READ strength WRITE setStrength NOTIFY strengthChanged)
28 Q_PROPERTY(QUrl noiseSource READ noiseSource WRITE setNoiseSource NOTIFY noiseSourceChanged)
29 QML_NAMED_ELEMENT(Turbulence)
30 QML_ADDED_IN_VERSION(2, 0)
33 explicit QQuickTurbulenceAffector(QQuickItem *parent =
nullptr);
34 ~QQuickTurbulenceAffector();
35 void affectSystem(qreal dt) override;
37 qreal strength()
const
42 QUrl noiseSource()
const
48 void strengthChanged(qreal arg);
50 void noiseSourceChanged(
const QUrl &arg);
54 void setStrength(qreal arg)
56 if (m_strength != arg) {
58 Q_EMIT strengthChanged(arg);
62 void setNoiseSource(
const QUrl &arg)
64 if (m_noiseSource != arg) {
66 Q_EMIT noiseSourceChanged(arg);
72 void geometryChange(
const QRectF &newGeometry,
const QRectF &oldGeometry) override;
76 void initializeGrid();
77 qreal boundsRespectingField(
int x,
int y);
81 QPointF** m_vectorField;