📚 تكرار اللبنات البرمجية (لإنشاء مربع)
المفاهيم الأساسية
تكرار اللبنات البرمجية: إنشاء نسخة مطابقة من مجموعة لبنات برمجية بدلاً من إعادة إنشائها يدوياً لتجنب التكرار.
خريطة المفاهيم
```markmap
الوحدة الرابعة: برمجة الروبوت الافتراضي
التعريف والبيئة
الروبوت الافتراضي
منصة VEXcode VR
#### بيئة فيكس كود في آر (VEXcode VR)
##### واجهة البرمجة
###### قائمة ملف (File)
###### شريط الأدوات
###### مساحة العمل
###### فئات اللبنات البرمجية
####### نظام الدفع / Drivetrain
######## تتحكم في حركة الروبوت في ساحة اللعب.
######## لبنات الحركة الأساسية
######### تحرك إلى ( ) ( )
########## تحرك الروبوت مسافة محددة للأمام أو للخلف.
######### انعطف ( ) ( )
########## تنفذ انعطاف الروبوت بقيمة محددة من الدرجات يميناً أو يساراً.
######### أوقف القيادة (stop driving)
########## توقف حركة الروبوت.
######### اضبط سرعة القيادة إلى ( ) (set drive velocity)
########## تضبط تسارع الروبوت.
######### اضبط سرعة الانعطاف إلى ( ) (set turn velocity)
########## تضبط سرعة انعطاف الروبوت.
########## نطاق القيم: تقبل اللبنتان الخاصتان بالتسارع قيماً تتراوح بين 0% إلى 100%.
####### مغناطيس / Magnet
####### العرض / Looks
####### أحداث / Events
####### تحكم / Control
####### الاستشعار / Sensing
####### العمليات / Operators
####### المتغيرات / Variables
####### عناصر برمجة جديدة / My blocks
####### التعليقات / Comments
###### فتح / إغلاق لوحة اللبنات البرمجية
###### تكبير / تصغير اللبنات البرمجية
###### حجم العرض القياسي
##### طريقة البرمجة
###### سحب اللبنات البرمجية إلى مساحة العمل وتوصيلها معًا
###### واجهة بايثون (Python) النصية
###### ساحة اللعب
####### مساحة افتراضية للروبوت
######## منطقة المحاكاة
######## الشبكة الأرضية
######## الروبوت
######## أزرار التحكم في الكاميرا وإعادة التعيين
######## طرق العرض المختلفة لساحة اللعب
######### Top Camera (الكاميرا العلوية)
######### Chase Camera (كاميرا التتبع)
######### First Person Camera (كاميرا الشخص الأول)
######## لوحة التحكم (Dashboard)
######### الوظيفة
######### كيفية الوصول إليها
######### البيانات المعروضة
أهداف التعلم
الأدوات
الروبوتات الافتراضية
مكونات الروبوت الافتراضي
إنشاء مقطع برمجي
طرق البرمجة في VEXcode VR
#### باستخدام اللبنات البرمجية
#### المزج بين اللبنات البرمجية والبرمجة النصية
##### معاينة برنامج بايثون المقابل تلقائياً
#### باستخدام البرمجة النصية (بايثون)
##### استخدام أسطر تعليمات برمجية مسبقة بالسحب والإفلات
تنفيذ المقطع البرمجي
#### الضغط على زر التشغيل في شريط الأدوات
#### الضغط على زر التشغيل في ساحة اللعب
عناصر التحكم في الواجهة (من الشكل)
#### زر التشغيل (Play)
#### زر الإيقاف (Stop)
#### زر البداية (Start)
#### مؤقت (Timer)
#### زر مشاركة (Share)
مثال: برمجة حركة على خريطة شبكة
#### ساحة اللعب: خريطة شبكة (Grid Map)
##### طول ضلع كل مربع: 200 مم
#### المهمة: تحريك الروبوت ليشكل مربعًا (3×3)
#### لبنات البرمجة المستخدمة
##### لبنة "عندما بدأت" (تُضاف افتراضيًا)
##### لبنة "تحرك إلى الأمام" من فئة الدفع
###### تحديد المسافة: 400 مم (لتحريك الروبوت مربعين للأمام)
####### إنشاء الضلع والزاوية
######## من فئة نظام الدفع (Drivetrain):
######## لبنة "تحرك إلى الأمام" (drive for): تُسحب وتوضع بعد لبنة "عندما بدأت" (when started) وتُضبط المسافة إلى 400.
######## لبنة "انعطف" (turn for): تُسحب وتوضع بعد لبنة "تحرك إلى الأمام".
####### تكرار اللبنات البرمجية
######## الطريقة: الضغط بزر الفأرة الأيمن على اللبنات المراد تكرارها لإنشاء نسخة مطابقة.
######## السبب: المربع له 4 أضلاع و4 زوايا متساوية، لذا يتم تكرار خطوة إنشاء الضلع والزاوية 3 مرات أخرى.
######## وحدة القياس: يمكن ضبط مسافة تحرك الروبوت بالمليمتر (mm) أو البوصة.
```
نقاط مهمة
- لإنشاء مربع (4 أضلاع متساوية، 4 زوايا قائمة) ننشئ ضلعاً وزاوية ثم نكرر الخطوة 3 مرات.
- خطوات إنشاء الضلع والزاوية:
1. من فئة
نظام الدفع (Drivetrain)، اسحب لبنة
تحرك إلى الأمام (drive for) وضعها بعد لبنة
عندما بدأت (when started)، واضبط المسافة على
400.
2. من نفس الفئة، اسحب لبنة انعطف (turn for) وضعها بعد لبنة التحرك.
- يمكن ضبط مسافة تحرك الروبوت بوحدة المليمتر (mm) أو البوصة.
- لتكرار اللبنات البرمجية (مثل لبنتي التحرك والانعطاف)، اضغط بزر الفأرة الأيمن عليها لإنشاء نسخة مطابقة، مما يوفر الوقت.