স্ক্রিন#

ভূমিকা#

screen ক্লাসটি brain বেস ক্লাস থেকে উদ্ভূত। এটি নিয়ন্ত্রণ করে যে IQ (2nd gen) ব্রেইন তার অন্তর্নির্মিত স্ক্রিনে কীভাবে টেক্সট, সংখ্যা এবং গ্রাফিক্স প্রদর্শন করে।

ডিফল্টরূপে, ব্রেইনে প্রিন্ট করার জন্য ফন্টটি হলো মনোস্পেসড স্মল।

আঁকার জন্য ব্রেইনটির রেজোলিউশন হলো ১৬০ x ১০৮ পিক্সেল।

অ্যাক্সেস#

screen ক্লাসটি নিম্নলিখিত উপায়ে অ্যাক্সেস করা যাবে:

Brain.Screen

নোট#

  • screen অবজেক্টটি মস্তিষ্ক দ্বারা সরবরাহ করা হয়। এটি সরাসরি নির্মিত হয় না।

  • প্রজেক্টগুলো একটিমাত্র গ্লোবাল Brain ব্যবহার করে, তাই স্ক্রিন ফাংশনগুলো Brain.Screen

উদাহরণ#

/* This constructor is required when using VS Code.
A Brain is generated automatically at the start of
VEXcode projects. */

// Create the Brain
brain Brain = brain();

// Print text to the Brain screen
Brain.Screen.print("Hello!");

সদস্যদের কার্যাবলী#

screen ক্লাসে নিম্নলিখিত মেম্বার ফাংশনগুলো অন্তর্ভুক্ত রয়েছে:

  • print — ব্রেইন স্ক্রিনে ফরম্যাট করা টেক্সট, সংখ্যা, অথবা বুলিয়ান মান প্রিন্ট করে।

  • setCursor — টেক্সট কার্সারকে একটি নির্দিষ্ট সারি এবং কলামে নিয়ে যায়।

  • newLine — বর্তমান লাইনের বাকি অংশ মুছে দেয় এবং কার্সারকে পরবর্তী লাইনে নিয়ে যায়।

  • clearLine — বর্তমান লাইনের বাকি অংশ অথবা নির্দিষ্ট লাইন মুছে দেয়।

  • row — যে সারিতে লেখাটি প্রিন্ট করা হবে তা ফেরত দেয়।

  • column — যে কলামে লেখাটি প্রিন্ট করা হবে তা ফেরত দেয়।

  • getStringHeight — বর্তমান ফন্ট ব্যবহার করে একটি স্ট্রিংয়ের উচ্চতা পিক্সেলে ফেরত দেয়।

  • getStringWidth — বর্তমান ফন্ট ব্যবহার করে একটি স্ট্রিংয়ের প্রস্থ পিক্সেলে ফেরত দেয়।

  • printAt — একটি x, y পিক্সেল অবস্থানে ফরম্যাট করা টেক্সট প্রিন্ট করে (ঐচ্ছিকভাবে অস্বচ্ছ)।

  • clearScreen — সম্পূর্ণ স্ক্রিন পরিষ্কার করে (ঐচ্ছিকভাবে একটি নির্দিষ্ট রঙে)।

  • setFont — স্ক্রিনে প্রিন্ট করার জন্য ব্যবহৃত ফন্ট সেট করে।

  • setPenWidth — অঙ্কিত রেখা এবং আকৃতির রূপরেখার পুরুত্ব নির্ধারণ করে।

  • setPenColor — টেক্সট, পিক্সেল, লাইন এবং শেপের আউটলাইনের রঙ সেট করে।

  • setFillColor — অঙ্কিত আকার এবং মুদ্রিত লেখার পটভূমির জন্য পূরণের রঙ নির্ধারণ করে।

  • setOrigin — স্ক্রিন স্থানাঙ্কের জন্য ব্যবহৃত মূলবিন্দু নির্ধারণ করে।

  • setClipRegion — স্ক্রিনের আউটপুট একটি আয়তক্ষেত্রাকার অঞ্চলে সীমাবদ্ধ করে।

  • drawPixel — একটি স্থানাঙ্কে একটি পিক্সেল আঁকে।

  • drawLine — দুটি বিন্দুর মধ্যে একটি রেখা আঁকে।

  • drawRectangle — একটি x, y অবস্থানে নির্দিষ্ট আকারের একটি আয়তক্ষেত্র আঁকে।

  • drawCircle — একটি x, y অবস্থানে নির্দিষ্ট ব্যাসার্ধ সহ একটি বৃত্ত আঁকে।

  • drawImageFromFile — এসডি কার্ডের ফাইল থেকে স্ক্রিনে একটি ছবি আঁকে।

  • render — ডাবল বাফারিং সক্ষম করে অথবা ব্যাক বাফারকে স্ক্রিনে রেন্ডার করে।

  • pressing — স্ক্রিনটি বর্তমানে চাপা আছে কিনা তা ফেরত দেয়।

  • xPosition — সর্বশেষ স্ক্রিন প্রেসের x-স্থানাঙ্ক ফেরত দেয়।

  • yPosition — সর্বশেষ স্ক্রিন প্রেসের y-স্থানাঙ্ক ফেরত দেয়।

  • pressed — স্ক্রিন চাপলে চালানোর জন্য একটি কলব্যাক ফাংশন নিবন্ধন করে।

  • released — স্ক্রিন চাপার পর ছেড়ে দিলে চালানোর জন্য একটি কলব্যাক ফাংশন নিবন্ধন করে।

যেকোনো screen মেম্বার ফাংশন কল করার আগে, নিচে দেখানো অনুযায়ী একটি brain ইনস্ট্যান্স তৈরি করতে হবে:

// Create the Brain
brain Brain = brain();

print#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে টেক্সট, সংখ্যা বা বুলিয়ান মান প্রদর্শন করে।

Available Functions

1 — স্ট্রিং লিটারেল অথবা রিড-অনলি সি-স্টাইল স্ট্রিং ব্যবহার করে ফরম্যাট করা টেক্সট প্রিন্ট করে।

void print(
    const char* format,
    ... );

2 — পরিবর্তনযোগ্য ক্যারেক্টার অ্যারে ব্যবহার করে ফরম্যাট করা টেক্সট প্রিন্ট করে।

void print(
    char* format,
    ... );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

format

const char*

একটি ফরম্যাট স্ট্রিং যা স্ট্রিং লিটারেল অথবা রিড-অনলি সি-স্টাইল স্ট্রিং হিসেবে প্রদান করা হয় (উদাহরণস্বরূপ, “Score: %d”)।

format

char*

একটি ফরম্যাট স্ট্রিং যা একটি পরিবর্তনযোগ্য ক্যারেক্টার অ্যারে হিসাবে প্রদান করা হয়।

…

