📚 رسم زهرة باستخدام عنصر برمجة جديد
المفاهيم الأساسية
عنصر برمجة جديد (My Block) "Petal": عنصر برمجة مخصص تم إنشاؤه لرسم بتلة واحدة. يأخذ معامل إدخال رقمي يسمى `Petal side length` (طول جانب البتلة) للتحكم في حجم البتلة المرسومة.
خريطة المفاهيم
```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)
##### أفضل ممارسة لتسمية المعاملات
###### يمكن كتابة اسم آخر لمعامل الإدخال.
###### من الجيد إعطاء اسم يصف فائدته (مثل: "طول جانب البتلة").
#### تطبيق المعامل في المقطع البرمجي
##### يظهر المعامل "Petal side length" كبنة عرض متغير في لبنة تعريف عنصر البرمجة الجديد "Petal".
##### خطوات وضع معامل الإدخال في المقطع البرمجي
###### 1. اضغط على لبنة معامل عرض المعامل "Petal side length" في لبنة تعريف (define)، وأفلتها على الموضع الأول الذي يوجد فيه الرقم 180.
###### 2. اضغط على لبنة معامل عرض المعامل "Petal side length" في لبنة تعريف (define)، وأفلتها على الموضع الثاني الذي يوجد فيه الرقم 180.
##### معلومة
###### يمكن إنشاء أكثر من مدخل رقمي إلى عنصر البرمجة الجديد باتباع نفس العملية وحسب الحاجة.
#### إعطاء رقم إدخال إلى عنصر البرمجة الجديد
##### الغرض
###### ضبط طول جوانب البتلة المكونة لحجم الزهرة.
##### مثال
###### عند ضبط رقم الإدخال على 100، يرسم روبوت الواقع الافتراضي زهرة صغيرة.
##### خطوات التنفيذ
###### 1. إنشاء المقطع البرمجي التالي:
####### عندما بدأت
####### تكرار 12 مرة
###### 2. ضبط رقم الإدخال ليكون 100:
####### داخل التكرار، استخدام عنصر `Petal` بقيمة 100.
####### داخل التكرار، إضافة أمر "انعطف يمين 120 درجة".
#### شكل المقطع البرمجي في ملعب الفن قماش
##### المقطع البرمجي الرئيسي
###### عندما بدأت
###### تكرار 12 مرة
####### عنصر `Petal` بقيمة 100
####### انعطف يمين 120 درجة
##### تعريف عنصر `Petal`
###### معامل الإدخال: `Petal side length`
###### المقطع البرمجي داخل التعريف:
####### اضبط لون القلم على أحمر
####### اضبط عرض القلم على نحيف للغاية
####### أنزل القلم
####### تكرار 3 مرات:
######## تحرك إلى الأمام `Petal side length` mm
######## انعطف يمين 30 درجة
####### انعطف يمين 90 درجة
####### تكرار 3 مرات:
######## تحرك إلى الأمام `Petal side length` mm
######## انعطف يمين 30 درجة
##### النتيجة الرسومية
###### رسم زهرة مكونة من 12 بتلة باللون الأحمر في ملعب الفن قماش.
```
نقاط مهمة
- يتم استدعاء العنصر الجديد `Petal` داخل حلقة `تكرار 12 مرة` لرسم 12 بتلة.
- بعد رسم كل بتلة، يتم تدوير الروبوت بمقدار `120 درجة` لضمان توزيع البتلات بشكل متساوٍ حول المركز.
- قيمة الإدخال `100` تُمرر إلى معامل `Petal side length` داخل العنصر `Petal`، مما يحدد حجم كل بتلة وبالتالي حجم الزهرة النهائية.
- الناتج النهائي هو شكل زهرة متماثلة ذات 12 بتلة باللون الأحمر.