السلام عليكم
صادف اليوم أن تطلعت فوجدت أني داخل على المشاركة رقم 5000
وهو رقم جميل
فارتأيت أنه فهذه المناسبة يتعين علي أن تكون المشاركة رقم 5000 مشاركة مميزة نوعاًما
في النهاية ارتأيت أن أجعل إصداري الجديد من الحزمة AAniamtion أولاً هنا في المنتدى
قبل مدونتي الخاصة
على كل أحبكم جميعاً وأتمنى من الله أن يجمعنا في جنته أجمعين كما جمعنا هنا
أترككم مع الحزمة لتلقوا نظرة عليها
الحزمة تتكون من فئات رئيسية للمستخدم
أ- ثلاث واجهات متعلقة بالرسم Container و Component و PaintBoard
الحاوية والمكون و لوح الرسم
الحاوية قد لا تحتوي على مكونات وقد تحتوي على أي عدد من المكونات
ويمكن أن تحتوي الحاوية على حاويات أصغر منها تحتوي الحاويات الأصغر على المكونات الخاصة بها
الحاوية لها لوح الرسم الخاص بها
المكون Component يتلخص في أن لديك لوح رسم وعليك أن تملأه بالرسم :)
يمكنك إضافة المكون إلى حاوية ما مرة واحدة
الفرق ما بين المكون ولوح الرسم
المكون هو عبارة عن تغليف للوح رسم مع تحديد المكان الذي تتم فيه عملية الرسم (نقطة بداية الرسم x,y) ولا تحتوي على طول أو عرض خاص بها
بينما لوح الرسم هو عبارة عن رسم مجرد ويحتوي على طول وعرض خاصين به
يمكن استخدام لوح الرسم في أكثر من مكون في نفس الوقت بدون أية إشكالات وبدون أي قيود من أي نوع
بينما استخدام المكون في أكثر من حاوية ممكن ولا إشكال فيه
لكن تبقى نقطة البداية قيد عليهم ولو غيرت نقطة بداية المكون في أي حاوية فإن مكان المكون سيتغير على جميع الحاويات
وعلى هذا يمكننا القول أن إضافة المكون على نفس الحاوية أكثر من مرة لا جدوى منه لأنه سيرسم نفس المكون في نفس المكان مرتين
ب- فئتين متعلقتين بالحركة AnimationObject و AnimationEngine
المحرك والكائن المتحرك
المحرك قد لا يحتوي على كائنات متحركة وقد يحتوي على أي عدد من الكائنات المتحركة
الكائن المتحرك هو عبارة عن مكون وحاوية في نفس الوقت
ويمكنه التمتع بكل مزايا المكون والحاوية مع إضافة خاصية الحركة له
المحرك هو المسؤول عن تحريك الكائنات المتحركة (تغيير نقطة البداية الخاصة به)
بمعنى آخر المحرك مسؤول عن تحريك المكونات (الكائنات المتحركة) على الحاوية
لا يمكنك إضافة الكائن المتحرك أكثر من مرة على على نفس المحرك (نتكلم عن المنطقية هنا لأنك لو أضفته فسيحصل تحريك للمكون نفسه مرتين بنفس الحركة)
يمكننا القول أيضاً كائنين متحركين لهم نفس الاسم على نفس المحرك
كما لا يمكنك إضافة الكائن المتحرك على أكثر من محرك في نفس الوقت
أجمل ما في التعديل الجديد أن الحزمة الاعتمادية في الحزمة أصبحت أقل بشكل كبير
ويمكن ببساطة تغيير أي جزء من الحزمة وتعديله برمجياً دون التدخل في الكود الأصلي للحزمة
كما أصبحت الحزمة أكثر مرونة من قبل
فهناك كائنات متحركة يحركها محرك
وهناك مكونات تدار باستخدم حاوية
ويمكنك ببساطة أن تستخدم المكونات مع الحاوية بدون وجود التحريك
كما يمكنك ببساطة أن تخلط ما بين التحريك والرسم في نفس الوقت
وكل هذا بأقل حجم من الذاكرة
الصراحة أن الحزمة شهدت مجموعة من الإضافات الكبيرة
مع إصلاح مجموعة من الأخطاء bugs في الشيفرة
وحملة توثيق جيدة تعد الأكبر في تاريخ الحزمة (التوثيق بالعربي ولا وجود للإنجليزية إلى في بعض المصطلحات)
وبدأت أفكر بشكل جدي في الانتقال من الأرقام العشرية إلى الإصدار الأول من الحزمة
لكني مازلت أحتاج إلى تجربتكم معي وأراءكم حول الحزمة
وفرت أيضاً هذه المرة مع الحزمة مجموعة من الأمثلة البسيطة تظهر ما وصلت إليه الحزمة (وسأحاول بين الفينة والأخرى أن أضع أمثلة أخرى)
لحد الآن لم أقرر الانتقال إلى الإصدارة الأولى في انتظر أراءكم وانطباعاتكم حول الحزمة
تحياتي


