# Parabolic movement

**URL:** <https://forum.kirupa.com/t/parabolic-movement/262065>\
**Category:** flash\
**Created:** [June 3, 2008, 2:37am UTC](https://forum.kirupa.com/t/parabolic-movement/262065 "2008-06-03T02:37:31Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![nebula\_228](https://avatars.discourse-cdn.com/v4/letter/n/e99b99/32.png) [@nebula\_228](https://forum.kirupa.com/u/nebula_228)\
**Post date:** [June 3, 2008, 2:37am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/1 "2008-06-03T02:37:31Z")

</div>

hi everyone,

Can anybody tell me how to give a parabolic movement to a MovieClip

Thanks in Advance  
Deepthi

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 3, 2008, 2:50am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/2 "2008-06-03T02:50:54Z")

</div>

Create your parabolic function, move the movie clip along the x axis at whatever speed you want and find the y value from it’s x position.

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 3, 2008, 3:08am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/3 "2008-06-03T03:08:19Z")

</div>

```auto
import flash.events.Event;

mc.x = 0
function move(evt:Event):void {
	//parabola with zeros at 0 and 550 and stretching to 200
	//negative because Flash's y axis is reversed
	mc.y = -0.002644 * Math.pow(((mc.x += 3) - 275), 2) + 200;	
}
mc.addEventListener(Event.ENTER_FRAME, move);

```

---

<div class="post-metadata">

**Author:** ![nebula\_228](https://avatars.discourse-cdn.com/v4/letter/n/e99b99/32.png) [@nebula\_228](https://forum.kirupa.com/u/nebula_228)\
**Post date:** [June 3, 2008, 4:47pm UTC](https://forum.kirupa.com/t/parabolic-movement/262065/4 "2008-06-03T16:47:30Z")

</div>

hi ,

Thanks a lot for the code snippet…But i was not able to run the code …my movie clip was not moving.

Could you please help me

Thanks

with regards

Deepthi

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 3, 2008, 11:48pm UTC](https://forum.kirupa.com/t/parabolic-movement/262065/5 "2008-06-03T23:48:45Z")

</div>

Just put a movie clip on the stage named mc.

---

<div class="post-metadata">

**Author:** ![snickelfritz](https://avatars.discourse-cdn.com/v4/letter/s/7ea924/32.png) [@snickelfritz](https://forum.kirupa.com/u/snickelfritz)\
**Post date:** [June 4, 2008, 6:07am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/6 "2008-06-04T06:07:30Z")

</div>

or…

800x600 stage.  
Place movieclip “mc” at 0, 0,  
Move registration point to x:400, y:0

Example:[[COLOR=“Blue”][U]http://www.byrographics.com/AS3/pendulum/pendulum.html[/U][/COLOR]](http://www.byrographics.com/AS3/pendulum/pendulum.html)

```auto
stop();
import gs.TweenMax;
import fl.motion.easing.*;

function forward():void {
	TweenMax.to(mc, 1.2, {rotation:-180, onComplete:reverse, ease:Cubic.easeInOut});
}

function reverse():void {
	TweenMax.to(mc, 1.2, {rotation:0, onComplete:forward, ease:Cubic.easeInOut});
}

forward();

```

---

<div class="post-metadata">

**Author:** ![Anogar](https://avatars.discourse-cdn.com/v4/letter/a/ed655f/32.png) [@Anogar](https://forum.kirupa.com/u/Anogar)\
**Post date:** [June 4, 2008, 6:29am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/7 "2008-06-04T06:29:15Z")

</div>

But… [FONT=“Courier New”]mc.y = -0.002644 \* Math.pow(((mc.x += 3) - 275), 2) + 200;[/FONT] is so much cooler!

---

<div class="post-metadata">

**Author:** ![TheCanadian](https://avatars.discourse-cdn.com/v4/letter/t/67e7ee/32.png) [@TheCanadian](https://forum.kirupa.com/u/TheCanadian)\
**Post date:** [June 4, 2008, 6:31am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/8 "2008-06-04T06:31:05Z")

</div>

Ya seriously.

Plus what you have isn’t parabolic.

---

<div class="post-metadata">

**Author:** ![snickelfritz](https://avatars.discourse-cdn.com/v4/letter/s/7ea924/32.png) [@snickelfritz](https://forum.kirupa.com/u/snickelfritz)\
**Post date:** [June 4, 2008, 7:42am UTC](https://forum.kirupa.com/t/parabolic-movement/262065/9 "2008-06-04T07:42:47Z")

</div>

TheCanadian’s advanced math is seriously cool. (and a little scary)

[[COLOR=“Blue”][U]http://www.byrographics.com/AS3/parabolic/parabolic.html[/U][/COLOR]](http://www.byrographics.com/AS3/parabolic/parabolic.html)

```auto
stop();
import gs.TweenMax;
import fl.motion.easing.*;
import flash.events.Event;

//fake parabolic-orange dot
function forward():void {
	TweenMax.to(mc, 1.2, {x:550, y:0, bezierThrough:[{x:275, y:200}], onComplete:backward, ease:Quadratic.easeInOut});
}

function backward():void {
	TweenMax.to(mc, 1.2, {x:0, y:0, bezierThrough:[{x:275, y:200}], onComplete:forward, ease:Quadratic.easeInOut});
}

forward();

//true parabolic-blue dot
mc2.x = 0;
function move(evt:Event):void {
//parabola with zeros at 0 and 550 and stretching to 200
//negative because Flash's y axis is reversed
mc2.y = -0.002644 * Math.pow(((mc2.x += 3) - 275), 2) + 200;
}
mc2.addEventListener(Event.ENTER_FRAME, move);

```