ফরম্যাট স্ট্রিং-এ কমা দ্বারা পৃথক করে এক বা একাধিক অতিরিক্ত মান যোগ করা হয়।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • Output begins at the current cursor position on the screen.

  • মুদ্রিত টেক্সটে বর্তমান স্ক্রিন ফন্ট ব্যবহৃত হয়

  • মুদ্রিত লেখায় বর্তমান কলমের রঙ এবং ব্যবহৃত হয়।

  • প্রিন্ট print দিয়ে প্রিন্ট করা টেক্সট সর্বদা একটি ব্যাকগ্রাউন্ড সহ প্রিন্ট করা হয়, এবং ব্যাকগ্রাউন্ডের রঙ বর্তমান ফিল কালার দ্বারা নির্ধারিত হয়।

  • ফরম্যাট স্ট্রিং ব্যবহার করার সময়, পাস করা মানগুলির সংখ্যা এবং প্রকার অবশ্যই স্ট্রিং-এর ফরম্যাট স্পেসিফায়ার-এর সাথে মিলতে হবে।

Examples
// Display a message at the starting cursor
Brain.Screen.print("Hello, Robot!");

IQ (২য় প্রজন্ম) ব্রেইনের একটি স্ক্রিনশট যেখানে স্ক্রিনের উপরের বাম কোণে সাদা অক্ষরে 'হ্যালো, রোবট!' লেখা দেখা যাচ্ছে।

setCursor#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি নির্দিষ্ট সারি ও কলামে কার্সার নিয়ে যায়। পরবর্তী print কলটি সেই অবস্থান থেকে প্রিন্ট করা শুরু করবে।

Available Functions
void setCursor(
  int32_t row, 
  int32_t col );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

row

int32_t

যে সারিতে কার্সারটি সরাতে হবে।

col

int32_t

যে কলামে কার্সারটি সরাতে হবে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • print ব্যবহার করার সময় পরবর্তী টেক্সট আউটপুট কোথা থেকে শুরু হবে তা প্রভাবিত করে।

  • সারি এবং কলামগুলি বর্তমানে সেট করা স্ক্রিন ফন্ট এর উপর ভিত্তি করে তৈরি করা হয়।

  • ডিফল্ট ফন্ট (mono20) 5টি সারি এবং 16টি কলাম ব্যবহার করে।

  • setCursor কল করলে তা শুধুমাত্র পরবর্তী টেক্সট আউটপুটের অবস্থানকে প্রভাবিত করে।

Examples
int main() {
  // Initializing Robot Configuration. DO NOT REMOVE!
  vexcodeInit();

  // Repeatedly print the Brain timer at top-left
  while (true) {
    Brain.Screen.print("%d", Brain.Timer.time(seconds));
    Brain.Screen.newLine();
    wait(1, seconds);
    Brain.Screen.clearScreen();
    Brain.Screen.setCursor(1, 1);
  }
}

IQ (২য় প্রজন্ম) ব্রেইনের একটি স্ক্রিনশট যেখানে স্ক্রিনের উপরের বাম দিকে, ঐ অবস্থানে ২৫ লেখা দেখা যাচ্ছে।

newLine#

ব্রেইন স্ক্রিনে কার্সারকে পরবর্তী সারির শুরুতে নিয়ে যায়।

Available Functions
void newLine();

Parameters

এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • কার্সরটি যদি কোনো বাক্যের মাঝখানে থাকে, তাহলে newLine পরবর্তী সারিতে যাওয়ার আগে কার্সরের পরের সারির বাকি অংশ মুছে ফেলবে।

  • newLineকল করার পর, কার্সরটি পরবর্তী লাইনের প্রথম কলামে অবস্থান করে।

  • setCursor ব্যবহার করে কার্সরের অবস্থান এবং সারির সংখ্যা সেট করা হয়।

Examples
// Display two lines of text
Brain.Screen.print("Line 1");
Brain.Screen.newLine();
Brain.Screen.print("Line 2");

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি স্ক্রিনশট যেখানে উপরের বাম কোণে দুটি সাদা লাইনের লেখা দেখা যাচ্ছে। উপরের লাইনে লেখা আছে লাইন ১, এবং তার ঠিক নিচের দ্বিতীয় লাইনে লেখা আছে লাইন ২।

clearLine#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি সারি থেকে লেখা মুছে ফেলে।

Available Functions

1 — কার্সরের অবস্থান থেকে বর্তমান লাইনের বাকি অংশ মুছে দেয়।

void clearLine();

2 — বর্তমানে কনফিগার করা ফিল কালার ব্যবহার করে নির্দিষ্ট সারিটি মুছে ফেলে।

void clearLine(
    int number );

3 — পূর্বনির্ধারিত অথবা কাস্টম রঙ অবজেক্ট ব্যবহার করে নির্দিষ্ট সারিটি মুছে ফেলে।

void clearLine(
    int          number,
    const color& color );

4 — একটি হেক্সাডেসিমাল রঙের মান ব্যবহার করে নির্দিষ্ট সারিটি মুছে ফেলে।

void clearLine(
    int         number,
    const char* color );

5 — একটি হিউ ভ্যালু ব্যবহার করে নির্দিষ্ট সারিটি মুছে ফেলে।

void clearLine(
    int number,
    int hue );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

number

int

যে সারিটি পরিষ্কার করতে হবে তার নম্বর। সারির ক্রমিক সংখ্যা 1 থেকে শুরু হয়।

color

const color&

একটি color অবজেক্ট ব্যবহার করে সারিটি পরিষ্কার করে। পূর্বনির্ধারিত রঙগুলির মধ্যে রয়েছে:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
এটি একটি কাস্টম রঙের অবজেক্ট ব্যবহার করতে পারে।

color

const char*

