diff options
author | Alan Alpert <alan.alpert@nokia.com> | 2011-07-22 17:45:59 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-07-28 11:27:26 +0200 |
commit | e57189d3bbac058a3ddea567a6e487be65cdde5a (patch) | |
tree | f3019565789a11704b6644f3c7ab912fe9343efe /examples | |
parent | 0511dfc0b8851baf84df73780e770f1025261068 (diff) |
Add some more properties to JS particle type
Adds the current position, velocity and acceleration.
While we're at it, renaming the velocity vars from sx,sy to vx,vy
Change-Id: I87f582169c7873c45a6fd453052b25c4dc940f3e
Reviewed-on: http://codereview.qt.nokia.com/2021
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/declarative/particles/custom/fallingleaves.qml | 32 |
1 files changed, 28 insertions, 4 deletions
diff --git a/examples/declarative/particles/custom/fallingleaves.qml b/examples/declarative/particles/custom/fallingleaves.qml index e41d214594..1d1282ebbb 100644 --- a/examples/declarative/particles/custom/fallingleaves.qml +++ b/examples/declarative/particles/custom/fallingleaves.qml @@ -13,21 +13,24 @@ Item { Emitter{ system: sys width: parent.width - emitRate: 6 - lifeSpan: 12000 + emitRate: 4 + lifeSpan: 14000 size: 80 speed: PointDirection{ y: 60 } } Wander { system: sys anchors.fill: parent + anchors.bottomMargin: 100 xVariance: 60 pace: 60 } CustomAffector{ system: sys - property real coefficient: 0.5 - property real speed: 10.0 + property real coefficient: 0.1 + property real speed: 1.5 + width: parent.width + height: parent.height - 100 onAffectParticle:{ /* //Linear movement if (particle.r == 0){ @@ -53,6 +56,27 @@ Item { } } + CustomAffector{//Custom Friction, adds some 'randomness' + system: sys + //onceOff: true + x: -60 + width: parent.width + 120 + height: 100 + anchors.bottom: parent.bottom + onAffectParticle:{ + var pseudoRand = (Math.floor(particle.t*1327) % 10) + 1; + var yslow = pseudoRand * 0.001 + 1.01; + var xslow = pseudoRand * 0.0005 + 1.0; + if (particle.curVY < 1) + particle.curVY == 0; + else + particle.curVY = (particle.curVY / yslow); + if (particle.curVX < 1) + particle.curVX == 0; + else + particle.curVX = (particle.curVX / xslow); + } + } ImageParticle{ anchors.fill: parent id: particles |