سلام
سلام
اينم آموزش ساخت چشم هايي كه موس رو نگاه مي كنن
اصول كلي اين كار بر حسب محاسبه موقعيت اشاره گر موس و چشم است كه بايد زاويه چشم و اشارگر موس رو بر حسب توابع مثلثاتي بدست بياوريم .
ابتدا يك shape به شكل چشم بسازيد .
1)-در ايتدا بايد مختصات x,y اين چشم رو داشته باشم كه با فرمول زير بدست مي آوريم .
کد:
X = this._x;
Y = this._y;
2)- بايد مختصات x,y موس را داشته باشم
کد:
Xm = _root._xmouse;
Ym = _root._ymouse;
3)- حالا بايد براي محاسبه فواصل بين اين دو از رابطه زير استفاده كنيم
کد:
Xdiff = Xm - X;
Ydiff = -(Ym - Y);
4)- حالا بايد زاويه مقابل اشاره گر موس رو پيدا كنيم
کد:
radAngle = Math.atan(Ydiff / Xdiff);
البته اين زاويه بدست آمده بر حسب راديان مي باشد كه در قسمت بعدي به درجه تبديل مي شود.
اين شرط رو هم بايد اعمال كنيم كه موس در قمت راست و چپ هم مشگل نداشته باشه
کد:
if (Xdiff < 0)
{
corrFactor = -270;
}
else
{
corrFactor = -90;
} // end if
اما قسمت آخر كه هم راديان رو به درجه تبديل مي كنيم و هم مختصات چشم رو اعمال مي كنيم
کد:
this._rotation = -radAngle * 360 / 6.283185 + corrFactor;
البته اين اصول كار بود ممكنه خطا هايي هم داشته باشه ولي ميشه با يكمي تغيير روي اصل فايل اين مشكلات رو حل كرد
اينم كل كد :
کد:
onEnterFrame() {
X = this._x;
Y = this._y;
Xm = _root._xmouse;
Ym = _root._ymouse;
Xdiff = Xm - X;
Ydiff = -(Ym - Y);
radAngle = Math.atan(Ydiff / Xdiff);
if (Xdiff < 0)
{
corrFactor = -270;
}
else
{
corrFactor = -90;
} // end if
this._rotation = -radAngle * 360 / 6.283185 + corrFactor;
}
اميدوارم مشكلت حل بشه
موفق باشي