حركت سينوسي

rezaee

Member
با سلام به دوستان عزيز :)
ميخواستم كه براي يه آبجكت، مثلا يك توپ يه حركت سينوسي ايجاد كنم. توسط اكشن نويسي...

به عنوان مثال توپ از يه طرف استيج وارد بشه و با حركت سينوسي از طرف ديگه استيج خارج بشه...
خيلي مهم نيست كه چه ورژن اكشن اسكريپت باشه. اما 3 بهتره.

نرم بودن حركت برام مهمه.

اگه لطف كنيد نمونه بزاريد و يا توضيح بديد ممنون ميشم....

خيلي خيلي متشكر




:rose::rose::rose::rose::rose::rose::rose:
 

BehrouzPc

پــــادشــاه فــلــــش
سلام نوید عزیز چطوری خوبی...

برای این کار توی اکشن 2 از کد زیر می تونی استفاده کنی ، اصول کار چیز ساده ای هست که میشه به راحتی توی اکشن 3 هم پیاده سازی بشه :

این نمونه کدها بر روی مووی کلیپی نوشته شود که می خواهید به صورت سینوسی حرکت داشته باشد .


PHP:
onClipEvent (load) {
    centerY = _y;
    yRadius = 50;
    rotationIncrement = 6;
    currentRotation = 0;
}
onClipEvent (enterFrame) {
    currentRotation += rotationIncrement;
    currentRotation %= 360;
    var radians = Math.PI/180*currentRotation;
    var y = Math.sin (radians);
    _y = centerY + y*yRadius;
    _x += 4;
}
_x += 4 هم در آخر کد به x داده شده برای سرعت حرکت رو به جلو و یا عقب به صورت موج سینوسی می باشد

موفق و پیروز باشید.
 

++Hadi++

Active Member
سلام رضایی جان
حرکت توپ شماره 1 این یه حرکت سینوسی ساده هست:
PHP:
import flash.events.*;
var Angle:Number=0;
addEventListener(Event.ENTER_FRAME,Moving);
function Moving(evt:Event):void
{
    Angle++;
    if(Angle==360)Angle=0;
    ball.x+=4;
    ball.y=Math.sin(Angle)*20;
    if(ball.x >= stage.stageWidth + 30)ball.x= - 30;
}

حرکت توپ شماره 2 این یه حرکت Elastic هست یعنی وقتی شروع می شه ، حرکت اوج می گیره و به نهایت خودش می رسه و بعد از پیمودن نصف مسیر ، دوباره کم کم از اوج به پایین می رسه:
PHP:
import flash.events.*;
var Angle:Number=0;
addEventListener(Event.ENTER_FRAME,Moving);
function Moving(evt:Event):void
{
    Angle++;
    if(Angle==360)Angle=0;
    ball.x+=4;
    if(ball.x <= stage.stageWidth/2)(ball.y=Math.sin(Angle)* ball.x)/3;
    else ball.y=(Math.sin(Angle)* (stage.stageWidth- ball.x))/3;
    if(ball.x >= stage.stageWidth + 30)ball.x= - 30;
}

برا دیدن خروجی و سورس ویرایش شده با فلش cs5 ، فایل پیوستو دانلود کن ...
همینطور واسه حرکت دایره وارد یه مووی کلیپ حول یه محور با استفاده از توابع مثلثاتی به لینک زیر برو :
http://forum.majidonline.com/showthread.php?t=123715&highlight=توابع+مثلثاتی
موفق باشی ...
 

پیوست ها

  • Sin Movement.rar
    9.6 کیلوبایت · بازدیدها: 91

rezaee

Member
:spam:

با تشكر از زحمت دوستاي عزيز و خوبم... كه هميشه لطفشون رو به من ثابت كردن... يه مدت كه كلا فلش رو كنار گذاشتم و دارم توي مباحث ديگه‌اي كار ميكنم... به قول معروف كار رو به كاردونش سپردم.
بازم ازتون ممنونم آقا بهروز، آقا هادي :rose:

:oops:
 

جدیدترین ارسال ها

بالا