হেক্সাডেসিমাল রঙের মান ব্যবহার করে সারিটি পরিষ্কার করে (উদাহরণস্বরূপ, “#000000”)।

hue

int

কালার হুইলের বিভিন্ন ডিগ্রিকে 0–359রেঞ্জের মধ্যে একটি পূর্ণসংখ্যা হিউ ভ্যালু ব্যবহার করে সারিটি পরিষ্কার করে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • লাইন মুছে ফেললে কার্সরের বর্তমান অবস্থানের কোনো পরিবর্তন হয় না।

  • setCursor ব্যবহার করে কার্সরের অবস্থান এবং সারির সংখ্যা সেট করা হয়।

  • hue প্যারামিটার মানটি একটি বৃত্তাকার কালার হুইলের উপর ভিত্তি করে নির্ধারিত হয়, যেমনটি নিচে দেখানো হয়েছে, যেখানে মানগুলো হুইলটির চারপাশের ডিগ্রি নির্দেশ করে (উদাহরণস্বরূপ, লাল ০°-এর কাছাকাছি, সবুজ ১২০°-এর কাছাকাছি এবং নীল ২৪০°-এর কাছাকাছি)।

একটি রঙের চাকা যেখানে ০ থেকে ৩৫৯ পর্যন্ত রঙের পরিসর দেখানো হচ্ছে, যেখানে লাল হলো ০, সবুজ হলো ১২০ এবং নীল হলো ২৪০।

Examples
// Display text on two rows
Brain.Screen.print("This text stays");
Brain.Screen.newLine();
Brain.Screen.print("This disappears");

// Wait 3 seconds before clearing row 2
wait(3, seconds);
Brain.Screen.clearLine(2);

row#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে যে সারিতে লেখাটি প্রিন্ট করা হবে, সেটি ফেরত দেয়।

Available Functions
int32_t row();

Parameters

এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।

Return Values

যে সারিতে লেখাটি প্রিন্ট করা হবে, তা নির্দেশ করে এমন একটি int32_t রিটার্ন করে।

সারির সংখ্যা ১ থেকে শুরু হয়।

Notes
  • কার্সরের অবস্থান বর্তমান স্ক্রিন ফন্ট এর উপর ভিত্তি করে নির্ধারিত হয়

  • প্রত্যাবর্তিত মানটি নির্দেশ করে যে পরবর্তী মুদ্রিত আউটপুট কোথায় প্রদর্শিত হবে।

  • টেক্সট প্রিন্ট করা হলে অথবা setCursor কল করা হলে সারির মান পরিবর্তিত হয়।

Examples
// Display the cursor's current row
Brain.Screen.setCursor(3, 12);
Brain.Screen.print("row: ", Brain.Screen.row());

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি স্ক্রিনশট যেখানে স্ক্রিনের বাম দিকে, সারি ৩ কলাম ১২ অবস্থানে সাদা রঙে "সারি ৩" লেখাটি দেখা যাচ্ছে।

column#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে যে কলামে লেখাটি প্রিন্ট করা হবে, সেটি ফেরত দেয়।

Available Functions
int32_t column();

Parameters

এই ফাংশনটি কোনো প্যারামিটার গ্রহণ করে না।

Return Values

যে কলামে টেক্সট প্রিন্ট করা হবে, তা বোঝানোর জন্য একটি int32_t রিটার্ন করে।

কলামের সংখ্যা ১ থেকে শুরু হয়।

Notes
  • কার্সরের অবস্থান বর্তমান স্ক্রিন ফন্ট এর উপর ভিত্তি করে নির্ধারিত হয়

  • প্রত্যাবর্তিত মানটি নির্দেশ করে যে পরবর্তী মুদ্রিত আউটপুট কোথায় প্রদর্শিত হবে।

  • টেক্সট প্রিন্ট করা হলে অথবা setCursor কল করা হলে কলামের মান পরিবর্তিত হয়।

Examples
// Display the cursor's current column
Brain.Screen.print("column: ", Brain.Screen.column());

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি স্ক্রিনশট যেখানে স্ক্রিনের শীর্ষে, সারি ১ ​​কলাম ৯ অবস্থানে সাদা রঙে কলাম: ৯ দেখানো হচ্ছে।

getStringHeight#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে রেন্ডার করার সময় একটি স্ট্রিং-এর উচ্চতা পিক্সেলে ফেরত দেয়।

Available Functions
int32_t getStringHeight( 
    const char* cstr );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

cstr

const char*

পরিমাপ করার জন্য টেক্সটটি একটি C-স্টাইল স্ট্রিং হিসাবে প্রদান করতে হবে (উদাহরণস্বরূপ, “Hello”)।

Return Values

ব্রেইন স্ক্রিনে রেন্ডার করার সময় স্ট্রিংটির উচ্চতা পিক্সেলে প্রকাশ করার জন্য একটি int32_t রিটার্ন করে।

Notes
  • ফেরত আসা উচ্চতা বর্তমানে নির্বাচিত স্ক্রিন ফন্ট এর উপর নির্ভর করে।

  • এই ফাংশনটি স্ট্রিংটিকে স্ক্রিনে না এঁকেই তার পরিমাপ করে।

  • ফেরত আসা উচ্চতাটি নির্দেশ করে যে স্ট্রিংটি প্রিন্ট করার সময় কেমন দেখাবে।

getStringWidth#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে রেন্ডার করার সময় একটি স্ট্রিং-এর প্রস্থ পিক্সেলে ফেরত দেয়।

Available Functions
int32_t getStringWidth( 
    const char* cstr );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

cstr

const char*

পরিমাপ করার জন্য টেক্সটটি একটি C-স্টাইল স্ট্রিং হিসাবে প্রদান করতে হবে (উদাহরণস্বরূপ, “Hello”)।

Return Values

ব্রেইন স্ক্রিনে রেন্ডার করার সময় স্ট্রিংটির প্রস্থ পিক্সেলে প্রকাশ করার জন্য একটি int32_t রিটার্ন করে।

Notes
  • ফেরত আসা প্রস্থ বর্তমানে নির্বাচিত স্ক্রিন ফন্ট উপর নির্ভর করে।

  • এই ফাংশনটি স্ট্রিংটিকে স্ক্রিনে না এঁকেই তার পরিমাপ করে।

  • ফেরত আসা প্রস্থটি নির্দেশ করে যে স্ট্রিংটি প্রিন্ট করার সময় কেমন দেখাবে।

printAt#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি নির্দিষ্ট স্থানাঙ্কে টেক্সট, সংখ্যা বা বুলিয়ান মান প্রিন্ট করে।

Available Functions

1 — নির্দিষ্ট পিক্সেল অবস্থানে ফরম্যাট করা আউটপুট প্রিন্ট করে।

void printAt(
    int32_t    x,
    int32_t    y,
    const char* format,
    ... );

2 — নির্দিষ্ট পিক্সেল অবস্থানে ফরম্যাট করা আউটপুট প্রিন্ট করে এবং টেক্সটের ব্যাকগ্রাউন্ড অস্বচ্ছ হবে নাকি স্বচ্ছ হবে তা নির্ধারণ করে।

void printAt(
    int32_t    x,
    int32_t    y,
    bool       bOpaque,
    const char* format,
    ... );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x

int32_t

প্রিন্ট করার জন্য এক্স-অবস্থান, যা স্ক্রিন অরিজিনের সাপেক্ষে নির্ধারিত।

y

int32_t

স্ক্রিন অরিজিনের সাপেক্ষে প্রিন্ট করার y-অবস্থান।

bOpaque

bool

মুদ্রিত লেখাটি অস্বচ্ছভাবে নাকি স্বচ্ছভাবে আঁকা হবে তা নিয়ন্ত্রণ করে:

  • true — মুদ্রিত লেখার পটভূমি বর্তমান ফিল কালার ব্যবহার করে পূরণ করা হয়।
  • false — লেখাটি স্বচ্ছভাবে আঁকা হয় এবং পটভূমি পূরণ করা হয় না।

format

const char*

একটি ফরম্যাট স্ট্রিং যা স্ক্রিনে কী প্রিন্ট করা হবে তা নিয়ন্ত্রণ করে (উদাহরণস্বরূপ, “Score: %d”)।

…

ফরম্যাট স্ট্রিং-এ কমা দ্বারা পৃথক করে এক বা একাধিক অতিরিক্ত মান যোগ করা হয়।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে পরিবর্তন করা যেতে পারে।

  • মুদ্রিত টেক্সটে বর্তমান স্ক্রিন ফন্ট ব্যবহৃত হয়

  • মুদ্রিত লেখায় বর্তমান কলমের রঙ এবং ব্যবহৃত হয়।

  • ফরম্যাট স্ট্রিং ব্যবহার করার সময়, পাস করা মানগুলির সংখ্যা এবং প্রকার অবশ্যই স্ট্রিং-এর ফরম্যাট স্পেসিফায়ার-এর সাথে মিলতে হবে।

Examples
// Print the number 1 at pixel (100, 40)
Brain.Screen.printAt(100, 40, 1);

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি স্ক্রিনশট যেখানে সাদা অক্ষরে ১ লেখা আছে, যা (100, 40) স্থানাঙ্কে প্রিন্ট করা হয়েছে।

clearScreen#

ব্রেইনের স্ক্রিন থেকে সমস্ত অঙ্কন ও লেখা মুছে দেয়।

Available Functions

1 — স্ক্রিনকে সম্পূর্ণ কালো করে দেয়।

void clearScreen();

2 — পূর্বনির্ধারিত বা কাস্টম রঙ অবজেক্ট ব্যবহার করে স্ক্রিন পরিষ্কার করে।

void clearScreen(
    const color& color );

3 — হেক্সাডেসিমাল রঙের মান ব্যবহার করে স্ক্রিন পরিষ্কার করে।

void clearScreen(
    const char* color );

4 — একটি হিউ ভ্যালু ব্যবহার করে স্ক্রিন পরিষ্কার করে।

void clearScreen(
    int hue );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

color

const color&

একটি color অবজেক্ট ব্যবহার করে স্ক্রিন পরিষ্কার করে। পূর্বনির্ধারিত রঙগুলির মধ্যে রয়েছে:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
এটি একটি কাস্টম রঙের অবজেক্ট ব্যবহার করতে পারে।

color

const char*

একটি স্ট্রিং হিসাবে উপস্থাপিত হেক্সাডেসিমাল রঙের মান ব্যবহার করে স্ক্রিন পরিষ্কার করে (উদাহরণস্বরূপ, “#000000”)।

hue

int

কালার হুইলের বিভিন্ন ডিগ্রিকে 0–359পরিসরের মধ্যে একটি পূর্ণসংখ্যা হিউ (hue) মান ব্যবহার করে স্ক্রিনটি পরিষ্কার করে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • hue প্যারামিটার মানটি একটি বৃত্তাকার কালার হুইলের উপর ভিত্তি করে নির্ধারিত হয়, যেমনটি নিচে দেখানো হয়েছে, যেখানে মানগুলো হুইলটির চারপাশের ডিগ্রি নির্দেশ করে (উদাহরণস্বরূপ, লাল ০°-এর কাছাকাছি, সবুজ ১২০°-এর কাছাকাছি এবং নীল ২৪০°-এর কাছাকাছি)।

একটি রঙের চাকা যেখানে ০ থেকে ৩৫৯ পর্যন্ত রঙের পরিসর দেখানো হচ্ছে, যেখানে লাল হলো ০, সবুজ হলো ১২০ এবং নীল হলো ২৪০।

Examples
// Clear screen after 2 seconds
Brain.Screen.print("VEXcode");
wait(2, seconds);
Brain.Screen.clearScreen();


// Clear screen to blue after 2 seconds
Brain.Screen.print("VEXcode");
wait(2, seconds);
Brain.Screen.clearScreen(red);

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের একটি স্ক্রিনশট যেখানে সম্পূর্ণ মুদ্রণযোগ্য এলাকা উজ্জ্বল লাল।

setFont#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে প্রদর্শিত টেক্সটের জন্য ব্যবহৃত ফন্ট নির্ধারণ করে।

এটি print এর মতো স্ক্রিন টেক্সট ফাংশন ব্যবহার করার সময় পরবর্তী টেক্সট আউটপুটে প্রয়োগ করা ফন্ট নিয়ন্ত্রণ করে।

Available Functions
void setFont(
  fontType font );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

font

fontType

ফন্টটি নিম্নলিখিতগুলির মধ্যে একটিতে সেট করে:

  • mono12
  • mono15
  • mono20
  • mono30
  • mono40
  • mono60
  • prop20
  • prop30
  • prop40
  • prop60
এই বিকল্পগুলি নীচে দেখানো হলো।

VEX IQ Brain স্ক্রিনের একটি স্ক্রিনশট যেখানে Mono 12 ফন্টে সংখ্যা এবং অক্ষরের একটি সিরিজ রয়েছে। AZ অক্ষরগুলি স্ক্রিনের প্রস্থ জুড়ে এক লাইনে রয়েছে। নীচের বাম কোণায় আড়াআড়িভাবে ২৬টি অক্ষর এবং ৯টি সারি নির্দেশ করা হয়েছে।
mono12

আগের স্ক্রিনশটটির মতোই, এখন Mono 15 ফন্টে। AT অক্ষরগুলো স্ক্রিনের প্রস্থ বরাবর এক লাইনে রয়েছে। নিচের বাম কোণায় আড়াআড়িভাবে ২০টি অক্ষর এবং ৭টি সারি নির্দেশ করা হয়েছে।
mono15

আগের স্ক্রিনশটটির মতোই, এখন Mono 20 ফন্টে। AP অক্ষরগুলো স্ক্রিনের প্রস্থ বরাবর এক লাইনে রয়েছে। নিচের বাম কোণায় আড়াআড়িভাবে ১৬টি অক্ষর এবং ৫টি সারি নির্দেশ করা হয়েছে।
mono20

আগের স্ক্রিনশটটির মতোই, এখন Mono 30 ফন্টে। ১ থেকে ৯ পর্যন্ত সংখ্যাগুলো এবং একটি অতিরিক্ত ০ স্ক্রিনের প্রস্থ বরাবর এক লাইনে রয়েছে। নিচের বাম কোণায় ৩টি সারি নির্দেশ করা হয়েছে।
mono30

আগের স্ক্রিনশটটির মতোই, এখন Mono 40 ফন্টে। ১ থেকে ৮ পর্যন্ত সংখ্যাগুলো দ্বিতীয় লাইনে, স্ক্রিনের প্রস্থ বরাবর বিস্তৃত।
mono40

আগের স্ক্রিনশটটির মতোই, এখন Mono 60 ফন্ট সহ। স্ক্রিনে বড় ফন্টে MN 60 দেখা যাচ্ছে, যা স্ক্রিনের প্রায় পুরো উপরের অর্ধেক জুড়ে রয়েছে।
mono60

আগের স্ক্রিনশটটির মতোই, এখন Prop 20 ফন্টে। AW অক্ষরগুলো স্ক্রিনের প্রস্থ বরাবর এক লাইনে রয়েছে। নিচের বাম কোণায় আড়াআড়িভাবে ২৬টি অক্ষর এবং ৫টি সারি নির্দেশ করা হয়েছে।
prop20

আগের স্ক্রিনশটটির মতোই, এখন Prop 30 ফন্টে। ১-৯ সংখ্যাগুলো একটি লাইনে দুইবার করে পুনরাবৃত্তি করা হয়েছে, যা স্ক্রিনের প্রস্থ জুড়ে বিস্তৃত। নিচের বাম কোণায় আড়াআড়িভাবে ১৮টি অক্ষর এবং ৩টি সারি নির্দেশ করা হয়েছে।
prop30

আগের স্ক্রিনশটটির মতোই, এখন Prop 40 ফন্টে। স্ক্রিনের উপরের লাইনে Prop 40 লেখা আছে এবং দ্বিতীয় লাইনে ১৪টি অক্ষর ও ২টি সারি নির্দেশ করছে।
prop40

আগের স্ক্রিনশটটির মতোই, এখন Prop 60 ফন্ট সহ। স্ক্রিনে বড় ফন্টে PROP 60 লেখা আছে, যা স্ক্রিনের প্রায় পুরো উপরের অর্ধেক জুড়ে রয়েছে।
prop60

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Examples
// Display two different fonts on
// two separate lines
Brain.Screen.setFont(mono20);
Brain.Screen.print("Mono Medium");
Brain.Screen.newLine();
Brain.Screen.setFont(prop20);
Brain.Screen.print("Prop Medium");

IQ Brain স্ক্রিনের একটি স্ক্রিনশট, যার উপরের বাম কোণে দুটি লাইনে সাদা অক্ষরে লেখা রয়েছে। প্রথম লাইনে লেখা আছে Mono Medium এবং তার ঠিক নিচের দ্বিতীয় লাইনে আরও ছোট ফন্টে লেখা আছে Prop Medium।

setPenWidth#

অঙ্কিত রেখা এবং আকৃতির রূপরেখার পুরুত্ব নির্ধারণ করে।

Available Functions
void setPenWidth(
  uint32_t width );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

width

uint32_t

কলমের প্রস্থ, পিক্সেলে, ০ থেকে ৩২ পর্যন্ত।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • কলমের প্রস্থ drawLine, drawRectangle, এবং drawCircle এর মতো অঙ্কন ফাংশনগুলিতে প্রযোজ্য।

Examples
// Draw a circle with a pen width of 5
Brain.Screen.drawCircle(40, 70, 20);
Brain.Screen.setPenWidth(5);
Brain.Screen.drawCircle(100, 70, 20);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট যেখানে স্ক্রিনের নিচের অর্ধাংশে দুটি সাদা বৃত্ত মুদ্রিত আছে। বাম দিকের বৃত্তটি ডান দিকেরটির চেয়ে সরু সীমানা দিয়ে আঁকা হয়েছে।

setPenColor#

টেক্সট, পিক্সেল, লাইন এবং শেপের আউটলাইনের রঙ নির্ধারণ করে।

Available Functions

1 — পূর্বনির্ধারিত অথবা কাস্টম রঙ অবজেক্ট ব্যবহার করে কলমের রঙ সেট করে।

void setPenColor(
    const color& color );

2 — হেক্সাডেসিমাল রঙের মান ব্যবহার করে কলমের রঙ নির্ধারণ করে।

void setPenColor(
    const char* color );

3 — হিউ ভ্যালু ব্যবহার করে পেনের রঙ নির্ধারণ করে।

void setPenColor(
    int hue );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

color

const color&

Sets the pen color using a color object. Predefined colors include:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent

color

const char*

একটি স্ট্রিং হিসাবে উপস্থাপিত হেক্সাডেসিমাল রঙের মান ব্যবহার করে কলমের রঙ সেট করে (উদাহরণস্বরূপ, “#FF0000”)।

hue

int

0থেকে0পর্যন্ত পরিসরের একটি পূর্ণসংখ্যা হিউ (hue) মান ব্যবহার করে পেনের রঙ নির্ধারণ করে, যা একটি কালার হুইলের বিভিন্ন পর্যায়কে নির্দেশ করে (উদাহরণস্বরূপ, 359 হলো লাল, 120 হলো সবুজ এবং 240 হলো নীল)।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • প্রজেক্টের শুরুতে পেনের ডিফল্ট রঙ হলো white।

  • কলমের রঙ ব্যবহার করা হয় আকারের রূপরেখা (যেমন drawCircle বা drawRectangle দিয়ে), পাঠ্য এবং সংখ্যাসূচক আউটপুট (print এবং printAt দিয়ে), এবং drawPixel দিয়ে আঁকা স্বতন্ত্র পিক্সেলের জন্য।

  • hue প্যারামিটার মানটি একটি বৃত্তাকার কালার হুইলের উপর ভিত্তি করে নির্ধারিত হয়, যেমনটি নিচে দেখানো হয়েছে, যেখানে মানগুলো হুইলটির চারপাশের ডিগ্রি নির্দেশ করে (উদাহরণস্বরূপ, লাল ০°-এর কাছাকাছি, সবুজ ১২০°-এর কাছাকাছি এবং নীল ২৪০°-এর কাছাকাছি)।

একটি রঙের চাকা যেখানে ০ থেকে ৩৫৯ পর্যন্ত রঙের পরিসর দেখানো হচ্ছে, যেখানে লাল হলো ০, সবুজ হলো ১২০ এবং নীল হলো ২৪০।

Examples
Brain.Screen.drawRectangle(100, 50, 10, 20);
Brain.Screen.setPenColor(blue);
Brain.Screen.drawRectangle(50, 50, 10, 20);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট যেখানে স্ক্রিনের নিচের অর্ধাংশে দুটি ছোট আয়তক্ষেত্র আঁকা আছে। বাম দিকের আয়তক্ষেত্রটি নীল এবং ডান দিকেরটি সাদা।

setFillColor#

আকৃতি আঁকার সময় ব্যবহৃত ফিল কালার নির্ধারণ করে।

Available Functions

1 — পূর্বনির্ধারিত অথবা কাস্টম কালার অবজেক্ট ব্যবহার করে ফিল কালার সেট করে।

void setFillColor(
    const color& color );

2 — হেক্সাডেসিমাল রঙের মান ব্যবহার করে ফিল কালার নির্ধারণ করে।

void setFillColor(
    const char* color );

3 — হিউ ভ্যালু ব্যবহার করে ফিল কালার নির্ধারণ করে।

void setFillColor(
    int hue );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

color

const color&

Sets the fill color using a color object. Predefined colors include:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent

color

const char*

একটি স্ট্রিং হিসাবে উপস্থাপিত হেক্সাডেসিমাল রঙের মান ব্যবহার করে ফিল কালার সেট করে (উদাহরণস্বরূপ, “#00FF00”)।

hue

int

0থেকে0পর্যন্ত পরিসরের একটি পূর্ণসংখ্যা হিউ (hue) মান ব্যবহার করে ফিল কালার সেট করে, যা একটি কালার হুইলের বিভিন্ন ডিগ্রিকে বোঝায় (উদাহরণস্বরূপ, 359 হলো লাল, 120 হলো সবুজ এবং 240 হলো নীল)।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • প্রজেক্টের শুরুতে ডিফল্ট ফিল কালার হলো black।

  • ফিল কালার শেপের ভেতরের অংশের জন্য ব্যবহৃত হয় (যেমন drawCircle অথবা drawRectangle এর ক্ষেত্রে)।

  • ফিল কালারটি প্রিন্ট করা টেক্সটের ব্যাকগ্রাউন্ড কালার হিসেবে ব্যবহৃত হয় (যেমন print এবং printAt এর ক্ষেত্রে)।

    • যদি মুদ্রিত লেখার সাথে transparent ব্যবহার করা হয়, তাহলে পটভূমি হবে black।

  • hue প্যারামিটার মানটি একটি বৃত্তাকার কালার হুইলের উপর ভিত্তি করে নির্ধারিত হয়, যেমনটি নিচে দেখানো হয়েছে, যেখানে মানগুলো হুইলটির চারপাশের ডিগ্রি নির্দেশ করে (উদাহরণস্বরূপ, লাল ০°-এর কাছাকাছি, সবুজ ১২০°-এর কাছাকাছি এবং নীল ২৪০°-এর কাছাকাছি)।

একটি রঙের চাকা যেখানে ০ থেকে ৩৫৯ পর্যন্ত রঙের পরিসর দেখানো হচ্ছে, যেখানে লাল হলো ০, সবুজ হলো ১২০ এবং নীল হলো ২৪০।

Examples
// Draw a circle filled with yellow
Brain.Screen.setFillColor(yellow);
Brain.Screen.drawCircle(50, 50, 20);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট, যেখানে স্ক্রিনের বাম অর্ধেকের উপর একটি পাতলা সাদা বর্ডার সহ একটি উজ্জ্বল হলুদ বৃত্ত আঁকা আছে।

setOrigin#

ব্রেইন স্ক্রিনে অঙ্কন এবং স্থানাঙ্ক-ভিত্তিক মুদ্রণের জন্য ব্যবহৃত মূলবিন্দু নির্ধারণ করে।

Available Functions
void setOrigin(
  int32_t x,
  int32_t y );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x

int32_t

ব্রেইন স্ক্রিনের উপরের-বাম কোণার সাপেক্ষে মূলবিন্দুর x-অবস্থান ০ থেকে ১৫৯ পর্যন্ত।

y

int32_t

ব্রেইন স্ক্রিনের উপরের-বাম কোণার সাপেক্ষে মূলবিন্দুর y-অবস্থান ০ থেকে ১০৭ পর্যন্ত।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • ডিফল্ট মূলবিন্দু হল স্ক্রিনের উপরের-বাম কোণ, স্থানাঙ্ক (0, 0)।

  • drawLine, drawRectangle, drawCircle, এবং printAt এর মতো স্থানাঙ্ক ফাংশনগুলিতে মূলবিন্দু প্রযোজ্য।

  • পুনরায় পরিবর্তন না করা পর্যন্ত বা প্রকল্পটি রিসেট না করা পর্যন্ত মূল মানটি কার্যকর থাকবে।

setClipRegion#

স্ক্রিনে একটি আয়তাকার এলাকা নির্ধারণ করে, যেখানে সমস্ত অঙ্কন এবং লেখা সীমাবদ্ধ থাকবে। এই অঞ্চলের বাইরের কোনো বিষয়বস্তু প্রদর্শিত হবে না।

Available Functions
void setClipRegion(
  int x,
  int y,
  int width,
  int height );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x

int

ক্লিপ অঞ্চলের উপরের-বাম কোণার x-স্থানাঙ্ক, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

y

int

ক্লিপ অঞ্চলের উপরের বাম কোণার y-স্থানাঙ্ক, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

width

int

ক্লিপ অঞ্চলের প্রস্থ পিক্সেলে, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

height

int

ক্লিপ অঞ্চলের উচ্চতা পিক্সেলে, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • ড্রয়িং ফাংশনগুলো ক্লিপ অঞ্চলের বাইরে থাকলেও সম্পাদিত হয়, কিন্তু শুধুমাত্র অঞ্চলের ভেতরের অংশটুকুই দৃশ্যমান থাকে।

  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে পরিবর্তন করা যেতে পারে।

  • ক্লিপ অঞ্চলটি শুধুমাত্র বর্তমান থ্রেডের জন্য প্রযোজ্য।

  • একটি নতুন ক্লিপ অঞ্চল সেট করলে তা বর্তমান থ্রেডের জন্য পূর্বে সেট করা যেকোনো ক্লিপ অঞ্চলকে প্রতিস্থাপন করে।

Examples
// Restrict text and drawings to a specific region
Brain.Screen.setClipRegion(0, 0, 120, 120);
Brain.Screen.drawRectangle(60, 60, 100, 100, red);
Brain.Screen.printAt(60, 60, "Cut off!");

IQ (২য় প্রজন্ম) ব্রেইনের স্ক্রিনের একটি স্ক্রিনশট যেখানে সাদা অক্ষরে "Cut of" লেখা আছে এবং এর ঠিক নিচে উপরের বাম চতুর্ভাগে একটি নিরেট লাল বর্গক্ষেত্র রয়েছে, যা ক্লিপ অঞ্চলের মধ্যে মুদ্রিত বিষয়বস্তুকে প্রতিফলিত করে।

drawPixel#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনের নির্বাচিত x এবং y পিক্সেল অবস্থানে একটি পিক্সেল অঙ্কন করে।

Available Functions
void drawPixel(
  int x,
  int y );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x

int

যে x-স্থানাঙ্কে পিক্সেলটি আঁকা হবে, তা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হবে।

y

int

যে y-স্থানাঙ্কে পিক্সেলটি আঁকা হবে, তা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হবে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • setPenColor দিয়ে সেট করা বর্তমান পেনের রঙ ব্যবহার করে পিক্সেল আঁকা হয়।

  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে সেট করা যেতে পারে।

  • নির্দিষ্ট পিক্সেল অবস্থানটি স্ক্রিনের সীমার বাইরে হলে, পিক্সেলটি আঁকা হয় না।

Examples
// Draw one pixel at the center 
// of the screen
Brain.Screen.drawPixel(80, 50);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট, স্ক্রিনের কেন্দ্রে একটি ছোট সাদা বিন্দু রয়েছে।

drawLine#

আইকিউ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে দুটি বিন্দুকে সংযুক্ত করে একটি সরলরেখা আঁকে।

Available Functions
void drawLine(
  int x1,
  int y1,
  int x2,
  int y2 );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x1

int

রেখাটির শুরুর x-স্থানাঙ্ক, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হবে।

y1

int

রেখাটির শুরুর y-স্থানাঙ্ক, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

x2

int

রেখাটির শেষ x-স্থানাঙ্ক, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

y2

int

রেখাটির শেষ y-স্থানাঙ্ক, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • setPenColor দিয়ে সেট করা বর্তমান পেনের রঙ ব্যবহার করে লাইন আঁকা হয়।

  • লাইনের প্রস্থ setPenWidth দিয়ে সেট করা বর্তমান পেনের প্রস্থ দ্বারা নির্ধারিত হয়।

  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে সেট করা যেতে পারে।

  • রেখার কোনো অংশ যদি স্ক্রিনের সীমার বাইরে থাকে, তবে কেবল দৃশ্যমান অংশটিই আঁকা হয়।

Examples
// Draw a line from the top left to 
// bottom right of the screen
Brain.Screen.drawLine(0, 0, 159, 107);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট যেখানে উপরের বাম কোণ থেকে নিচের ডান কোণ পর্যন্ত একটি সাদা তির্যক রেখা আঁকা আছে।

drawRectangle#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে নির্দিষ্ট অবস্থান ও আকারে একটি আয়তক্ষেত্র অঙ্কন করে।

Available Functions

1 — বর্তমানে কনফিগার করা ফিল কালার ব্যবহার করে একটি আয়তক্ষেত্র আঁকে এবং পূরণ করে।

void drawRectangle(
    int x,
    int y,
    int width,
    int height );

2 — পূর্বনির্ধারিত অথবা কাস্টম রঙ অবজেক্ট ব্যবহার করে একটি আয়তক্ষেত্র অঙ্কন ও পূরণ করে।

void drawRectangle(
    int           x,
    int           y,
    int           width,
    int           height,
    const color&  color );

3 — হেক্সাডেসিমাল রঙের মান ব্যবহার করে একটি আয়তক্ষেত্র আঁকে এবং পূরণ করে।

void drawRectangle(
    int           x,
    int           y,
    int           width,
    int           height,
    const char*   color );

4 — একটি হিউ ভ্যালু ব্যবহার করে একটি আয়তক্ষেত্র অঙ্কন ও পূরণ করে।

void drawRectangle(
    int x,
    int y,
    int width,
    int height,
    int hue );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x

int

আয়তক্ষেত্রটির উপরের-বাম কোণার x-স্থানাঙ্ক, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

y

int

আয়তক্ষেত্রটির উপরের-বাম কোণার y-স্থানাঙ্ক, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

width

int

আয়তক্ষেত্রটির প্রস্থ, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

height

int

আয়তক্ষেত্রটির উচ্চতা, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হবে।

color

const color&

একটি color অবজেক্ট ব্যবহার করে আয়তক্ষেত্রটি পূরণ করে। পূর্বনির্ধারিত রঙগুলির মধ্যে রয়েছে:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
এটি একটি কাস্টম রঙের অবজেক্ট ব্যবহার করতে পারে।

color

const char*

একটি হেক্সাডেসিমাল রঙের মান ব্যবহার করে আয়তক্ষেত্রটি পূরণ করে (উদাহরণস্বরূপ, “#FF0000”)।

hue

int

0–359 পরিসরের একটি হিউ মান ব্যবহার করে আয়তক্ষেত্রটি পূরণ করে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • setPenColor দিয়ে সেট করা বর্তমান পেনের রঙ ব্যবহার করে আয়তক্ষেত্রের রূপরেখা আঁকা হয়।

  • setPenWidth দিয়ে সেট করা বর্তমান পেনের প্রস্থ দ্বারা আউটলাইনের পুরুত্ব নির্ধারণ করা হয়।

  • যখন কোনও color প্যারামিটার প্রদান করা হয় না, তখন আয়তক্ষেত্রের অভ্যন্তরটি setFillColor দিয়ে সেট করা বর্তমান ফিল রঙ ব্যবহার করে পূরণ করা হয়।

  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে পরিবর্তন করা যেতে পারে।

  • যদি আয়তক্ষেত্রটির কোনো অংশ স্ক্রিনের সীমার বাইরে থাকে, তবে কেবল দৃশ্যমান অংশটিই আঁকা হয়।

  • hue প্যারামিটার মানটি একটি বৃত্তাকার কালার হুইলের উপর ভিত্তি করে নির্ধারিত হয়, যেমনটি নিচে দেখানো হয়েছে, যেখানে মানগুলো হুইলটির চারপাশের ডিগ্রি নির্দেশ করে (উদাহরণস্বরূপ, লাল ০°-এর কাছাকাছি, সবুজ ১২০°-এর কাছাকাছি এবং নীল ২৪০°-এর কাছাকাছি)।

একটি রঙের চাকা যেখানে ০ থেকে ৩৫৯ পর্যন্ত রঙের পরিসর দেখানো হচ্ছে, যেখানে লাল হলো ০, সবুজ হলো ১২০ এবং নীল হলো ২৪০।

Examples
// Draw a red rectangle on the screen
Brain.Screen.drawRectangle(25, 25, 100, 50, red);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট যেখানে স্ক্রিনের প্রায় মাঝখানে একটি পাতলা সাদা বর্ডার সহ একটি বড় লাল আয়তক্ষেত্র আঁকা আছে।

drawCircle#

IQ (২য় প্রজন্ম) ব্রেইন স্ক্রিনে নির্দিষ্ট অবস্থান ও ব্যাসার্ধে একটি বৃত্ত অঙ্কন করে।

Available Functions

1 — বর্তমানে কনফিগার করা ফিল কালার ব্যবহার করে একটি বৃত্ত আঁকে এবং পূরণ করে।

void drawCircle(
    int x,
    int y,
    int radius );

2 — পূর্বনির্ধারিত বা কাস্টম রঙ অবজেক্ট ব্যবহার করে একটি বৃত্ত আঁকে এবং পূরণ করে।

void drawCircle(
    int           x,
    int           y,
    int           radius,
    const color&  color );

3 — হেক্সাডেসিমাল রঙের মান ব্যবহার করে একটি বৃত্ত আঁকে এবং পূরণ করে।

void drawCircle(
    int           x,
    int           y,
    int           radius,
    const char*   color );

4 — একটি হিউ ভ্যালু ব্যবহার করে একটি বৃত্ত আঁকে এবং পূরণ করে।

void drawCircle(
    int x,
    int y,
    int radius,
    int hue );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

x

int

বৃত্তের কেন্দ্রের x-স্থানাঙ্ক, যা ০ থেকে ১৫৯ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

y

int

বৃত্তের কেন্দ্রের y-স্থানাঙ্ক, যা ০ থেকে ১০৭ পর্যন্ত একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

radius

int

বৃত্তটির ব্যাসার্ধ, যা ০ থেকে ১০৭ পিক্সেলের মধ্যে একটি পূর্ণসংখ্যা হিসেবে দেওয়া হয়।

color

const color&

একটি color অবজেক্ট ব্যবহার করে বৃত্তটি পূরণ করে। পূর্বনির্ধারিত রঙগুলির মধ্যে রয়েছে:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
এটি একটি কাস্টম রঙের অবজেক্ট ব্যবহার করতে পারে।

color

const char*

হেক্সাডেসিমাল রঙের মান ব্যবহার করে বৃত্তটি পূরণ করে (উদাহরণস্বরূপ, “#FF0000”)।

hue

int

0–359 পরিসরের একটি হিউ মান ব্যবহার করে বৃত্তটি পূরণ করে।

Return Values

এই ফাংশনটি কোনো মান ফেরত দেয় না।

Notes
  • setPenColor দিয়ে সেট করা বর্তমান পেনের রঙ ব্যবহার করে বৃত্তের রূপরেখা আঁকা হয়।

  • setPenWidth দিয়ে সেট করা বর্তমান পেনের প্রস্থ দ্বারা আউটলাইনের পুরুত্ব নির্ধারণ করা হয়।

  • যখন কোনও color প্যারামিটার প্রদান করা হয় না, তখন বৃত্তের অভ্যন্তরটি setFillColor দিয়ে সেট করা বর্তমান ফিল রঙ ব্যবহার করে পূরণ করা হয়।

  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে পরিবর্তন করা যেতে পারে।

  • hue প্যারামিটার মানটি একটি বৃত্তাকার কালার হুইলের উপর ভিত্তি করে নির্ধারিত হয়, যেমনটি নিচে দেখানো হয়েছে, যেখানে মানগুলো হুইলটির চারপাশের ডিগ্রি নির্দেশ করে (উদাহরণস্বরূপ, লাল ০°-এর কাছাকাছি, সবুজ ১২০°-এর কাছাকাছি এবং নীল ২৪০°-এর কাছাকাছি)।

একটি রঙের চাকা যেখানে ০ থেকে ৩৫৯ পর্যন্ত রঙের পরিসর দেখানো হচ্ছে, যেখানে লাল হলো ০, সবুজ হলো ১২০ এবং নীল হলো ২৪০।

Examples
// Draw a green circle on the screen
Brain.Screen.drawCircle(80, 50, 20, green);

IQ Brain স্ক্রিনের একটি স্ক্রিনশট, যেখানে স্ক্রিনের কেন্দ্রে একটি পাতলা সাদা বর্ডারসহ একটি নিরেট সবুজ বৃত্ত রয়েছে।

drawImageFromFile#

SD কার্ডে সংরক্ষিত একটি ইমেজ ফাইল ব্যবহার করে IQ (2nd gen) ব্রেইন স্ক্রিনে একটি ছবি আঁকে।

Available Functions
bool drawImageFromFile(
  const char* name,
  int x,
  int y );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

name

const char*

এসডি কার্ডে থাকা ইমেজের ফাইলের নাম। ফাইলটির এক্সটেনশন অবশ্যই .bmp ( .bmp অথবা .png ( .png হতে হবে।

x

int

এক্স-স্থানাঙ্ক, যা ০ থেকে ১৫৯ পিক্সেলের মধ্যে থাকবে, যেখানে ছবিটির বাম প্রান্ত আঁকা হবে।

y

int

y-স্থানাঙ্ক, যা ০ থেকে ১০৭ পিক্সেলের মধ্যে থাকবে, যেখানে ছবিটির উপরের প্রান্ত আঁকা হবে।

Return Values

ছবিটি সফলভাবে আঁকা হয়েছে কিনা তা নির্দেশ করে একটি বুলিয়ান মান রিটার্ন করে:

  • true — ছবিটি সফলভাবে লোড হয়েছে এবং স্ক্রিনে আঁকা হয়েছে।
  • false — ছবিটি আঁকা যায়নি (উদাহরণস্বরূপ, যদি ফাইলটি বিদ্যমান না থাকে বা অবৈধ হয়)।

Notes
  • সমর্থিত ছবির ফরম্যাটগুলো হলো .bmp এবং .png।

  • ইমেজ ফাইলের সাইজ অবশ্যই 512 KB এর বেশি হবে না।

    • ফাইলের আকার কমাতে ৮-বিট আরএলই এনকোডিং ব্যবহার করার পরামর্শ দেওয়া হয়।

  • সর্বোচ্চ সমর্থিত ছবির মাপ হলো ব্রেইন স্ক্রিনের আকারের (১৬০ x ১০৮ পিক্সেল)।

  • x এবং y স্থানাঙ্কগুলি বর্তমান স্ক্রিন মূলবিন্দুর সাপেক্ষে, যা setOrigin ব্যবহার করে পরিবর্তন করা যেতে পারে।

Examples
// Draw a bmp file on the Brain's screen at coordinate 0, 0
Brain.Screen.drawImageFromFile("test_image.bmp", 0, 0);

render#

ব্রেইনের স্ক্রিনের জন্য ডাবল বাফারিং সক্ষম করে। একবার কল করা হলে, যেকোনো ড্রয়িং ফাংশন (যেমন টেক্সট, শেপ বা ইমেজ) প্রোজেক্টের বাকি অংশের জন্য আর তাৎক্ষণিকভাবে প্রদর্শিত হবে না। পরিবর্তে, আপডেটগুলো কেবল তখনই দেখানো হবে যখন render আবার ব্যবহার করা হবে। এটি আরও মসৃণ এবং নিয়ন্ত্রিত স্ক্রিন আপডেটের সুযোগ করে দেয়, কিন্তু এর মানে হলো render ব্যবহার না করা পর্যন্ত কিছুই দৃশ্যমান হবে না।

Available Functions

1 — ডাবল বাফারিং সক্ষম করে অথবা ব্যাক বাফারকে স্ক্রিনে রেন্ডার করে।

bool render();

2 — ভার্টিকাল সিঙ্ক আচরণ নিয়ন্ত্রণ এবং ঐচ্ছিক শিডিউলার নির্বাহের সুবিধা সহ ব্যাক বাফারকে স্ক্রিনে রেন্ডার করে।

bool render(
    bool bVsyncWait,
    bool bRunScheduler = true );

Parameters

প্যারামিটার

প্রকার

বর্ণনা

bVsyncWait

bool

​

  • true — ভিজ্যুয়াল টিয়ারিং কমাতে রেন্ডারিং করার আগে স্ক্রিনের ভার্টিকাল রিফ্রেশের জন্য অপেক্ষা করুন।
  • false — রেন্ডারিং করার আগে স্ক্রিনের ভার্টিকাল রিফ্রেশের জন্য অপেক্ষা করবেন না।

bRunScheduler

bool

ঐচ্ছিক।

  • true (ডিফল্ট) — রেন্ডার করার জন্য অপেক্ষা করার সময় ব্যাকগ্রাউন্ড টাস্ক চলার অনুমতি দিন।
  • false — রেন্ডার করার জন্য অপেক্ষা করার সময় ব্যাকগ্রাউন্ড টাস্ক চলার অনুমতি দেবেন না।

Return Values

বাফারে সংরক্ষিত ড্রয়িংগুলো স্ক্রিনে সফলভাবে রেন্ডার করা হয়েছে কিনা তা নির্দেশ করে একটি বুলিয়ান মান রিটার্ন করে:

  • true — ড্রয়িংগুলো স্ক্রিনে সফলভাবে রেন্ডার করা হয়েছে।
  • false — ড্রয়িংগুলো স্ক্রিনে রেন্ডার করা যায়নি।
  • Notes
    • render কল করলে, প্রোজেক্টের বাকি অংশের জন্য render ব্যবহার করতে হবে।

    Examples
    Brain.Screen.render();
    
    // Draw text to the back buffer
    Brain.Screen.print("Render later...");
    
    // Wait for a screen press to render drawings
    while (!Brain.Screen.pressing()) {
      wait(20, msec);
    }
    Brain.Screen.render();