📚 إنشاء كتلة مخصصة (Make a Block)
المفاهيم الأساسية
معامل الإدخال (Input Parameter): متغير يمكن إضافته إلى كتلة مخصصة لقبول قيم مختلفة عند استخدامها، مما يجعل الكتلة قابلة للتكيف مع أكثر من مشكلة.
خريطة المفاهيم
```markmap
البرمجة التركيبية
التنفيذ في فيكس كود في آر
عناصر برمجة جديدة (My Blocks)
#### استخدام العنصر الجديد "Petal"
##### الخطوات
###### 1. رؤية لبنة "تعريف Petal" في منطقة البرمجة
###### 2. تخزين العنصر الجديد "My Block Petal" في فئة "My blocks"
#### التعليقات
##### أداة لإضافة توضيحات
#### تعريف المقطع البرمجي للعنصر الجديد "Petal"
##### تحت لبنة "تعريف Petal"
###### المقطع البرمجي الذي ينشئ بتلة واحدة
####### اضبط القلم على اللون أحمر
####### اضبط القلم على العرض نحيف للغاية
####### نقل القلم أسفل
####### تكرار 3 مرات:
######## تحرك إلى الأمام 180 mm
######## انعطف يمين لمدة 30 درجة
####### انعطف يمين لمدة 90 درجة
####### تكرار 3 مرات:
######## تحرك إلى الأمام 180 mm
######## انعطف يمين لمدة 30 درجة
#### استخدام عنصر البرمجة الجديد لإنشاء المقاطع البرمجية
##### الهدف
###### إنشاء مقطع برمجي يتحرك فيه روبوت الواقع الافتراضي ويرسم البتلة
##### خطوات التنفيذ
###### 1. من فئة "عناصر برمجة جديدة (My blocks)"، اضغط على المقطع البرمجي "عنصر البرمجة الجديد Petal"
###### 2. أفلت المقطع بعد لبنة "عندما بدأت (when started)"
##### تشغيل المقطع
###### شغل المقطع البرمجي في "ملعب الفن قماش (Art Canvas)"
##### النتيجة
###### رسم شكل بتلة مكون من فصين متداخلين باللون الأحمر
#### تطوير العنصر الجديد "Petal"
##### المشكلة
###### حجم البتلة ثابت (طول الجانب = 180 ملم)
###### حجم الزهرة الناتجة ثابت
##### الحل
###### إضافة معامل إدخال رقمي (Input Parameter)
####### مكانه: في المقطع البرمجي لعنصر البرمجة الجديد "Petal"
####### الغرض: قبول قيم مختلفة لطول الجانب (side length)
####### الفائدة: إنشاء بتلات وزهور بأحجام مختلفة
##### خطوات إضافة المعامل
###### 1. تعديل عنصر البرمجة الجديد
####### اضغط على فئة "عناصر برمجة جديدة (My Blocks)".
####### اضغط زر الفأرة الأيمن على عنصر البرمجة الجديد "Petal".
####### اضغط على "تعديل (edit)".
###### 2. إضافة معامل الإدخال الرقمي
####### في نافذة التعديل، اضغط على "إضافة مدخلا رقم (add an input number)".
####### اضغط على الاسم الافتراضي "number" وغيرّه إلى "Petal side length".
####### اضغط على "موافق (OK)".
####### تطبيق المعاملات (Parameters)
######## عمل المعاملات كمتغيرات داخل عنصر البرمجة الجديد.
######## إنشاء وحدات برامج قابلة للتأقلم على أكثر من مشكلة.
######## مثال: عنصر برمجة جديد لإنشاء مربع يحتوي على معامل إدخال رقمي لطول الجانب.
######### قيم إدخال مختلفة (مثل 200، 300، 600) للمعامل تنتج مربعات بأحجام مختلفة.
######### يتم استخدام نفس التعليمة البرمجية مع تغيير قيمة المعامل.
#### عناصر البرمجة الجديدة مع المعاملات
##### إضافة وتخصيص المعاملات
###### يمكن إضافة معامل واحد أو أكثر.
###### يمكن تخصيصها لتحديد:
####### شكل أو حجم الرسم.
####### اتجاه حركة روبوت الواقع الافتراضي.
####### المسافة التي يقطعها.
##### معالجة حالات المشكلات
###### تضمين العنصر الجديد في المقطع البرمجي الرئيس عدة مرات.
###### تمييز قيم الإدخال المعطاة للمعاملات في كل مرة.
##### مثال تطبيقي
###### عنصر "Petal" مع معامل إدخال هو طول جوانب شكل البتلة.
####### الاستخدام: لإنشاء أحجام مختلفة من الزهور أو الأوراق أو الفراشات.
#### إنشاء مقطع برمجي للزهور
##### الهدف
###### إنشاء مقطع برمجي يتحرك فيه روبوت الواقع الافتراضي ويرسم زهرة باستخدام عنصر البرمجة الجديد `Petal`
##### خطوات التنفيذ
###### 1. من فئة التحكم (Control)، أضف لبنة تكرار (repeat) ووضعها بعد لبنة "عندما بدأت (when started)".
###### 2. اضبط عدد مرات التكرار على 12.
###### 3. من فئة "عناصر برمجة جديدة (My blocks)"، أضف عنصر البرمجة الجديد `Petal` وأسقطه داخل لبنة التكرار 12 مرة.
###### 4. من فئة نظام الدفع (Drivetrain)، أضف لبنة انعطف (turn) ووضعها بعد عنصر البرمجة الجديد `Petal`.
###### 5. اضبط الانعطاف إلى 120 درجة.
#### نظام الدفع
##### أوامر التحكم الأساسية
###### تحرك إلى الأمام
###### تحرك إلى الأمام عدد 200 mm
###### انعطف يمين
###### انعطف يمين لمدة 90 درجة
###### انعطف لمواجهة 90 درجة
###### انعطف للدوران 90 درجة
###### أوقف القيادة
###### اضبط سرعة القيادة إلى 50 %
###### اضبط سرعة الانعطاف إلى 50 %
##### رسم الزهرة الكاملة
###### المقطع البرمجي الرئيس
####### عندما بدأت
####### تكرار 12 مرة:
######## استدعاء عنصر `Petal`
######## انعطف يمين لمدة 120 درجة
###### النتيجة
####### رسم زهرة مكونة من 12 بتلة باللون الأحمر في ملعب الفن قماش.
#### نافذة إنشاء/تعديل الكتلة
##### واجهة المستخدم
###### عنوان النافذة: "جعل كتلة" / "Make a Block"
###### معاينة الكتلة
####### تظهر اسم الكتلة ومعاملات الإدخال.
####### مؤشر رقمي (مثل 2، 3) فوق معامل الإدخال.
###### أزرار إضافة المدخلات
####### إضافة مدخلا رقم (Add an input number)
####### منطقية (Boolean)
####### إضافة تسمية (Add a label)
###### أزرار التنفيذ
####### موافق (OK)
####### إلغاء (Cancel)
##### أفضل ممارسة لتسمية المعاملات
###### يمكن كتابة اسم آخر لمعامل الإدخال.
###### من الجيد إعطاء اسم يصف فائدته (مثل: "طول جانب البتلة").
```
نقاط مهمة
- عند إنشاء كتلة مخصصة، تظهر نافذة تتيح إضافة معاملات إدخال (رقمية، منطقية، تسميات).
- يجب تسمية معامل الإدخال باسم يصف فائدته ووظيفته لزيادة وضوح الكود.
- مثال على اسم وصفي لمعامل إدخال: "طول جانب البتلة" بدلاً من الاسم الافتراضي "number".