Layar#

Perkenalan#

Kelas screen diturunkan dari kelas dasar brain. Kelas ini mengontrol bagaimana IQ (generasi ke-1) Brain menampilkan teks dan nilai pada layar bawaannya.

Layar IQ (generasi ke-1) Brain mendukung hingga 5 baris dan 21 kolom teks.

VEX IQ (generasi ke-1) Brain dengan overlay grid bernomor (kolom 1–21 dan baris 1–5). Garis overlay merah menyoroti struktur grid, dengan panah yang memberi label Kolom 1, Kolom 21, Baris 1, Baris 2, dan Baris 5. Baris pertama menampilkan angka 1 hingga 21 di bagian atas.

Mengakses#

Kelas screen dapat diakses dengan:

Brain.Screen

Catatan#

  • Objek screen disediakan oleh Otak. Objek ini tidak dibangun secara langsung.

  • Proyek menggunakan satu objek global Brain , sehingga fungsi layar dipanggil menggunakan Brain.Screen.

Contoh#

/* 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!");

Fungsi Keanggotaan#

Kelas screen mencakup fungsi anggota berikut:

  • print — Mencetak teks, angka, atau nilai Boolean yang diformat ke layar Brain.

  • setCursor — Memindahkan kursor teks ke baris dan kolom yang ditentukan.

  • newLine — Menghapus sisa baris saat ini dan memindahkan kursor ke baris berikutnya.

  • clearLine — Menghapus sisa baris saat ini atau menghapus baris tertentu.

  • row — Mengembalikan baris tempat teks akan dicetak.

  • column — Mengembalikan kolom tempat teks akan dicetak.

  • getStringHeight — Mengembalikan tinggi string dalam piksel menggunakan font saat ini.

  • getStringWidth — Mengembalikan lebar string dalam piksel menggunakan font saat ini.

  • printAt — Mencetak teks berformat pada lokasi piksel x, y (opsional buram).

  • clearScreen — Membersihkan seluruh layar (opsional ke warna tertentu).

  • setFont — Mengatur font yang digunakan untuk pencetakan di layar.

  • setPenWidth — Mengatur ketebalan garis yang digambar dan garis luar bentuk.

  • setPenColor — Mengatur warna teks, piksel, garis, dan garis luar bentuk.

  • setFillColor — Mengatur warna isi untuk bentuk yang digambar dan latar belakang teks yang dicetak.

  • setOrigin — Mengatur titik asal yang digunakan untuk koordinat layar.

  • setClipRegion — Membatasi output layar ke wilayah persegi panjang.

  • drawPixel — Menggambar satu piksel pada koordinat.

  • drawLine — Menggambar garis antara dua titik.

  • drawRectangle — Menggambar persegi panjang di lokasi x, y dengan ukuran yang ditentukan.

  • drawCircle — Menggambar lingkaran di lokasi x, y dengan radius yang ditentukan.

  • render — Mengaktifkan double buffering atau merender back buffer ke layar.

Sebelum memanggil fungsi anggota screen apa pun, sebuah instance brain harus dibuat, seperti yang ditunjukkan di bawah ini:

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

print#

Menampilkan teks, angka, atau nilai Boolean pada layar IQ (generasi ke-1) Brain.

Available Functions

1 — Mencetak teks yang diformat menggunakan literal string atau string gaya C yang hanya dapat dibaca.

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

2 — Mencetak teks yang diformat menggunakan larik karakter yang dapat dimodifikasi.

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

Parameters

Parameter

Jenis

Keterangan

format

const char*

String format yang diberikan sebagai literal string atau string gaya C yang hanya dapat dibaca (misalnya, “Score: %d”).

format

char*

String format yang diberikan sebagai larik karakter yang dapat dimodifikasi.

…

Satu atau lebih nilai tambahan yang dimasukkan ke dalam string format, dipisahkan oleh koma.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Output dimulai pada posisi kursor saat ini pada layar.

  • Teks yang dicetak menggunakan font layar saat ini .

  • Teks yang dicetak menggunakan warna pena saat ini.

  • Teks yang dicetak dengan print selalu dicetak dengan latar belakang, dan warna latar belakang ditentukan oleh warna isi saat ini.

  • Saat menggunakan string format, jumlah dan tipe nilai yang dilewatkan harus sesuai dengan penentu format dalam string.

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

setCursor#

Memindahkan kursor ke baris dan kolom tertentu pada layar IQ (generasi ke-1) Brain. Panggilan print berikutnya akan mulai mencetak di lokasi tersebut.

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

Parameters

Parameter

Jenis

Keterangan

row

int32_t

Baris tempat kursor akan dipindahkan.

col

int32_t

Kolom tempat kursor akan dipindahkan.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Mempengaruhi di mana keluaran teks selanjutnya dimulai ketika menggunakan print.

  • Baris dan kolom didasarkan pada font layar yang sedang diatur.

  • Memanggil setCursor hanya memengaruhi posisi keluaran teks berikutnya.

Examples
// Print at row 3 column 7
Brain.Screen.setCursor(3, 7);
Brain.Screen.print("VEXcode!");

Layar IQ (generasi ke-1) Brain menampilkan teks terpusat bertuliskan “VEXcode!”.

newLine#

Memindahkan kursor ke awal baris berikutnya di layar Otak.

Available Functions
void newLine();

Parameters

Fungsi ini tidak menerima parameter apa pun.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Jika kursor berada di tengah kalimat, newLine akan menghapus sisa baris setelah kursor sebelum berpindah ke baris berikutnya.

  • Setelah memanggil newLine, kursor diposisikan pada kolom pertama baris berikutnya.

  • Posisi kursor dan penomoran baris diatur menggunakan setCursor.

Examples
// Display two lines of text
Brain.Screen.print("First message");
Brain.Screen.newLine();
Brain.Screen.print("Second message");

Layar IQ (generasi ke-1) Brain menampilkan “Pesan Pertama” dan “Pesan Kedua,” ditampilkan pada baris terpisah.

clearLine#

Menghapus teks dari satu baris pada layar IQ (generasi ke-1) Brain.

Available Functions

1 — Menghapus sisa baris saat ini dari posisi kursor.

void clearLine();

2 — Menghapus baris yang ditentukan menggunakan warna isi yang saat ini dikonfigurasi.

void clearLine(
    int number );

3 — Menghapus baris yang ditentukan menggunakan objek warna yang telah ditentukan sebelumnya atau warna kustom.

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

4 — Menghapus baris yang ditentukan menggunakan nilai warna heksadesimal.

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

5 — Menghapus baris yang ditentukan menggunakan nilai hue.

void clearLine(
    int number,
    int hue );

Parameters

Parameter

Jenis

Keterangan

number

int

Nomor baris yang akan dihapus. Penomoran baris dimulai dari 1.

color

const color&

Clears the row using a color object. Predefined colors include:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
This can also use a custom color object.

color

const char*

Menghapus baris menggunakan nilai warna heksadesimal (misalnya, “#000000”).

hue

int

Menghapus baris menggunakan nilai hue bilangan bulat dalam rentang 0–359, yang mewakili derajat di sekitar roda warna.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Menghapus baris tidak mengubah posisi kursor saat ini.

  • Posisi kursor dan penomoran baris diatur menggunakan setCursor.

  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

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#

Mengembalikan posisi baris kursor saat ini pada layar IQ (generasi ke-1) Brain.

Available Functions
int32_t row();

Parameters

Fungsi ini tidak menerima parameter apa pun.

Return Values

Mengembalikan nilai int32_t yang mewakili baris tempat teks akan dicetak.

Penomoran baris dimulai dari 1.

Notes
  • Posisi kursor didasarkan pada font layar saat ini .

  • Nilai yang dikembalikan menunjukkan di mana output cetak berikutnya akan muncul.

  • Nilai baris berubah ketika teks dicetak atau ketika setCursor dipanggil.

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

column#

Mengembalikan kolom tempat teks akan dicetak pada layar IQ (generasi ke-1) Brain.

Available Functions
int32_t column();

Parameters

Fungsi ini tidak menerima parameter apa pun.

Return Values

Mengembalikan nilai int32_t yang mewakili kolom tempat teks akan dicetak.

Penomoran kolom dimulai dari 1.

Notes
  • Posisi kursor didasarkan pada font layar saat ini .

  • Nilai yang dikembalikan menunjukkan di mana output cetak berikutnya akan muncul.

  • Nilai kolom berubah ketika teks dicetak atau ketika setCursor dipanggil.

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

getStringHeight#

Mengembalikan tinggi, dalam piksel, dari sebuah string saat ditampilkan pada layar IQ (generasi ke-1) Brain.

Available Functions
int32_t getStringHeight( 
    const char* cstr );

Parameters

Parameter

Jenis

Keterangan

cstr

const char*

Teks yang akan diukur, diberikan sebagai string bergaya C (misalnya, “Hello”).

Return Values

Mengembalikan nilai int32_t yang mewakili tinggi string dalam piksel saat ditampilkan di layar Brain.

Notes
  • Tinggi yang dikembalikan bergantung pada font layar yang saat ini dipilih ( .

  • Fungsi ini mengukur string tanpa menggambarkannya di layar.

  • Tinggi yang dikembalikan mencerminkan bagaimana string tersebut akan terlihat saat dicetak.

getStringWidth#

Mengembalikan lebar, dalam piksel, dari sebuah string saat ditampilkan pada layar IQ (generasi ke-1) Brain.

Available Functions
int32_t getStringWidth( 
    const char* cstr );

Parameters

Parameter

Jenis

Keterangan

cstr

const char*

Teks yang akan diukur, diberikan sebagai string bergaya C (misalnya, “Hello”).

Return Values

Mengembalikan nilai int32_t yang mewakili lebar string dalam piksel saat ditampilkan di layar Brain.

Notes
  • Lebar yang dikembalikan bergantung pada font layar yang saat ini dipilih ( .

  • Fungsi ini mengukur string tanpa menggambarkannya di layar.

  • Lebar yang dikembalikan mencerminkan bagaimana string akan terlihat saat dicetak.

printAt#

Mencetak teks, angka, atau nilai Boolean pada koordinat tertentu di layar IQ (generasi ke-1) Brain.

Available Functions

1 — Mencetak output yang diformat pada lokasi piksel yang ditentukan.

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

2 — Mencetak output yang diformat pada lokasi piksel yang ditentukan dan mengatur apakah latar belakang teks buram atau transparan.

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

Parameters

Parameter

Jenis

Keterangan

x

int32_t

Posisi x untuk mencetak, mengacu pada titik asal layar.

y

int32_t

Posisi y untuk mencetak, mengacu pada titik asal layar.

bOpaque

bool

Mengontrol apakah teks yang dicetak digambar buram atau transparan:

  • true — Latar belakang teks yang dicetak diisi menggunakan warna isian saat ini.
  • false — Teks digambar transparan dan latar belakang tidak diisi.

format

const char*

String format yang mengontrol apa yang dicetak di layar (misalnya, “Score: %d”).

…

Satu atau lebih nilai tambahan yang dimasukkan ke dalam string format, dipisahkan oleh koma.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Koordinat x dan y relatif terhadap titik asal layar saat ini, yang dapat diubah menggunakan setOrigin.

  • Teks yang dicetak menggunakan font layar saat ini .

  • Teks yang dicetak menggunakan warna pena saat ini.

  • Saat menggunakan string format, jumlah dan tipe nilai yang dilewatkan harus sesuai dengan penentu format dalam string.

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

clearScreen#

Menghapus semua gambar dan teks dari layar Otak.

Available Functions

1 — Menghapus semua data di layar menjadi hitam.

void clearScreen();

2 — Membersihkan layar menggunakan objek warna yang telah ditentukan atau warna kustom.

void clearScreen(
    const color& color );

3 — Membersihkan layar menggunakan nilai warna heksadesimal.

void clearScreen(
    const char* color );

4 — Membersihkan layar menggunakan nilai hue.

void clearScreen(
    int hue );

Parameters

Parameter

Jenis

Keterangan

color

const color&

Clears the screen using a color object. Predefined colors include:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
This can also use a custom color object.

color

const char*

Menghapus layar menggunakan nilai warna heksadesimal yang direpresentasikan sebagai string (misalnya, “#000000”).

hue

int

Membersihkan layar menggunakan nilai hue bilangan bulat dalam rentang 0–359, yang mewakili derajat di sekitar roda warna.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

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);

setFont#

Mengatur font yang digunakan untuk teks yang ditampilkan pada layar IQ (generasi ke-1) Brain.

Ini mengontrol font yang diterapkan pada output teks selanjutnya saat menggunakan fungsi teks layar seperti print.

Available Functions
void setFont(
  fontType font );

Parameters

Parameter

Jenis

Keterangan

font

fontType

Sets the font to one of the following:

  • mono12
  • mono15
  • mono20
  • mono30
  • mono40
  • mono60
  • prop20
  • prop30
  • prop40
  • prop60
These options are shown below.

Return Values

Fungsi ini tidak mengembalikan nilai.

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");

setPenWidth#

Mengatur ketebalan garis yang digambar dan garis luar bentuk.

Available Functions
void setPenWidth(
  uint32_t width );

Parameters

Parameter

Jenis

Keterangan

width

uint32_t

Lebar pena, dalam piksel, dari 0 hingga 32.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes 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);

setPenColor#

Mengatur warna teks, piksel, garis, dan garis luar bentuk.

Available Functions

1 — Mengatur warna pena menggunakan objek warna yang telah ditentukan sebelumnya atau warna kustom.

void setPenColor(
    const color& color );

2 — Mengatur warna pena menggunakan nilai warna heksadesimal.

void setPenColor(
    const char* color );

3 Mengatur warna pena menggunakan nilai hue.

void setPenColor(
    int hue );

Parameters

Parameter

Jenis

Keterangan

color

const color&

Mengatur warna pena menggunakan objek color Warna yang telah ditentukan meliputi:

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

color

const char*

Mengatur warna pena menggunakan nilai warna heksadesimal yang direpresentasikan sebagai string (misalnya, “#FF0000”).

hue

int

Mengatur warna pena menggunakan nilai hue bilangan bulat dalam rentang 0–359, yang mewakili derajat di sekitar roda warna (misalnya, 0 adalah merah, 120 adalah hijau, dan 240 adalah biru).

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

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

setFillColor#

Mengatur warna isian yang digunakan saat bentuk digambar.

Available Functions

1 — Mengatur warna isian menggunakan objek warna yang telah ditentukan sebelumnya atau warna kustom.

void setFillColor(
    const color& color );

2 — Mengatur warna isian menggunakan nilai warna heksadesimal.

void setFillColor(
    const char* color );

3 — Mengatur warna isian menggunakan nilai hue.

void setFillColor(
    int hue );

Parameters

Parameter

Jenis

Keterangan

color

const color&

Mengatur warna isian menggunakan objek color Warna yang telah ditentukan meliputi:

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

color

const char*

Mengatur warna isian menggunakan nilai warna heksadesimal yang direpresentasikan sebagai string (misalnya, “#00FF00”).

hue

int

Mengatur warna isian menggunakan nilai hue bilangan bulat dalam rentang 0–359, yang mewakili derajat di sekitar roda warna (misalnya, 0 adalah merah, 120 adalah hijau, dan 240 adalah biru).

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

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

setOrigin#

Menentukan titik asal yang digunakan untuk menggambar grafik di layar Brain.

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

Parameters

Parameter

Jenis

Keterangan

x

int32_t

Posisi x titik asal relatif terhadap pojok kiri atas layar Otak dari 0 hingga 159.

y

int32_t

Posisi y titik asal relatif terhadap pojok kiri atas layar Brain dari 0 hingga 107.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Titik asal default adalah pojok kiri atas layar pada koordinat (0, 0).

  • Asal usul berlaku untuk fungsi koordinat seperti drawLine, drawRectangle, drawCircle, dan printAt.

  • Pengaturan awal tetap berlaku sampai diubah lagi atau proyek direset.

setClipRegion#

Menentukan area persegi panjang di layar tempat semua gambar dan teks akan dibatasi. Konten apa pun di luar area ini tidak akan ditampilkan.

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

Parameters

Parameter

Jenis

Keterangan

x

int

Koordinat x dari sudut kiri atas wilayah klip, diberikan sebagai bilangan bulat dari 0 hingga 159.

y

int

Koordinat y dari sudut kiri atas wilayah klip, diberikan sebagai bilangan bulat dari 0 hingga 107.

width

int

Lebar area pemotongan dalam piksel, diberikan sebagai bilangan bulat dari 0 hingga 159.

height

int

Tinggi area pemotongan dalam piksel, diberikan sebagai bilangan bulat dari 0 hingga 107.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Fungsi menggambar tetap dijalankan meskipun berada di luar area pemotongan, tetapi hanya bagian di dalam area tersebut yang terlihat.

  • Koordinat x dan y relatif terhadap titik asal layar saat ini, yang dapat diubah menggunakan setOrigin.

  • Area pemotongan hanya berlaku untuk thread saat ini.

  • Menetapkan wilayah klip baru akan menggantikan wilayah klip yang sebelumnya ditetapkan untuk thread saat ini.

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!");

drawPixel#

Menggambar satu piksel pada layar IQ (generasi ke-1) Brain di lokasi piksel x dan y yang ditentukan.

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

Parameters

Parameter

Jenis

Keterangan

x

int

Koordinat x tempat piksel akan digambar, diberikan sebagai bilangan bulat dari 0 hingga 159.

y

int

Koordinat y tempat piksel akan digambar, diberikan sebagai bilangan bulat dari 0 hingga 107.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

  • Koordinat x dan y relatif terhadap titik asal layar saat ini, yang dapat diatur menggunakan setOrigin.

  • Jika lokasi piksel yang ditentukan berada di luar batas layar, piksel tersebut tidak akan digambar.

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

drawLine#

Menggambar garis lurus yang menghubungkan dua titik pada layar IQ (generasi ke-1) Brain.

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

Parameters

Parameter

Jenis

Keterangan

x1

int

Koordinat x awal garis, diberikan sebagai bilangan bulat dari 0 hingga 159.

y1

int

Koordinat y awal garis, diberikan sebagai bilangan bulat dari 0 hingga 107.

x2

int

Koordinat x terakhir dari garis tersebut, diberikan sebagai bilangan bulat dari 0 hingga 159.

y2

int

Koordinat y ujung garis, diberikan sebagai bilangan bulat dari 0 hingga 107.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

  • Lebar garis ditentukan oleh lebar pena saat ini yang diatur dengan setPenWidth.

  • Koordinat x dan y relatif terhadap titik asal layar saat ini, yang dapat diatur menggunakan setOrigin.

  • Jika ada bagian garis yang berada di luar batas layar, hanya bagian yang terlihat yang akan digambar.

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

drawRectangle#

Menggambar persegi panjang pada layar IQ (generasi ke-1) Brain pada posisi dan ukuran yang ditentukan.

Available Functions

1 — Menggambar dan mengisi persegi panjang menggunakan warna isi yang saat ini dikonfigurasi.

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

2 — Menggambar dan mengisi persegi panjang menggunakan objek warna yang telah ditentukan atau warna kustom.

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

3 — Menggambar dan mengisi persegi panjang menggunakan nilai warna heksadesimal.

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

4 — Menggambar dan mengisi persegi panjang menggunakan nilai hue.

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

Parameters

Parameter

Jenis

Keterangan

x

int

Koordinat x dari sudut kiri atas persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 159.

y

int

Koordinat y dari sudut kiri atas persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 107.

width

int

Lebar persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 159.

height

int

Tinggi persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 107.

color

const color&

Mengisi persegi panjang menggunakan objek warna color

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Ini juga dapat menggunakan objek warna kustom.

color

const char*

Mengisi persegi panjang menggunakan nilai warna heksadesimal (misalnya, “#FF0000”).

hue

int

Mengisi persegi panjang menggunakan nilai rona dalam rentang 0–359.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

  • Ketebalan garis luar ditentukan oleh lebar pena saat ini yang diatur dengan setPenWidth.

  • Koordinat x dan y relatif terhadap titik asal layar saat ini, yang dapat diubah menggunakan setOrigin.

  • Jika ada bagian dari persegi panjang yang berada di luar batas layar, hanya bagian yang terlihat yang akan digambar.

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

drawCircle#

Menggambar lingkaran pada layar IQ (generasi ke-1) Brain pada posisi dan radius yang ditentukan.

Available Functions

1 — Menggambar dan mengisi lingkaran menggunakan warna isi yang saat ini dikonfigurasi.

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

2 — Menggambar dan mengisi lingkaran menggunakan objek warna yang telah ditentukan atau warna kustom.

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

3 — Menggambar dan mengisi lingkaran menggunakan nilai warna heksadesimal.

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

4 — Menggambar dan mengisi lingkaran menggunakan nilai hue.

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

Parameters

Parameter

Jenis

Keterangan

x

int

Koordinat x dari pusat lingkaran, diberikan sebagai bilangan bulat dari 0 hingga 159.

y

int

Koordinat y dari pusat lingkaran, diberikan sebagai bilangan bulat dari 0 hingga 107.

radius

int

Jari-jari lingkaran, diberikan sebagai bilangan bulat dari 0 hingga 107 piksel.

color

const color&

Fills the circle using a color object. Predefined colors include:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
This can also use a custom color object.

color

const char*

Mengisi lingkaran menggunakan nilai warna heksadesimal (misalnya, “#FF0000”).

hue

int

Mengisi lingkaran menggunakan nilai rona dalam rentang 0–359.

Return Values

Fungsi ini tidak mengembalikan nilai.

Notes
  • Layar IQ (generasi ke-1) Brain adalah layar monokrom, sehingga warna tertentu tidak akan muncul di layar.

  • Ketebalan garis luar ditentukan oleh lebar pena saat ini yang diatur dengan setPenWidth.

  • Koordinat x dan y relatif terhadap titik asal layar saat ini, yang dapat diubah menggunakan setOrigin.

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

render#

Mengaktifkan double buffering untuk layar Brain. Setelah dipanggil, fungsi menggambar apa pun (seperti teks atau bentuk) tidak akan langsung muncul lagi untuk sisa proyek. Sebagai gantinya, pembaruan hanya akan ditampilkan saat render digunakan lagi. Ini memungkinkan pembaruan layar yang lebih halus dan terkontrol, tetapi berarti tidak ada yang akan terlihat sampai render digunakan.

Available Functions

1 — Mengaktifkan double buffering atau menampilkan buffer belakang ke layar.

bool render();

2 — Menampilkan buffer belakang ke layar dengan kontrol atas perilaku sinkronisasi vertikal dan eksekusi penjadwal opsional.

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

Parameters

Parameter

Jenis

Keterangan

bVsyncWait

bool

​

  • true — Tunggu hingga layar melakukan penyegaran vertikal sebelum melakukan rendering untuk mengurangi robekan visual.
  • false — Jangan menunggu hingga layar melakukan penyegaran vertikal sebelum melakukan rendering.

bRunScheduler

bool

Opsional.

  • true (default) — Izinkan tugas latar belakang berjalan saat menunggu rendering.
  • false — Jangan izinkan tugas latar belakang berjalan saat menunggu rendering.

Return Values

Mengembalikan nilai Boolean yang menunjukkan apakah gambar yang tersimpan dalam buffer berhasil ditampilkan di layar:

  • true — Gambar berhasil ditampilkan di layar.
  • false — Gambar tidak dapat ditampilkan di layar.
  • Notes
    • Memanggil render akan mengharuskan render digunakan untuk sisa proyek.

    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();