مشاهدة النسخة كاملة : كيف احسب الوقت في مشهد اللودنج + معدل السرعة Kb/s??


عافور الهندسة
18 Jan 2002, 07:33 AM
السلام عليكم سؤالي مبين من العنوان

لاني شفت مشاهد فيها معدل السرعة مع الوقت المتبقي فما هو الكود المستخدمم او الامر للوقت و الريت لحساب السرعة وشكرا

منتظرك يا اخوي المحترف الشهاب الحارق او اي واحد عنده فكرة عن الموضوع

شرقاوي
18 Jan 2002, 10:16 AM
السلام عليكم

هلا حبيبي عافور الدرس موجود في منتدى الدروس وهي الوصله تفضل يا الغالي :)

http://www.saven7.com/vb/showthread.php?s=&threadid=3423

سلالالالالالالالالالالالام

عافور الهندسة
18 Jan 2002, 10:32 AM
وان شاء الله اجيييييب لك خيشة فقع ههههههههه
بس انا كان قصدي انه يطلع الوقت بالثواني عرفت شلوون يعني باقي دقيقة وخمس ثواني وعداد وشكرا

تحياتي لكم حبايبنا

شرقاوي
18 Jan 2002, 10:56 AM
السلام عليكم

هلا فيك عافور تسلم حبيبي وبعد على الطريق اذا شفت اقط لا تخلي : D حطه تحت الحساب هههههههههه
والله يا حبيبي ما اعرف وإذا إنشاء الله عرفت أتمنى إن أخدمك
وبعدين دقايق وانشاء الله الشباب مو مقصرين معاك منهم اخوي الشهاب الحارق المتخصص في ها الشغلات :)
واعذرني حبيبي :) .... ولا تنسى الفقع والاقط تحت الاحساب خخخخخخ :)

سلالالالالالالالالام

الشهاب الحارق
18 Jan 2002, 02:27 PM
السلام عليكم

أتذكر والله العظيم إنني سألت الدكتورة في الجامعة هذا السؤال آنذاك ولم تجب علي إلى يومك هذا

ولكني بحثت في الإنترنت فما وجدت أحداً قام بشرحها ولكن سوف ابحثها رياضياً إذا استطعت

سأعود إليك قريباً إنشاء الله يا عااااااافور. أشكرك على طرح هذا السؤال المُلح على كثيرِ منا

السلام عليكم

الشهاب الحارق
18 Jan 2002, 07:47 PM
السلام عليكم

width = 550 height = 400



