সাধারণ লাইব্রেরি - পট#
গ্রাফিক্স সম্পর্কিত কাজের জন্য এই উৎসে অনেকগুলি কাজ বর্তমান। এই গ্রাফিক্স উৎস দিয়ে গেম তৈরি, দৃশ্যমান প্রোগ্রাম তৈরি ইত্যাদি কাজ সহজ করে তোলা হয়েছে। এই উৎসটি কোনো স্ক্রিপ্টে এইভাবে আনতে হয় -
আনয়ন পট "পট"
পট.নতুন( পর্দার_দৈর্ঘ্য, পর্দার_প্রস্থ, পর্দার_শিরোনাম )#
পটচিত্রের মূল পর্দা/Window তৈরি করার জন্য এই কাজটি প্রয়োজনীয় প্রস্তুতি সম্পূর্ণ করে। পর্দার দৈর্ঘ্য, পর্দার প্রস্থ প্রেরণমানগুলি সংখ্যা হবে এবং পর্দার শিরোনাম একটি কথারাশি হবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| পর্দার_দৈর্ঘ্য | সংখ্যা | - |
| পর্দার_প্রস্থ | সংখ্যা | - |
| পর্দার_শিরোনাম | কথারাশি | - |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
পট.নতুন(800, 600, "পট")
পট.বন্ধ()#
পটচিত্রের মূল পর্দা/Window বন্ধ করার জন্য এই কাজটি ব্যবহার করা হয়।
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
পট.বন্ধ()
পট.চলমান()#
পটের মূল পর্দা/Window ব্যবহারকারী যতক্ষণ না বন্ধ করে ততক্ষণ এই কাজটি সত্যি ফেরত দেবে।
সাধারণত গেমের প্রধান লুপের শর্ত হিসাবে ব্যবহার করা হয়।
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
যতক্ষণ পট.চলমান() করো
// এখানে মূল অঙ্কন এবং কিবোর্ড ইত্যাদি নিয়ে কাজ করা হবে
শেষ
পট.আঁকা_শুরু()#
প্রতিটি ফ্রেমের শুরুতে এই কাজটি চালাতে হবে যাতে পর্দার মধ্যে এর পরবর্তী অঙ্কনের কাজগুলি সঠিকভাবে কাজ করতে পারে। ডেল্টা সময় এই কাজের মধ্যেই অভ্যন্তরীণ ভাবে গণনা করা হয়। পট.আঁকা_শুরু() এবং পট.আঁকা_শেষ() এই দুই কাজের মধ্যে অঙ্কনের কাজগুলি লিখলেই তবে সেগুলি প্রতি ফ্রেমে দৃশ্যমান হবে।
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
পট.আঁকা_শুরু()
// এই দুই কাজের মধ্যে সমস্ত অঙ্কনের কাজগুলি থাকবে
পট.আঁকা_শেষ()
পট.আঁকা_শেষ()#
প্রতিটি ফ্রেমের শেষ এই কাজটি চালাতে হবে যাতে পূর্ববর্তী অঙ্কনের কাজগুলি পর্দাতে দেখানো হয়।
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
পট.আঁকা_শুরু()
// এই দুই কাজের মধ্যে সমস্ত অঙ্কনের কাজগুলি থাকবে
পট.আঁকা_শেষ()
পট.পরিষ্কার()#
এই কাজ পর্দাটিতে এই কাজের ডাকের আগে পর্যন্ত যত কিছু আঁকা হয়েছে তা সব মুছে ফেলে। সাধারণত প্রতিটি ফ্রেমের শুরুতে এই কাজটি ব্যবহার করে পর্দাটি পরিষ্কার করে নেওয়া হয়।
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
এই নির্দেশলিপিটি চালালে একটি ফাঁকা সাদা পর্দা দেখাবে
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.রেখা( ক, খ, গ, ঘ, রঙ )#
এই কাজটি পর্দার উপর একটি রেখা আঁকে। ক, খ অবস্থান থেকে গ, ঘ অবস্থান পর্যন্ত রেখাটি আঁকা হয়।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | রেখার প্রথম বিন্দুর X অক্ষে অবস্থান |
| খ | সংখ্যা | রেখার প্রথম বিন্দুর Y অক্ষে অবস্থান |
| গ | সংখ্যা | রেখার শেষ বিন্দুর X অক্ষে অবস্থান |
| ঘ | সংখ্যা | রেখার শেষ বিন্দুর Y অক্ষে অবস্থান |
| রঙ | কথারাশি | রেখার রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.রেখা(১০, ১০, ১০০, ১০০, "লাল") //ক, খ (x1, y1) অবস্থান থেকে গ, ঘ (x2, y2) অবস্থান পর্যন্ত
পট.রেখা(৫০০, ৫০০, ৪০০ , ৫০, "নীল") //ক, খ (x1, y1) অবস্থান থেকে গ, ঘ (x2, y2) অবস্থান পর্যন্ত
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বিন্দু( ক, খ, রঙ )#
এই কাজটি ক, খ (x, y) অবস্থানে একটি বিন্দু আঁকে।
মুলত অতি সূক্ষ্ম কাজের জন্য একক বিন্দু আঁকার কাজটি ব্যবহার করা হয়। এটি এতই ছোট হয় যে খালি একটি একক বিন্দু ভালো করে দেখা যায়না।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | বিন্দুর X অক্ষে অবস্থান |
| খ | সংখ্যা | বিন্দুর Y অক্ষে অবস্থান |
| রঙ | কথারাশি | বিন্দুর রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
একটি একক বিন্দু এতই ছোট হয় যে খালি চোখে ভালো করে দেখাই যায় না। তাই অনেক সময় কোনো লুপ যেমন যতক্ষণ…করো -এর ভেতর এই কাজটি ব্যবহার করা হয়
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
ধরি ক = ০
যতক্ষণ ক < ২৫০ করো
পট.বিন্দু(ক,১০০, "লাল") //ক, খ (x1, y1) অবস্থান
ক = ক + ১
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.আয়তক্ষেত্র( ক, খ, দৈর্ঘ্য, প্রস্থ, রঙ )#
এই কাজটি ক, খ অবস্থান থেকে শুরু করে দৈর্ঘ্য, প্রস্থ আয়তনের একটি নিরেট আয়তক্ষেত্র আঁকে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর X অক্ষের অবস্থান |
| খ | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর Y অক্ষে অবস্থান |
| দৈর্ঘ্য | সংখ্যা | |
| প্রস্থ | সংখ্যা | |
| রঙ | কথারাশি | আয়তক্ষেত্রের রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
নীচের উদাহরণটি পর্দার উপর একটি ২০০ পিক্সেল দৈর্ঘ্য এবং ৩০০ পিক্সেল প্রস্থ বিশিষ্ট নিরেট লাল রঙের আয়তক্ষেত্র আঁকবে, যার বাম বাহু থাকবে ২০০ পিক্সেল অবস্থানে এবং উপরের বাহু থাকে ১৫০ পিক্সেল অবস্থানে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.আয়তক্ষেত্র(১০০, ১৫০, ২০০, ৩০০, "লাল") // ২০০ পিক্সেল দৈর্ঘ্য এবং ৩০০ পিক্সেল প্রস্থ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.আয়তক্ষেত্র_রেখা( ক, খ, দৈর্ঘ্য, প্রস্থ, পুরুত্ব, রঙ )#
এই কাজটি ক, খ অবস্থান থেকে শুরু করে দৈর্ঘ্য, প্রস্থ আয়তনের একটি শুধুমাত্র রেখা বিশিষ্ট আয়তক্ষেত্র আঁকে এবং পুরুত্ব প্রেরণমান থেকে সেই রেখার পুরুত্ব নির্ধারিত হবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর X অক্ষের অবস্থান |
| খ | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর Y অক্ষে অবস্থান |
| দৈর্ঘ্য | সংখ্যা | |
| প্রস্থ | সংখ্যা | |
| পুরুত্ব | সংখ্যা | আয়তক্ষেত্রের রেখার পুরুত্ত্ব(Thickness) |
| রঙ | কথারাশি | আয়তক্ষেত্রের রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
এই উদাহরণটি আগের পট.আয়তক্ষেত্র(...) কাজের উদাহরণ কিন্তু এখানে নতুন একটি প্রেরণমান যোগ হয়েছে পুরুত্ব যার মান ৫ পিক্সেল।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.আয়তক্ষেত্র_রেখা(১০০, ১৫০, ২০০, ৩০০, ৫, "লাল") // ২০০ পিক্সেল দৈর্ঘ্য এবং ৩০০ পিক্সেল প্রস্থ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বৃত্ত( ক, খ, ব্যাসার্ধ, রঙ )#
এই কাজটি ক, খ অবস্থানে বৃত্তের মধ্যবিন্দু বা কেন্দ্র রেখে একটি ব্যসার্ধ প্রেরণমানের ব্যসার্ধ যুক্ত নিরেট বৃত্ত আঁকে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | বৃত্তের মধ্যবিন্দুর X অক্ষের অবস্থান |
| খ | সংখ্যা | বৃত্তের মধ্যবিন্দুর Y অক্ষের অবস্থান |
| ব্যাসার্ধ | সংখ্যা | বৃত্তের ব্যাসার্ধ |
| রঙ | কথারাশি | বৃত্তের রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
এই উদাহরণটি ২৫০, ২৫০ ক, খ (X, Y) অবস্থানে কেন্দ্র রেখে একটি লাল রঙের বৃত্ত আঁকবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.বৃত্ত(২৫০, ২৫০, ৫০, "লাল") //বৃত্তের মধ্য বিন্দুর অবস্থান ২৫০, ২৫০ এবং ব্যসার্ধ ৫০ পিক্সেল
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বৃত্ত_রেখা( ক, খ, ব্যাসার্ধ, পুরুত্ব, রঙ )#
এই কাজটি ক, খ অবস্থানে বৃত্তের মধ্যবিন্দু বা কেন্দ্র রেখে একটি ব্যসার্ধ প্রেরণমানের ব্যাসার্ধ যুক্ত শুধুমাত্র রেখা বিশিষ্ট বৃত্ত আঁকে এবং পুরুত্ব প্রেরণমান থেকে সেই রেখার পুরুত্ব নির্ধারিত হবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | বৃত্তের মধ্যবিন্দুর X অক্ষের অবস্থান |
| খ | সংখ্যা | বৃত্তের মধ্যবিন্দুর Y অক্ষের অবস্থান |
| ব্যাসার্ধ | সংখ্যা | বৃত্তের ব্যাসার্ধ |
| পুরুত্ত্ব | সংখ্যা | বৃত্তের রেখার পুরুত্ত্ব(Thickness) |
| রঙ | কথারাশি | বৃত্তের রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.বৃত্ত_রেখা(২৫০, ২৫০, ৫০, ৫, "নীল") //বৃত্তের মধ্য বিন্দুর অবস্থান ২৫০, ২৫০ এবং ব্যসার্ধ ৫০ পিক্সেল
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.লেখা( ক, খ, কথা, আয়তন, রঙ )#
এই কাজ পর্দায় একটি কথারাশি লেখা প্রদর্শন করে। বাংলা এবং ইংরেজি উভয় ভাষাই কাজ করে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | লেখার বাম-উপর কোনের X অক্ষের অবস্থান |
| খ | সংখ্যা | লেখার বাম-উপর কোনের Y অক্ষের অবস্থান |
| কথা | কথারাশি | লেখার কথা |
| আয়তন | সংখ্যা | লেখার আয়তন |
| রঙ | কথারাশি | লেখার রঙ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.লেখা(১০, ১০, "পঙক্তি প্রোগ্রামিং ভাষা", ৫০, "নীল") //১০,১০ X,Y অবস্থানে ৫০ পিক্সেল আয়তনের লেখা
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বোতাম_চাপা( বোতামের_নাম )#
এই কাজটি বোতামের_নাম বোতামটি এই মুহূর্তে চাপা (Pressed) হয়েছে কি না যাচাই করে সত্যমান ফেরত দেয়। যে ফ্রেমে বোতামটি চাপা হল সেই ফ্রেমেই সত্যি ফেরত দেবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | কিবোর্ডের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে a নামের বোতাম যে মুহূর্তে চাপা হবে সেই মুহূর্তের জন্য নীল আয়তক্ষেত্রের বদলে একটি লাল আয়তক্ষেত্র দেখাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.বোতাম_চাপা("a") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বোতাম_চাপা_আছে( বোতামের_নাম )#
এই কাজটি বোতামের_নাম বোতামটি ধরে রাখা আছে কি না যাচাই করে সত্যমান ফেরত দেবে। বোতাম চাপা থাকলে প্রতিটি ফ্রেমেই সত্যি ফেরত দেবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | কিবোর্ডের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে a নামের বোতাম যতক্ষণ চাপা থাকবে ততক্ষণ লাল রঙের আয়তক্ষেত্র দেখাবে আর ছাড়া থাকলে নীল রঙের আয়তক্ষেত্র দেখাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.বোতাম_চাপা_আছে("a") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বোতাম_ছাড়া( বোতামের_নাম )#
এই কাজটি এই মুহূর্তে বোতামের_নাম বোতামটি ছাড়া হয়েছে কি না যাচাই করে সত্যমান ফেরত দেয়। যে ফ্রেমে বোতামটি ছাড়া হবে সেই ফ্রেমেই সত্যি ফেরত দেবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | কিবোর্ডের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে a নামের বোতাম চাপা থাকার পর যে মুহূর্তে ছাড়া হবে সেই মুহূর্তের জন্য একটি নীল আয়তক্ষেত্র দেখাবে আর বাকি সময় একটি লাল আয়তক্ষেত্র দেখাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.বোতাম_ছাড়া("a") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.বোতাম_ছাড়া_আছে( বোতামের_নাম )#
এই কাজটি বোতামের_নাম বোতামটি ছাড়া আছে কি না যাচাই করে সত্যমান ফেরত দেয়।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | কিবোর্ডের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে যতক্ষণ a বোতাম ছাড়া থাকবে ততক্ষণ নীল রঙের আয়তক্ষেত্র দেখাবে আর চাপা হলেই সেটি লাল হয়ে যাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.বোতাম_ছাড়া_আছে("a") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.ছবি_আনয়ন( ছবির_পথ )#
এই কাজটি ছবির_পথ এ থাকা একটি ছবি খুলে তা লোড করে অর্থাৎ পট.ছবি_আঁকো(...) তে ব্যবহারের উপযোগী করে ছবির একটি বিশেষ কথারাশি ফেরত দেয় যাকে আমরা ছবির বিশেষ নাম বলতে পারি। এটি এইধরনের কথারাশি ফেরত দেয় ছবি:1
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ছবির_পথ | কথারাশি | ছবির পথ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| কথারাশি | ছবির বিশেষ নাম, উদাহরণঃ “ছবি:1”, “ছবি:2”, পট.ছবি_আঁকো(...) তে ব্যবহারের উপযোগী |
উদাহরণ#
যদি বর্তমান ফোল্ডারে একটি apple.png নামের একটি ছবি থাকে তাহলে সেটি এইভাবে এই কাজের মাধ্যমে লোড করা যায়।
আনয়ন পট "পট"
ধরি আমার_ছবি = পট.ছবি_আনয়ন("apple.png")
পট.ছবি_আঁকো( ক, খ, ছবির_নাম )#
এই কাজটি পট.ছবি_আনয়ন(...) থেকে ফেরত দেওয়া বিশেষ কথারাশি ছবির_নাম প্রেরণমানে নিয়ে সেটি ক, খ অবস্থানে পর্দার মধ্যে ফুটিয়ে তোলে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ক | সংখ্যা | ছবির বাম-উপর কোনের X অক্ষে অবস্থান |
| খ | সংখ্যা | ছবির বাম-উপর কোনের Y অক্ষে অবস্থান |
| ছবির_নাম | কথারাশি | পট.ছবি_আনয়ন(...) থেকে পাওয়া ছবির বিশেষ নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| নিল | - |
উদাহরণ#
আমরা যদি বর্তমানে ফোল্ডারে থাকা একটি apple.png নামের ছবি পট.ছবি_আনয়ন() কাজ দ্বারা লোড করা হয় এবং সেই কাজের ফেরত দেওয়া বিশেষ প্রেরণমান আমরা এইভাবে ফুটিয়ে তুলব
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
ধরি আমার_ছবি = পট.ছবি_আনয়ন("apple.png")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.ছবি_আঁকো(১০, ১০, আমার_ছবি)
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.মাউস_অবস্থান()#
এই কাজটি পর্দার উপর মাউসের অবস্থান একটি দুই উপাদান বিশিষ্ট তালিকা ফেরত দেয়। ফেরত মান কিছুটা এইরকম দেখতে হবে [ক, খ] যেখানে ক হল মাউসের X অক্ষের অবস্থান এবং খ হল মাউসের Y অক্ষে অবস্থান
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| তালিকা | [ক, খ] এইরকম দেখতে দুটি পুর্নসংখ্যা বিশিষ্ট মাউসের অবস্থান ফেরত দেয় |
উদাহরণ#
এই উদাহরণে আমরা প্রতি ফ্রেমে মাউসের অবস্থান নিয়ে সেই অবস্থানে একটি বৃত্ত আঁকছি। মাউস নাড়ালে দেখা যাবে, বৃত্তের অবস্থানও বদল হচ্ছে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
ধরি মাউস = পট.মাউস_অবস্থান()
পট.বৃত্ত(মাউস[০], মাউস[১], ১০, "লাল")
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.মাউস_চাপা( বোতামের_নাম )#
এই কাজটি বোতামের_নাম মাউস বোতামটি এই মুহূর্তে চাপা (Pressed) হয়েছে কি না যাচাই করে সত্যমান ফেরত দেয়। যে ফ্রেমে বোতামটি চাপা হল সেই ফ্রেমেই সত্যি ফেরত দেবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | মাউসের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে মাউসের বাম বোতাম যে মুহূর্তে চাপা হবে সেই মুহূর্তের জন্য নীল আয়তক্ষেত্রের বদলে একটি লাল আয়তক্ষেত্র দেখাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.মাউস_চাপা("বাম") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.মাউস_চাপা_আছে( বোতামের_নাম )#
এই কাজটি বোতামের_নাম মাউস বোতামটি ধরে রাখা আছে কি না যাচাই করে সত্যমান ফেরত দেবে। বোতাম চাপা থাকলে প্রতিটি ফ্রেমেই সত্যি ফেরত দেবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | মাউসের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে মাউসের বাম বোতাম যতক্ষণ চাপা থাকবে ততক্ষণ লাল রঙের আয়তক্ষেত্র দেখাবে আর ছাড়া থাকলে নীল রঙের আয়তক্ষেত্র দেখাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.মাউস_চাপা_আছে("বাম") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.মাউস_ছাড়া( বোতামের_নাম )#
এই কাজটি এই মুহূর্তে বোতামের_নাম মাউস বোতামটি ছাড়া হয়েছে কি না যাচাই করে সত্যমান ফেরত দেয়। যে ফ্রেমে বোতামটি ছাড়া হবে সেই ফ্রেমেই সত্যি ফেরত দেবে।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | মাউসের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে মাউসের বাম বোতাম চাপা থাকার পর যে মুহূর্তে ছাড়া হবে সেই মুহূর্তের জন্য একটি নীল আয়তক্ষেত্র দেখাবে আর বাকি সময় একটি লাল আয়তক্ষেত্র দেখাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.মাউস_ছাড়া("বাম") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.মাউস_ছাড়া_আছে( বোতামের_নাম )#
এই কাজটি বোতামের_নাম মাউস বোতামটি ছাড়া আছে কি না যাচাই করে সত্যমান ফেরত দেয়।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বোতামের_নাম | কথারাশি | মাউসের বোতামের নাম |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণটি চালালে যতক্ষণ মাউসের বাম বোতাম ছাড়া থাকবে ততক্ষণ নীল রঙের আয়তক্ষেত্র দেখাবে আর চাপা হলেই সেটি লাল হয়ে যাবে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
যদি পট.মাউস_ছাড়া_আছে("বাম") তাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "নীল")
নাহলে
পট.আয়তক্ষেত্র(১০, ১০, ১০০, ১০০, "লাল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.স্পর্শ_আয়তক্ষেত্র( ১ম_আয়তক্ষেত্র_ক, ১ম_আয়তক্ষেত্র_খ, ১ম_আয়তক্ষেত্র_দৈর্ঘ্য, ১ম_আয়তক্ষেত্র_প্রস্থ, ২য়_আয়তক্ষেত্র_ক, ২য়_আয়তক্ষেত্র_খ, ২য়_আয়তক্ষেত্র_দৈর্ঘ্য, ২য়_আয়তক্ষেত্র_প্রস্থ )#
এই কাজ দুটি আয়তক্ষেত্রের মধ্যে সংঘর্ষ হচ্ছে কি না যাচাই করে সত্যমান ফেরত দেয়।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| ১ম_আয়তক্ষেত্র_ক | সংখ্যা | প্রথম আয়তক্ষেত্রের বাম-উপর বিন্দুর X অক্ষের অবস্থান |
| ১ম_আয়তক্ষেত্র_খ | সংখ্যা | প্রথম আয়তক্ষেত্রের বাম-উপর বিন্দুর Y অক্ষে অবস্থান |
| ১ম_আয়তক্ষেত্র_দৈর্ঘ্য | সংখ্যা | প্রথম আয়তক্ষেত্রের দৈর্ঘ্য |
| ১ম_আয়তক্ষেত্র_প্রস্থ | সংখ্যা | প্রথম আয়তক্ষেত্রের প্রস্থ |
| ২য়_আয়তক্ষেত্র_ক | সংখ্যা | দ্বিতীয় আয়তক্ষেত্রের বাম-উপর বিন্দুর X অক্ষের অবস্থান |
| ২য়_আয়তক্ষেত্র_খ | সংখ্যা | দ্বিতীয় আয়তক্ষেত্রের বাম-উপর বিন্দুর Y অক্ষে অবস্থান |
| ২য়_আয়তক্ষেত্র_দৈর্ঘ্য | সংখ্যা | দ্বিতীয় আয়তক্ষেত্রের দৈর্ঘ্য |
| ২য়_আয়তক্ষেত্র_প্রস্থ | সংখ্যা | দ্বিতীয় আয়তক্ষেত্রের প্রস্থ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এই উদাহরণে দুটি আয়তক্ষেত্র একে অপরকে স্পর্শ করছে, কিন্তু আয়তক্ষেত্র_২ -এর খ (Y) অবস্থান ১০০ করলেই দেখা যাবে একে অপরকে স্পর্শ করবে না।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
ধরি আয়তক্ষেত্র_১ = {
"ক": ১০,
"খ": ১০,
"দৈর্ঘ্য": ৫০,
"প্রস্থ": ১০০
}
ধরি আয়তক্ষেত্র_২ = {
"ক": ১০০,
"খ": ১০,
"দৈর্ঘ্য": ১০০,
"প্রস্থ": ৫০
}
যদি পট.স্পর্শ_আয়তক্ষেত্র(আয়তক্ষেত্র_১["ক"], আয়তক্ষেত্র_১["খ"], আয়তক্ষেত্র_১["দৈর্ঘ্য"], আয়তক্ষেত্র_১["প্রস্থ"], আয়তক্ষেত্র_২["ক"], আয়তক্ষেত্র_২["খ"], আয়তক্ষেত্র_২["দৈর্ঘ্য"], আয়তক্ষেত্র_২["প্রস্থ"]) তাহলে
// দুটি আয়তক্ষেত্র একে অপরকে স্পর্শ করছে
শেষ
এই উদাহরণে উপরের উদাহরণের একটি দৃশ্যমান ব্যবস্থা তৈরি করা হয়েছে, যতক্ষণ দুটি আয়তক্ষেত্র একে অপরকে স্পর্শ করবে তখন দ্বিতীয় আয়তক্ষেত্রের রঙ নীলের বদলে লাল হয়ে যাবে। এখানে আয়তক্ষেত্র_২ -এর খ (Y) অক্ষে অবস্থান বদল করে ২০০ করে দিলে দেখা যাবে দুটি আয়তক্ষেত্রই নীল রঙের দেখাচ্ছে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
ধরি আয়তক্ষেত্র_১ = {
"ক": ১০,
"খ": ১০,
"দৈর্ঘ্য": ৫০,
"প্রস্থ": ১০০
}
ধরি আয়তক্ষেত্র_২ = {
"ক": ১০০,
"খ": ১০,
"দৈর্ঘ্য": ১০০,
"প্রস্থ": ৫০
}
যতক্ষণ পট.চলমান() করো
পট.পরিষ্কার()
পট.আঁকা_শুরু()
পট.আয়তক্ষেত্র(আয়তক্ষেত্র_১["ক"], আয়তক্ষেত্র_১["খ"], আয়তক্ষেত্র_১["দৈর্ঘ্য"], আয়তক্ষেত্র_১["প্রস্থ"], "নীল")
যদি পট.স্পর্শ_আয়তক্ষেত্র(আয়তক্ষেত্র_১["ক"], আয়তক্ষেত্র_১["খ"], আয়তক্ষেত্র_১["দৈর্ঘ্য"], আয়তক্ষেত্র_১["প্রস্থ"], আয়তক্ষেত্র_২["ক"], আয়তক্ষেত্র_২["খ"], আয়তক্ষেত্র_২["দৈর্ঘ্য"], আয়তক্ষেত্র_২["প্রস্থ"]) তাহলে
পট.আয়তক্ষেত্র(আয়তক্ষেত্র_২["ক"], আয়তক্ষেত্র_২["খ"], আয়তক্ষেত্র_২["দৈর্ঘ্য"], আয়তক্ষেত্র_২["প্রস্থ"], "লাল")
নাহলে
পট.আয়তক্ষেত্র(আয়তক্ষেত্র_২["ক"], আয়তক্ষেত্র_২["খ"], আয়তক্ষেত্র_২["দৈর্ঘ্য"], আয়তক্ষেত্র_২["প্রস্থ"], "নীল")
শেষ
পট.আঁকা_শেষ()
শেষ
পট.বন্ধ()
পট.স্পর্শ_বিন্দু_আয়তক্ষেত্র( বিন্দু_ক, বিন্দু_খ, আয়তক্ষেত্র_ক, আয়তক্ষেত্র_খ, আয়তক্ষেত্র_দৈর্ঘ্য, আয়তক্ষেত্র_প্রস্থ )#
এই কাজ একটি বিন্দু একটি আয়তক্ষেত্রকে স্পর্শ করছে কি না যাচাই করে সত্যমান ফেরত দেয়।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বিন্দু_ক | সংখ্যা | বিন্দুর X অক্ষে অবস্থান |
| বিন্দু_খ | সংখ্যা | বিন্দুর Y অক্ষে অবস্থান |
| আয়তক্ষেত্র_ক | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর X অক্ষের অবস্থান |
| আয়তক্ষেত্র_খ | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর Y অক্ষে অবস্থান |
| আয়তক্ষেত্র_দৈর্ঘ্য | সংখ্যা | আয়তক্ষেত্রের দৈর্ঘ্য |
| আয়তক্ষেত্র_প্রস্থ | সংখ্যা | আয়তক্ষেত্রের প্রস্থ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এখানে বিন্দুর বা আয়তক্ষেত্রের অবস্থান বদল করে দেখা যাবে কিভাবে এটি কাজ করে।
আনয়ন পট "পট"
পট.নতুন(৫০০, ৫০০, "পঙক্তি পর্দা")
ধরি বিন্দু = {
"ক" : ০,
"খ" : ১০,
}
ধরি আয়তক্ষেত্র = {
"ক": ০,
"খ": ১০,
"দৈর্ঘ্য": ৫০,
"প্রস্থ": ১০০
}
যদি পট.স্পর্শ_বিন্দু_আয়তক্ষেত্র(বিন্দু["ক"], বিন্দু["খ"], আয়তক্ষেত্র["ক"], আয়তক্ষেত্র["খ"], আয়তক্ষেত্র["দৈর্ঘ্য"], আয়তক্ষেত্র["প্রস্থ"]) তাহলে
// বিন্দু আয়তক্ষেত্রকে স্পর্শ করছে
শেষ
পট.স্পর্শ_বৃত্ত_আয়তক্ষেত্র( বৃত্ত_ক, বৃত্ত_খ, বৃত্ত_ব্যসার্ধ, আয়তক্ষেত্র_ক, আয়তক্ষেত্র_খ, আয়তক্ষেত্র_দৈর্ঘ্য, আয়তক্ষেত্র_প্রস্থ )#
এই কাজটি একটি বৃত্ত একটি আয়তক্ষেত্রকে স্পর্শ করছে কি না যাচাই করে সত্যমান ফেরত দেয়।
| প্রেরণমান | ধরন | বিবরণ |
|---|---|---|
| বৃত্ত_ক | সংখ্যা | বৃত্তের মধ্যবিন্দুর X অক্ষে অবস্থান |
| বৃত্ত_খ | সংখ্যা | বৃত্তের মধ্যবিন্দুর Y অক্ষে অবস্থান |
| বৃত্ত_ব্যাসার্ধ | সংখ্যা | বৃত্তের ব্যাসার্ধ |
| আয়তক্ষেত্র_ক | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর X অক্ষের অবস্থান |
| আয়তক্ষেত্র_খ | সংখ্যা | আয়তক্ষেত্রের বাম-উপর বিন্দুর Y অক্ষে অবস্থান |
| আয়তক্ষেত্র_দৈর্ঘ্য | সংখ্যা | আয়তক্ষেত্রের দৈর্ঘ্য |
| আয়তক্ষেত্র_প্রস্থ | সংখ্যা | আয়তক্ষেত্রের প্রস্থ |
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সত্যমান | - |
উদাহরণ#
এটি একটি অতিসরল উদাহরণ -
আনয়ন পট "পট"
ধরি আয়তক্ষেত্র = {
"ক": ১০,
"খ": ১০,
"দৈর্ঘ্য": ৫০,
"প্রস্থ": ১০০
}
ধরি বৃত্ত = {
"ক" : ১০,
"খ" : ৫০,
"ব্যসার্ধ" : ২০
}
যদি পট.স্পর্শ_বৃত্ত_আয়তক্ষেত্র(বৃত্ত["ক"], বৃত্ত["খ"], বৃত্ত["ব্যসার্ধ"], আয়তক্ষেত্র["ক"], আয়তক্ষেত্র["খ"], আয়তক্ষেত্র["দৈর্ঘ্য"], আয়তক্ষেত্র["প্রস্থ"]) তাহলে
// বৃত্ত আয়তক্ষেত্রকে স্পর্শ করছে
শেষ
পট.ডেল্টা()#
এই কাজ শেষ ফ্রেম এবং বর্তমান ফ্রেমের তৈরির মাঝখানের সময়। এর উত্তর সবসময় সেকেন্ডে হয়।
এই সংখ্যা সাধারণত পর্দার মধ্যে যেসব আকৃতি চলাচল করবে তাদের বাস্তব গতি ফ্রেম-রেট (FPS) থেকে স্বাধীন রাখতে ব্যবহৃত হয়। নাহলে কোনো গেমের চরিতের গতিবেগ কম্পিউটারের ক্ষমতার উপর নির্ভরশীল হয়ে উঠতে পারে, তখন দেখা যাবে গেমের চরিত্র দামি অত্যাধুনিক কম্পিউটারে অতি দ্রুত বেগে চলছে আর পুরানো দুর্বল কম্পিউটারে হয়তো একেবারে আস্তে আস্তে চলছে।
| ফেরতমানের ধরন | বিবরণ |
|---|---|
| সংখ্যা | - |
উদাহরণ#
এই উদাহরণে আমরা একটি বৃত্তের বেগ ৫০ পিক্সেল রাখব যা যেকোনো ধরনের কম্পিউটারে একইরকম চলবে।
আনয়ন পট "পট"
ধরি বৃত্ত = {
"ক" : ০,
"খ" : ৫০,
"ব্যসার্ধ" : ২০,
"গতি" : ৫০
}
বৃত্ত["ক"] = বৃত্ত["ক"] + বৃত্ত["গতি"] * পট.ডেল্টা()
যদি এই বেগে বৃত্তটি চলে তাহলে দেখা যাবে বৃত্তটি আস্তে আস্তে সঠিক গতিতে চলবে। কিন্তু যদি পট.ডেল্টা() গুণ না করা হয় তাহলে বৃত্তটি একজনের কম্পিউটারে একরকম গতিতে চলবে অন্যের কম্পিউটারে আরেকরকম গতিতে চলবে।
রঙের তালিকা#
| বাংলা রঙের নাম | ইংরাজি রঙের নাম | উদাহরণ |
|---|---|---|
| সাদা | white | █ |
| কালো | black | █ |
| লাল | red | █ |
| নীল | blue | █ |
| সবুজ | green | █ |
| ধুসর | gray | █ |
| হলুদ | yellow | █ |
| সোনালি | golden | █ |
| কমলা | orange | █ |
| গোলাপি | pink | █ |
| আকাশি | sky blue | █ |
| বেগুনি | purple | █ |
| হালকা বেগুনি | violet | █ |
| বাদামি | brown | █ |
| গেরুয়া | saffron | █ |
বোতামের তালিকা#
কিবোর্ডের বোতাম#
মাউস বোতাম#
| বোতামের নাম | বিবরণ |
|---|---|
"ডান", "right", "dan" |
মাউসের বাম দিকের বোতাম (Left Mouse Button) |
"বাম", "left", "bam" |
মাউসের ডান দিকের বোতাম (Right Mouse Button) |
"মাঝের", "মাঝ", "majher", "majh", "middle" |
মাউসের মাঝের বোতাম (Middle Mouse Button) |