Turtle Graphics Logo ভাষায় গ্রাফিক্স এবং অ্যানিমেশন তৈরি করার একটি শক্তিশালী উপায়। Turtle Graphics মূলত একটি পয়েন্ট বা "টার্টল" ব্যবহার করে গ্রাফিক্যাল আউটপুট তৈরি করে, যেখানে এটি নির্দিষ্ট নির্দেশনা অনুসারে চলতে থাকে এবং বিভিন্ন আকৃতি আঁকে। অ্যানিমেশন তৈরি করার জন্য আমরা পুনরাবৃত্তি (recursion) বা লুপ (loop) ব্যবহার করতে পারি, যাতে একাধিক অবস্থানে টার্টলকে দ্রুত বা ধীরে চলতে দেওয়া হয় এবং তা অ্যানিমেশন সৃষ্টি করে।
নিচে Turtle Graphics ব্যবহার করে অ্যানিমেশন তৈরি করার কিছু উদাহরণ দেওয়া হলো:
১. Moving Circle Animation (চলন্ত বৃত্ত অ্যানিমেশন)
এটি একটি সাধারণ উদাহরণ যেখানে একটি বৃত্ত তৈরি হবে এবং টার্টল সেটি পরপর আঁকবে, যা চলন্ত বৃত্তের মতো দেখাবে।
কোড:
TO movingCircle :radius
REPEAT 36 [ ; ৩৬ বার পুনরাবৃত্তি হবে
CLEARSCREEN ; স্ক্রীন পরিষ্কার করবে প্রতিবার
CIRCLE :radius ; একটি বৃত্ত আঁকবে
RIGHT 10 ; ১০ ডিগ্রী ঘুরে পরবর্তী অবস্থান নির্ধারণ করবে
]
END
movingCircle 50 ; ৫০ পিক্সেল রেডিয়াস দিয়ে বৃত্ত আঁকার জন্য ফাংশন কলএখানে:
- REPEAT 36: ৩৬টি সেকেন্ডে এটি একটি পূর্ণ বৃত্ত আঁকবে, ১০ ডিগ্রী করে ঘুরে টার্টল পরবর্তী অবস্থানে পৌঁছাবে।
- CLEARSCREEN: এটি প্রতিবার স্ক্রীন পরিষ্কার করে যাতে আগের অবস্থান দৃশ্যমান না থাকে, এবং নতুন অবস্থানে অ্যানিমেশন চলতে থাকে।
২. Moving Square Animation (চলন্ত বর্গ অ্যানিমেশন)
এটি একটি উদাহরণ যেখানে একটি বর্গ (square) এক জায়গা থেকে অন্য জায়গায় চলবে।
কোড:
TO movingSquare :size
REPEAT 50 [
CLEARSCREEN ; স্ক্রীন পরিষ্কার করবে
REPEAT 4 [
FORWARD :size ; বর্গ আঁকার জন্য ৪টি সাইড এগিয়ে যাবে
RIGHT 90
]
FORWARD 5 ; বর্গের পরবর্তী অবস্থানে যাওয়ার জন্য ৫ পিক্সেল এগিয়ে যাবে
]
END
movingSquare 50 ; ৫০ পিক্সেল সাইড দৈর্ঘ্য দিয়ে বর্গ আঁকার জন্য ফাংশন কলএখানে:
- REPEAT 50: ৫০ বার এই কোডটি পুনরাবৃত্তি হবে, যা একটি চলন্ত বর্গ তৈরি করবে।
- FORWARD 5: টার্টল প্রতি ধাপে ৫ পিক্সেল এগিয়ে যাবে, যাতে বর্গটি পরপর এগিয়ে চলে এবং একটি চলন্ত অ্যানিমেশন তৈরি হয়।
৩. Rotating Star Animation (ঘুরন্ত তারা অ্যানিমেশন)
এটি একটি উদাহরণ যেখানে একটি তারা তৈরি হবে এবং প্রতিবার ঘুরে অবস্থান পরিবর্তন করবে, যার ফলে একটি ঘুরন্ত তারা অ্যানিমেশন তৈরি হবে।
কোড:
TO rotatingStar :size
REPEAT 36 [
REPEAT 5 [
FORWARD :size ; তারা আঁকার জন্য সাইড এগিয়ে যাবে
RIGHT 144 ; ১৪৪ ডিগ্রী ঘুরবে
]
RIGHT 10 ; পরবর্তী অবস্থানে যাওয়ার জন্য ১০ ডিগ্রী ঘুরবে
]
END
rotatingStar 100 ; ১০০ পিক্সেল সাইড দৈর্ঘ্য দিয়ে তারা আঁকার জন্য ফাংশন কলএখানে:
- REPEAT 36: ৩৬ বার এটি একটি পূর্ণ ঘুরন্ত তারা তৈরি করবে।
- RIGHT 144: ৫ পয়েন্টের তারা আঁকার জন্য টার্টলকে ১৪৪ ডিগ্রী ঘুরানো হবে।
- RIGHT 10: এটি টার্টলকে ১০ ডিগ্রী ঘুরিয়ে পরবর্তী পয়েন্টে নিয়ে যাবে, ফলে পুরো অ্যানিমেশন ঘুরন্ত তারা তৈরি করবে।
৪. Moving Spiral Animation (চলন্ত স্পাইরাল অ্যানিমেশন)
এটি একটি উদাহরণ যেখানে একটি স্পাইরাল আঁকা হবে এবং প্রতিবার আকার ছোট হতে থাকবে, যা একটি চলন্ত স্পাইরাল অ্যানিমেশন তৈরি করবে।
কোড:
TO movingSpiral :size
REPEAT 100 [
FORWARD :size
RIGHT 15
:size = :size + 2 ; আকার বাড়াতে থাকবে
]
END
movingSpiral 1 ; ১ পিক্সেল দিয়ে স্পাইরাল আঁকার জন্য ফাংশন কলএখানে:
- REPEAT 100: ১০০ বার এটি স্পাইরাল আঁকার জন্য পুনরাবৃত্তি হবে।
- FORWARD :size: প্রতিবার স্পাইরালটির আকার বাড়ানো হবে।
- RIGHT 15: এটি প্রতিটি স্টেপে ১৫ ডিগ্রী ডান দিকে ঘুরিয়ে স্পাইরাল তৈরি করবে।
5. Color Changing Animation (রঙ পরিবর্তনকারী অ্যানিমেশন)
এটি একটি উদাহরণ যেখানে অ্যানিমেশন চলার সময় টার্টলের পেনের রঙ পরিবর্তন হবে।
কোড:
TO colorChangingAnimation
REPEAT 100 [
SETCOLOR (RANDOM 255) (RANDOM 255) (RANDOM 255) ; র্যান্ডম রঙ সেট করা
FORWARD 50
RIGHT 45
]
END
colorChangingAnimationএখানে:
- SETCOLOR (RANDOM 255) (RANDOM 255) (RANDOM 255): এটি র্যান্ডম রঙ তৈরি করে এবং প্রতিটি লাইন আঁকার জন্য রঙ পরিবর্তন করবে।
- FORWARD 50: ৫০ পিক্সেল এগিয়ে যাবে, এবং RIGHT 45: প্রতি স্টেপে ৪৫ ডিগ্রী ডান দিকে ঘুরবে।
সারসংক্ষেপ:
Turtle Graphics ব্যবহার করে আপনি Logo ভাষায় সহজেই বিভিন্ন অ্যানিমেশন তৈরি করতে পারেন। Recursion, REPEAT, RIGHT, এবং SETCOLOR এর মতো কমান্ড ব্যবহার করে চলন্ত আকৃতি, ঘুরন্ত ডিজাইন, স্পাইরাল, বৃত্ত, বর্গ, তারা ইত্যাদি অ্যানিমেশন তৈরি করা সম্ভব। এই কমান্ডগুলো অ্যানিমেশনকে আরও সৃজনশীল এবং মজাদার করতে সহায়ক।
Read more