حمل مثالي (http://mypage.ayna.com/highspy/ActionScript/SpeedConnection.fla)

حمل المثال الموجود في فلاش كت (http://www.flashkit.com/movies/Scripting/Preloaders/Detect_u-davdesig-5026/index.shtml)

أظن انني وجدتها وهي فيزيائيا وليست رياضيا كما ذكرت

القاعدة تقول لحساب السرعة نقسم المسافة المقطوعة على الزمن

طيب لكن كيف ونحن ليس لدينا الزمن ظننت انني وجدتها ولكن ليس بعد

المهم انني استخدمت المسافة ب getBytesLoaded

لكن اين الزمن ؟

صنعت متغير اسمه time0 في الفريم الاول و time1 في الفريم الثاني

ثم صنعت متغير في الفريم الثالث وسمته speed وجعلت هذه القيمة فيه

speed = int (_root.getBytesLoaded()/(time1-time0));

الخلاصه انني قسمت كل البايتات على نقصان الزمن الحالي بالزمن المنصرم

في الحقيقة لا ادري ا محقٌ انا ام مخطئ

وقد تجد أنني لم أعتمد على القاعدة الفيزيائية بأن السرعة تساوي المسافة المقطوعة مقسومة على الزمن

وقد سألت صديق كوري مبرمج منذ عشري سنوات فقال لي انه قد يكون كما ذكرت لكم بعد أن قام بتصحيح

شي من النصوص التي كتبتها وقال لستُ واثقاً كل الثقة انه سيعمل كما ينبغي

ولكن إذا وجدتُ اخطأ حاول إصلاحها بنفسك

ولكن وجدت في موقع FlashKit عمل للتحميل حملته وبدأت أتفحص النصوص البرمجية

وجدته اعتمد على بعض المتغيرات

في الفريم الاول كتب هذا الكود

time0 = getTimer ();
loaded0 = _root.getBytesLoaded();

في الفريم الثاني كتب هذا الكود


iteration += 1;

time1 = getTimer();


loaded1 = _root.getBytesLoaded();


في الفريم الثالث كتب هذا الكود


timesum = time1-time0;
loadsum = loaded1-loaded0;

avtimesum = timesum/iteration;
avloadsum = loadsum/iteration;

connection = int((avloadsum)/avtimesum*10)/10;

if (_root.getBytesLoaded()==_root.getBytesTotal()) {
_root.gotoAndStop("main", 1);
} else {
gotoAndPlay (2);
}


صنع متغير لاخذ الوقت في البداية

ثم في الفريم الثاني صنع مثله

مع متغير يحسب كل حلقة اسمه iteration += 1;

في الفريم الثالث جمعهما في متغير اخر ونقص المتغير الثاني من المتغير الاولى

وكذلك بالنسبة لتحميل البايات بالضبط

في الفريم الثالث قسم المتغير الذي اخذ قيمة المتغيران عن طريق عملية النقصان وقسمة على المتغير
iteration

وكذلك بالنسبة للبايتات فعل نفس الشيئ

ثم وضعهما في النص الديناميكي وقسم تحميل البايتات على الوقت وضرب الوقت بعشرة حتى يعطيه

رقم عشري وقسم المتغيران على عشرة لعرض الناتج

سترى في المثال الذي ارفقته السرعة الاولى هي له

والسرعة الثانية بمثالي ولا ادري هل وافقته العمل ام خالفته في ذلك

الله اعلى واعلم وسأبحث لك مجددً أذا عدت من الدورة الاسبوع القادم

ولن أترك الامر يذهب سُدى

وذلك إن كان في العمري بقية


السلام عليكم

المسافر
18 Jan 2002, 09:27 PM
الحمدلله على السلامة اخوي عافور
وتسلم على هذا السؤال اللي يحرك المخ:D
فيه عندي ملف فيه مشهد تحميل اعتقد ينفعك
انت افتحه وهو انشاء الله يصبرك حتى يرجع اخونا الشهاب الحارق بالسلامة

عاد همتك معنا واشرح الطريقة
بالتوفيق
والسلام

الشهاب الحارق
18 Jan 2002, 11:48 PM
السلام عليكم

عزيزي المسافر الملف المرفق الذي وضعته انت ليس به سرعة الإتصال !

ثم ان الملف قديم معمول بفلاش 4

هذا فقط حتى لا نخرج عن صلب الموضوع اي نحصر الموضوع بسرعة الإتصال فقط

ترى مو عتاب بالمرة انت تدري فضلك علي :cool:

المسافر
19 Jan 2002, 11:14 PM
هلا اخوي الشهاب
ما فيه لا فضل ولا عتاب
هدفنا واحد هو الفائدة للجميع
صحيح ما انتبهت للاشياء اللي قلتها من ناحية عدم وجود معدل السرعة مع الوقت المتبقي
بالاضفة الى انه فلاش اربعة بس انت اعرف منى ان من خصائص فلاش 5 انه يعدل الاكشن بمجرد تجربة الفيلم الى فلاش خمسة
وعلشان نوصل للهدف المنشود كنت مطبق هذه الطريقة بعمل لي بمنتدى الخواطر
تفضلوا (http://www.saven7.com/vb/showthread.php?threadid=3512)
وطريقكم قولوا رائيكم بالقصيدة:D
وهذا ملف مشهد التحميل لدراسته وفهمه ثم شرحه ممن لديه الاستطاعة
بالتوفيق
والسلام

الشهاب الحارق
20 Jan 2002, 01:00 PM
السلام عليكم

عزيزي المسافر انا اقصد انه النصوص البرمجية التي استخدمت في الملف قديمة

لا تصلح في فلاش 5 اي انه فلاش 4 اصعب بكثير من فلاش 5 من حيث تركيب النصوص البرمجية

اما ترقيته إلى فلاش 5 هو كما ذكرت تشغيله لكن ازيد عليه تعديل بعض النصوص البرمجية

لانه وجد البديل الاكفئ منها يعني بعض النصوص في فلاش 4 الله يرحمها :cool:

هذه من وجهت نظري قد توفقني الرأي وقد تخالفني اياه

والله اعلى واعلم السلام عليكم

tamimi
20 Jan 2002, 03:59 PM
اما بالنسبة لي يا اخوان فانا ما اعرف لكن ابحاول اسأل وارد خبر :) بس الي يسبفنا يشرحلنا لازم :)

عافور الهندسة
23 Jan 2002, 09:23 AM
الف شكر لك يا اخي الشهاب الحارق والمسافر وكل من شارك انا توني الحين رجعت من البر وراح اروووح مرة ثانية الجمعة ههههههه
مشتاق لكم جميعا والله

لكم وحشة

وشكرا على الملفات راح اجربها واشووووف شلون تشتغل :):):)

