الشهاب الحارق
25 Feb 2002, 08:24 PM
الوظيفة الرياضيات Math.random()
حمل التمارين (http://mypage.ayna.com/highspy/ActionScript/translate/random.zip)
width = 550 height = 400
هذه الوظيفة جاءت لتلغي الوظيفة السابقة في فلاش 4 random()
وهذه الوظيفة هي ذات أرقام أو الأعداد الطبيعية
وتبدأ من صفر فاصل صفر إلى صفر فاصل واحد
المهم كيف الاستفادة منها
هذه الوظيفة نستطيع التحكم بها إذا ما تمت مساعدتها بوظائف أخرى
مثلاً أريد الفلم أن يبدأ في أي مكان عشوائي ضمن الأحداث السيني والصادي
طيب تكون النصوص البرمجية كالتالي
طبعاً في داخل الفلم
_x = int(Math.random()*550);
_y = int(Math.random()*400);
الشرح أولاً _x تدل على الأحداث السيني للفلم وال _y الأحداث الصادي
نقول أن الأحداث السيني يساوي int وتعني integer أي عدد صحيح
سيكون عشوائياً مضروب في 550 أي من صفر إلى 549
وكذلك بالنسبة للأحداث الصادي من صفر إلى 399
لو فرضنا أننا نريد من واحد إلى 549 في الأحداث السيني سيكون بالشكل التالي
_x = int(Math.random()*550+1);
علمً أن الوظيفة الرياضية
Math.floor(Math.random()*550);
تقوم بنفس الذي تقوم به الوظيفة int()
لأنه الوظيفة Math.floor تحول الرقم الطبيعي إلى عدد صحيح أو اصغر منه
شاهد هذا المثال
width = 550 height = 400
onClipEvent(load) {
dx = Math.random()*10-5;
dy = Math.random()*10-5;
}
onClipEvent(enterFrame) {
الشرح تعني math.random()*10-5 انه سيجعل الفلم يبدأ من الرقم –5 إلى الرقم 5
_x += dx;
_y += dy;
if (Math.random() > .9) {
dx = Math.random()*10-5;
dy = Math.random()*10-5;
}
}
أما أداة الشرط ستكون حينما يكون الرقم العشوائي هو اكبر من 9 بعد الفاصلة سيتحول الفلم إلى طور
جديد من العشوائية
الرؤية الواضحة تقول أستخدم الأمر trace() لمعرفة ماذا يدور في صميم هذا المشروع
سترى أن الفلم يتحرك في اتجاه حتى إذا ما كان اصغر من عشرة بعد الفاصلة وليست العشرة الصحيحة
فإذا جاء الرقم اكبر سيتحول
إلى جهة أخرى هذا والله أعلى وأعلم السلام عليكم
حمل التمارين (http://mypage.ayna.com/highspy/ActionScript/translate/random.zip)
width = 550 height = 400
هذه الوظيفة جاءت لتلغي الوظيفة السابقة في فلاش 4 random()
وهذه الوظيفة هي ذات أرقام أو الأعداد الطبيعية
وتبدأ من صفر فاصل صفر إلى صفر فاصل واحد
المهم كيف الاستفادة منها
هذه الوظيفة نستطيع التحكم بها إذا ما تمت مساعدتها بوظائف أخرى
مثلاً أريد الفلم أن يبدأ في أي مكان عشوائي ضمن الأحداث السيني والصادي
طيب تكون النصوص البرمجية كالتالي
طبعاً في داخل الفلم
_x = int(Math.random()*550);
_y = int(Math.random()*400);
الشرح أولاً _x تدل على الأحداث السيني للفلم وال _y الأحداث الصادي
نقول أن الأحداث السيني يساوي int وتعني integer أي عدد صحيح
سيكون عشوائياً مضروب في 550 أي من صفر إلى 549
وكذلك بالنسبة للأحداث الصادي من صفر إلى 399
لو فرضنا أننا نريد من واحد إلى 549 في الأحداث السيني سيكون بالشكل التالي
_x = int(Math.random()*550+1);
علمً أن الوظيفة الرياضية
Math.floor(Math.random()*550);
تقوم بنفس الذي تقوم به الوظيفة int()
لأنه الوظيفة Math.floor تحول الرقم الطبيعي إلى عدد صحيح أو اصغر منه
شاهد هذا المثال
width = 550 height = 400
onClipEvent(load) {
dx = Math.random()*10-5;
dy = Math.random()*10-5;
}
onClipEvent(enterFrame) {
الشرح تعني math.random()*10-5 انه سيجعل الفلم يبدأ من الرقم –5 إلى الرقم 5
_x += dx;
_y += dy;
if (Math.random() > .9) {
dx = Math.random()*10-5;
dy = Math.random()*10-5;
}
}
أما أداة الشرط ستكون حينما يكون الرقم العشوائي هو اكبر من 9 بعد الفاصلة سيتحول الفلم إلى طور
جديد من العشوائية
الرؤية الواضحة تقول أستخدم الأمر trace() لمعرفة ماذا يدور في صميم هذا المشروع
سترى أن الفلم يتحرك في اتجاه حتى إذا ما كان اصغر من عشرة بعد الفاصلة وليست العشرة الصحيحة
فإذا جاء الرقم اكبر سيتحول
إلى جهة أخرى هذا والله أعلى وأعلم السلام عليكم