graphics Admin
عدد المساهمات : 594 نقاط : 6936 السٌّمعَة : 4 تاريخ التسجيل : 15/06/2010
| موضوع: درس مسك الأشياء وتحريكها بالموس بالسحب الخميس يوليو 29, 2010 8:53 am | |
| الدرس::
نعمل الشكل المراد تطبيق عليه.. ثم نحوله إلى موفي كليب (F8) . ثم نسمي الشكل
في الموفي كليب بأسم:: objeto مثل الصورة::
[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]ثم نضع هذا الكود على الموفي:: - الكود:
-
on (press) { modo = 1; modo_time = 1; } on (release, releaseOutside) { modo = 2; modo_time = 1; }
ثم نضغط على الموفي (مرتين ) لندخل على خصائصه
بعد ما ضغطتنا على الموفي مرتين وصرنا في خصائصه نضع هذا الكود في أول فريم - الكود:
-
m = 1; inercia = 600; inx = _x; iny = _y; r = _rotation; min = 1; originx = _x; originy = _y; originr = _rotation; //friccion b = 1.2; //inicializando vr = 0; torque = 0; vx = 0; vy = 0;
onEnterFrame = function () { if (modo == 1) { if (modo_time == 1) { modo_time = 0; mxx = _root._xmouse; my = _root._ymouse; mx0 = mxx; my0 = my; dmx = mxx-mx0; dmy = my-my0; } else { mxx = (_root._xmouse+mxx)/2; my = (_root._ymouse+my)/2; dmx = mxx-mx0; dmy = my-my0; mx0 = mxx; my0 = my; } fx = (dmx-vx)*m; fy = (dmy-vy)*m; ldx = mxx-inx; ldy = my-iny; if (fx == 0) { mlength = ldx; mforce = fy; torque = mforce*mlength; } else if (fy == 0) { mlength = ldy; mforce = fx; torque = -(mforce)*mlength; } else { k = fy/fx; kx = (-(k)*k*ldx+k*ldy)/(-(k)*k-1); ky = k*(kx-ldx)+ldy; mlength = Math.sqrt(kx*kx+ky*ky); mforce = Math.sqrt(fx*fx+fy*fy); if (fx*ky>0) { torque = -(mforce)*mlength; } else { torque = mforce*mlength; } } vx = dmx; vy = dmy; inx += vx; iny += vy; vr = vr-torque/inercia; ldx = mxx-inx; ldy = my-iny; var cos; var sin; cos = Math.cos(vr/180*Math.PI); sin = Math.sin(vr/180*Math.PI); addx = ldx*cos+ldy*sin-ldx; addy = -(ldx)*sin+ldy*cos-ldy; inx += -(addx); iny += -(addy); } else if (modo == 2) { if (modo_time == 1) { modo_time = 0; vx = vx-(addx); vy = vy-(addy); } torque = 0; addx = 0; addy = 0; inx += vx; iny += vy; } r -= vr; this._x = inx; this._y = iny; this._rotation = r; vx = vx/b; vy = vy/b; vr = vr/b; }; stop(); | |
|