الشهاب الحارق
27 Jan 2002, 01:56 PM
السلام عليكم الجواب الشافي لحساب معدل السرعة

hi all

I made a variable in the first frame and I assigned the

gettimer() then in the second frame I made

another one has the same value

that what my friend said and finally

my script been shwo = getBytesLoaded/(time1 - time0);

is this correct ? please can someone post here the

script



Ughm.. yes you have the right idea how ever its not nice to get the speed ove just one frame.. the longer you span it the more acurate reslut you get..
something like
1st frame
time0 = getTimer();
loaded0= _root.getBytesLoaded();


The more the better frames later:

lBpms= (_root.getBytesLoaded()-loaded0)/(getTimer()-time0);
//this will return Bytes/Milli second
lkBs= ((_root.getBytesLoaded()-loaded0)/1024)/((getTimer()-time0)*1000);
//Hope I got that one right... give you KB/Second... You might want to round this thought

تعقيب تبين انني لم اوفق في حل المعادلة كما ينبغي لا انا ولا زميلي الكوري ولا حتى

الذي شرح معدل السرعة في فلاش كت والسبب انني نقصت من النصوص البرمجيه

بينما الذي شرح في فلاش كت فقد بالغ فيها إلى حد الإعجاز

المهم اذا اردت ان تحسب السرعة إفعل الآتي

في الفريم الاول أكتب هذا الكود

time0 = getTimer();
loaded0= _root.getBytesLoaded();


وكما يقول المجيب على هذا السؤال

The more the better frames later:

كلما اطلت المسافة بين الفريم الاول والفريم الذي ستضع في الكود الثاني كلما كان افضل

اي بدل ان يكون الكود في الفريم الثاني يعني اكتبه في الخامس او السادس وهكذا

ولاننا نريد ان نحسب بالكيلو بايت افضل من البت

نختصر الموضوع إلى القسم الثاني من هذا الكود والذي يحسب بالكيلو بايت طيب .

lkBs= ((_root.getBytesLoaded()-loaded0)/1024)/((getTimer()-time0)*1000);

المتغير IkBs والله اعلم انه Internet kilo Byte Speed

يساوي البايتات المحملة الان ناقص البايتات المحملة السابقة في المتغير loaded0

مقسومة على 1024 حتى يعطينا 1 كيلو بايت عن كل 1024 ثم نقسم الناتج على

الوقت الحالي ناقص الوقت المنصرم في المتغير time0 الموجود في الفريم الاول

ثم نضرب الناتج ككل ب 1000 ليعطي ثانية عن كل 1000

وها انت ترى انه تم تطبيق القاعدة الفيزيائية وهي ان السرعة تساوي المسافة المقطوعة مقسومه على الزمن

فكلما اطلت المسافة بين المتغير الاول بالنسبه للزمن والتحميل وبين متغير حاسب السرعة IKBs

كلما حصلت على نتيجة افضل وادق ومنطقً مقبولاً

هذا والله اعلى واعلم



أتمنى ان يكون واضحً