Layar#
Perkenalan#
Kelas screen diturunkan dari kelas dasar brain. Kelas ini mengontrol bagaimana V5 Brain menampilkan teks, angka, dan grafik pada layar sentuhnya, dan bagaimana ia merespons input sentuhan.
Secara default, font untuk pencetakan ke Brain adalah monospaced small yang memiliki 12 baris dan 48 kolom.
Untuk menggambar, resolusi Brain adalah 480 x 240 piksel.

Mengakses#
Kelas screen dapat diakses dengan:
Brain.Screen
Catatan#
Objek
screendisediakan oleh Otak. Objek ini tidak dibangun secara langsung.Proyek menggunakan satu objek global
Brain, sehingga fungsi layar dipanggil menggunakanBrain.Screen.
Contoh#
/* This constructor is required when using VS Code.
A Brain is generated automatically at the start of
VEXcode projects. */
// Create the V5 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 yang diformat pada lokasi piksel x, y.clearScreen— Menghapus semua gambar dan teks dari layar Otak.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.drawImageFromFile— Menggambar gambar dari file kartu SD ke layar.render— Mengaktifkan double buffering atau merender back buffer ke layar.pressing— Mengembalikan apakah layar sedang ditekan.xPosition— Mengembalikan koordinat x dari penekanan layar terbaru.yPosition— Mengembalikan koordinat y dari penekanan layar terbaru.pressed— Mendaftarkan fungsi callback untuk dijalankan saat layar ditekan.released— Mendaftarkan fungsi callback untuk dijalankan ketika layar dilepaskan setelah ditekan.
Sebelum memanggil fungsi anggota screen apa pun, sebuah instance brain harus dibuat, seperti yang ditunjukkan di bawah ini:
// Create the V5 Brain
brain Brain = brain();
print#
Menampilkan teks, angka, atau nilai Boolean pada layar V5 Brain.
Available Functions1 — Mencetak teks yang diformat menggunakan literal string atau string gaya C yang hanya dapat dibaca.
void print( const char* format, ... );
Parameters2 — Mencetak teks yang diformat menggunakan larik karakter yang dapat dimodifikasi.
void print( char* format, ... );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
String format yang diberikan sebagai literal string atau string gaya C yang hanya dapat dibaca (misalnya, |
|
|
String format yang diberikan sebagai larik karakter yang dapat dimodifikasi. |
|
Satu atau lebih nilai tambahan yang dimasukkan ke dalam string format, dipisahkan oleh koma. |
Fungsi ini tidak mengembalikan nilai.
NotesTeks yang dicetak menggunakan warna pena saat ini.
Teks yang dicetak dengan
printselalu 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.
// Display a message at the starting cursor
Brain.Screen.print("Hello, Robot!");

setCursor#
Memindahkan kursor ke baris dan kolom tertentu pada layar V5 Brain. Panggilan print berikutnya akan mulai mencetak di lokasi tersebut.
void setCursor(
int32_t row,
int32_t col );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Baris tempat kursor akan dipindahkan. |
|
|
Kolom tempat kursor akan dipindahkan. |
Fungsi ini tidak mengembalikan nilai.
NotesMempengaruhi di mana keluaran teks selanjutnya dimulai ketika menggunakan
print.Baris dan kolom didasarkan pada font layar yang sedang diatur.
Font default (
mono20) menggunakan 12 baris dan 48 kolom.Memanggil
setCursorhanya memengaruhi posisi keluaran teks berikutnya.
// Display text starting at Row 3 Column 12
Brain.Screen.setCursor(3, 12);
Brain.Screen.print("Row 3, Column 12");

newLine#
Memindahkan kursor ke awal baris berikutnya di layar Otak.
Available Functionsvoid newLine();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesFungsi ini tidak mengembalikan nilai.
NotesJika kursor berada di tengah kalimat,
newLineakan 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.
// Display two lines of text
Brain.Screen.print("Line 1");
Brain.Screen.newLine();
Brain.Screen.print("Line 2");

clearLine#
Menghapus teks dari satu baris di layar V5 Brain.
Available Functions1 — 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 );
Parameters5 — Menghapus baris yang ditentukan menggunakan nilai hue.
void clearLine( int number, int hue );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Nomor baris yang akan dihapus. Penomoran baris dimulai dari |
|
|
Clears the row using a
|
|
|
Menghapus baris menggunakan nilai warna heksadesimal (misalnya, |
|
|
Menghapus baris menggunakan nilai hue bilangan bulat dalam rentang |
Fungsi ini tidak mengembalikan nilai.
NotesMenghapus baris tidak mengubah posisi kursor saat ini.
Posisi kursor dan penomoran baris diatur menggunakan
setCursor.Nilai parameter
huedidasarkan pada roda warna melingkar, seperti yang ditunjukkan di bawah ini, di mana nilai-nilai tersebut mewakili derajat di sekitar roda (misalnya, merah mendekati 0°, hijau mendekati 120°, dan biru mendekati 240°).

// 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 baris tempat teks akan dicetak pada layar V5 Brain.
Available Functionsint32_t row();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesMengembalikan nilai int32_t yang mewakili baris tempat teks akan dicetak.
Penomoran baris dimulai dari 1.
NotesNilai yang dikembalikan menunjukkan di mana output cetak berikutnya akan muncul.
Nilai baris berubah ketika teks dicetak atau ketika
setCursordipanggil.
// Display the cursor's current row
Brain.Screen.setCursor(3, 12);
Brain.Screen.print(Brain.Screen.row());

column#
Mengembalikan kolom tempat teks akan dicetak pada layar V5 Brain.
Available Functionsint32_t column();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesMengembalikan nilai int32_t yang mewakili kolom tempat teks akan dicetak.
Penomoran kolom dimulai dari 1.
NotesNilai yang dikembalikan menunjukkan di mana output cetak berikutnya akan muncul.
Nilai kolom berubah ketika teks dicetak atau ketika
setCursordipanggil.
// Display the cursor's current column
Brain.Screen.setCursor(5, 15);
Brain.Screen.print(Brain.Screen.column());

getStringHeight#
Mengembalikan tinggi, dalam piksel, dari sebuah string saat ditampilkan di layar V5 Brain.
Available Functionsint32_t getStringHeight(
const char* cstr );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Teks yang akan diukur, diberikan sebagai string bergaya C (misalnya, |
Mengembalikan nilai int32_t yang mewakili tinggi string dalam piksel saat ditampilkan di layar Brain.
getStringWidth#
Mengembalikan lebar, dalam piksel, dari sebuah string saat ditampilkan di layar V5 Brain.
Available Functionsint32_t getStringWidth(
const char* cstr );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Teks yang akan diukur, diberikan sebagai string bergaya C (misalnya, |
Mengembalikan nilai int32_t yang mewakili lebar string dalam piksel saat ditampilkan di layar Brain.
printAt#
Mencetak teks, angka, atau nilai Boolean pada koordinat tertentu di layar V5 Brain.
Available Functions1 — Mencetak output yang diformat pada lokasi piksel yang ditentukan.
void printAt( int32_t x, int32_t y, const char* format, ... );
Parameters2 — 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, ... );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Posisi x untuk mencetak, mengacu pada titik asal layar. |
|
|
Posisi y untuk mencetak, mengacu pada titik asal layar. |
|
|
Mengontrol apakah teks yang dicetak digambar buram atau transparan:
|
|
|
String format yang mengontrol apa yang dicetak di layar (misalnya, |
|
Satu atau lebih nilai tambahan yang dimasukkan ke dalam string format, dipisahkan oleh koma. |
Fungsi ini tidak mengembalikan nilai.
NotesKoordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diubah menggunakansetOrigin.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.
// Print "Center" at the center of the screen
Brain.Screen.printAt(220, 120, "Center");

clearScreen#
Menghapus semua gambar dan teks dari layar Otak dan mengatur ulang posisi kursor ke baris 1, kolom 1.
Available Functions1 — 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 );
Parameters4 — Membersihkan layar menggunakan nilai hue.
void clearScreen( int hue );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Clears the screen using a
|
|
|
Menghapus layar menggunakan nilai warna heksadesimal yang direpresentasikan sebagai string (misalnya, |
|
|
Membersihkan layar menggunakan nilai hue bilangan bulat dalam rentang |
Fungsi ini tidak mengembalikan nilai.
NotesNilai parameter
huedidasarkan pada roda warna melingkar, seperti yang ditunjukkan di bawah ini, di mana nilai-nilai tersebut mewakili derajat di sekitar roda (misalnya, merah mendekati 0°, hijau mendekati 120°, dan biru mendekati 240°).

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

setFont#
Mengatur font yang digunakan untuk teks yang ditampilkan di layar V5 Brain.
Ini mengontrol font yang diterapkan pada output teks selanjutnya saat menggunakan fungsi teks layar seperti print.
void setFont(
fontType font );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Mengatur font ke salah satu dari berikut ini:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
Fungsi ini tidak mengembalikan nilai.
Examples// Print larger text
Brain.Screen.setFont(mono40);
Brain.Screen.print("VEX");

// Print in Chinese
Brain.Screen.setFont(fontType::cjk16);
Brain.Screen.print("VEX机器人");

setPenWidth#
Mengatur ketebalan garis yang digambar dan garis luar bentuk.
Available Functionsvoid setPenWidth(
uint32_t width );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Lebar pena, dalam piksel, dari 0 hingga 32. |
Fungsi ini tidak mengembalikan nilai.
NotesLebar pena berlaku untuk fungsi menggambar seperti
drawLine,drawRectangle, dandrawCircle.
// Draw a rectangle with a pen width of 10
Brain.Screen.setPenWidth(10);
Brain.Screen.drawRectangle(50, 50, 130, 60);

setPenColor#
Mengatur warna teks, piksel, garis, dan garis luar bentuk.
Available Functions1 — 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 );
Parameters3 Mengatur warna pena menggunakan nilai hue.
void setPenColor( int hue );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Mengatur warna pena menggunakan objek
|
|
|
Mengatur warna pena menggunakan nilai warna heksadesimal yang direpresentasikan sebagai string (misalnya, |
|
|
Mengatur warna pena menggunakan nilai hue bilangan bulat dalam rentang |
Fungsi ini tidak mengembalikan nilai.
NotesWarna pena default di awal proyek adalah
white.Warna pena digunakan untuk garis luar bentuk (seperti dengan
drawCircleataudrawRectangle), teks dan keluaran numerik (denganprintdanprintAt), dan piksel individual yang digambar dengandrawPixel.Nilai parameter
huedidasarkan pada roda warna melingkar, seperti yang ditunjukkan di bawah ini, di mana nilai-nilai tersebut mewakili derajat di sekitar roda (misalnya, merah mendekati 0°, hijau mendekati 120°, dan biru mendekati 240°).

// Draw a rectangle with orange borders
Brain.Screen.setPenColor(orange);
Brain.Screen.drawRectangle(50, 50, 130, 60);

setFillColor#
Mengatur warna isian yang digunakan saat bentuk digambar.
Available Functions1 — 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 );
Parameters3 — Mengatur warna isian menggunakan nilai hue.
void setFillColor( int hue );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Mengatur warna isian menggunakan objek
|
|
|
Mengatur warna isian menggunakan nilai warna heksadesimal yang direpresentasikan sebagai string (misalnya, |
|
|
Mengatur warna isian menggunakan nilai hue bilangan bulat dalam rentang |
Fungsi ini tidak mengembalikan nilai.
NotesWarna isian default di awal proyek adalah
black.Warna isian digunakan untuk bagian dalam bentuk (seperti pada
drawCircleataudrawRectangle).Warna isian digunakan sebagai warna latar belakang untuk teks yang dicetak (seperti pada
printdanprintAt).Jika
transparentdigunakan dengan teks yang dicetak, latar belakangnya akan menjadiblack.
Nilai parameter
huedidasarkan pada roda warna melingkar, seperti yang ditunjukkan di bawah ini, di mana nilai-nilai tersebut mewakili derajat di sekitar roda (misalnya, merah mendekati 0°, hijau mendekati 120°, dan biru mendekati 240°).

// Draw a rectangle filled with purple
Brain.Screen.setFillColor(purple);
Brain.Screen.drawRectangle(50, 100, 130, 60);

setOrigin#
Menentukan titik asal yang digunakan untuk menggambar dan mencetak berdasarkan koordinat pada layar Brain.
Available Functionsvoid setOrigin(
int32_t x,
int32_t y );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Posisi x titik asal relatif terhadap pojok kiri atas layar Brain dari 0 hingga 479. |
|
|
Posisi y titik asal relatif terhadap pojok kiri atas layar Brain dari 0 hingga 239. |
Fungsi ini tidak mengembalikan nilai.
NotesTitik asal default adalah pojok kiri atas layar pada koordinat (0, 0).
Asal usul berlaku untuk fungsi koordinat seperti
drawLine,drawRectangle,drawCircle, danprintAt.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 Functionsvoid setClipRegion(
int x,
int y,
int width,
int height );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Koordinat x dari sudut kiri atas wilayah klip, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Koordinat y dari sudut kiri atas wilayah klip, diberikan sebagai bilangan bulat dari 0 hingga 239. |
|
|
Lebar area pemotongan dalam piksel, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Tinggi area pemotongan dalam piksel, diberikan sebagai bilangan bulat dari 0 hingga 239. |
Fungsi ini tidak mengembalikan nilai.
NotesFungsi menggambar tetap dijalankan meskipun berada di luar area pemotongan, tetapi hanya bagian di dalam area tersebut yang terlihat.
Koordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diubah menggunakansetOrigin.Area pemotongan hanya berlaku untuk thread saat ini.
Menetapkan wilayah klip baru akan menggantikan wilayah klip yang sebelumnya ditetapkan untuk thread saat ini.
// 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 V5 Brain di lokasi piksel x dan y yang dipilih.
Available Functionsvoid drawPixel(
int x,
int y );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Koordinat x tempat piksel akan digambar, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Koordinat y tempat piksel akan digambar, diberikan sebagai bilangan bulat dari 0 hingga 239. |
Fungsi ini tidak mengembalikan nilai.
NotesPiksel digambar menggunakan warna pena saat ini yang diatur dengan
setPenColor.Koordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diatur menggunakansetOrigin.Jika lokasi piksel yang ditentukan berada di luar batas layar, piksel tersebut tidak akan digambar.
// Draw the pixels marking the corners of a square
Brain.Screen.drawPixel(250, 100);
Brain.Screen.drawPixel(275, 100);
Brain.Screen.drawPixel(250, 125);
Brain.Screen.drawPixel(275, 125);
![]()
drawLine#
Menggambar garis lurus yang menghubungkan dua titik pada layar V5 Brain.
Available Functionsvoid drawLine(
int x1,
int y1,
int x2,
int y2 );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Koordinat x awal garis, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Koordinat y awal garis, diberikan sebagai bilangan bulat dari 0 hingga 239. |
|
|
Koordinat x terakhir dari garis tersebut, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Koordinat y ujung garis, diberikan sebagai bilangan bulat dari 0 hingga 239. |
Fungsi ini tidak mengembalikan nilai.
NotesGaris digambar menggunakan warna pena saat ini yang diatur dengan
setPenColor.Lebar garis ditentukan oleh lebar pena saat ini yang diatur dengan
setPenWidth.Koordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diatur menggunakansetOrigin.Jika ada bagian garis yang berada di luar batas layar, hanya bagian yang terlihat yang akan digambar.
// Draw a line from the top left to bottom right of the screen
Brain.Screen.drawLine(0, 0, 479, 239);

drawRectangle#
Menggambar persegi panjang pada layar V5 Brain di posisi dan ukuran yang ditentukan.
Available Functions1 — 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 );
Parameters4 — Menggambar dan mengisi persegi panjang menggunakan nilai hue.
void drawRectangle( int x, int y, int width, int height, int hue );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Koordinat x dari sudut kiri atas persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Koordinat y dari sudut kiri atas persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 239. |
|
|
Lebar persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Tinggi persegi panjang, diberikan sebagai bilangan bulat dari 0 hingga 239. |
|
|
Mengisi persegi panjang menggunakan objek warna
purple |
|
|
Mengisi persegi panjang menggunakan nilai warna heksadesimal (misalnya, |
|
|
Mengisi persegi panjang menggunakan nilai rona dalam rentang |
Fungsi ini tidak mengembalikan nilai.
NotesGaris luar persegi panjang digambar menggunakan warna pena saat ini yang diatur dengan
setPenColor.Ketebalan garis luar ditentukan oleh lebar pena saat ini yang diatur dengan
setPenWidth.When no
colorparameter is provided, the rectangle interior is filled using the current fill color set withsetFillColor.Koordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diubah menggunakansetOrigin.Jika ada bagian dari persegi panjang yang berada di luar batas layar, hanya bagian yang terlihat yang akan digambar.
Nilai parameter
huedidasarkan pada roda warna melingkar, seperti yang ditunjukkan di bawah ini, di mana nilai-nilai tersebut mewakili derajat di sekitar roda (misalnya, merah mendekati 0°, hijau mendekati 120°, dan biru mendekati 240°).

// Draw a rectangle on the screen
Brain.Screen.drawRectangle(50, 50, 130, 60);

drawCircle#
Menggambar lingkaran pada layar V5 Brain di posisi dan jari-jari yang ditentukan.
Available Functions1 — 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 );
Parameters4 — Menggambar dan mengisi lingkaran menggunakan nilai hue.
void drawCircle( int x, int y, int radius, int hue );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Koordinat x dari pusat lingkaran, diberikan sebagai bilangan bulat dari 0 hingga 479. |
|
|
Koordinat y dari pusat lingkaran, diberikan sebagai bilangan bulat dari 0 hingga 239. |
|
|
Jari-jari lingkaran, diberikan sebagai bilangan bulat dari 0 hingga 239 piksel. |
|
|
Fills the circle using a
|
|
|
Mengisi lingkaran menggunakan nilai warna heksadesimal (misalnya, |
|
|
Mengisi lingkaran menggunakan nilai rona dalam rentang |
Fungsi ini tidak mengembalikan nilai.
NotesGaris luar lingkaran digambar menggunakan warna pena saat ini yang diatur dengan
setPenColor.Ketebalan garis luar ditentukan oleh lebar pena saat ini yang diatur dengan
setPenWidth.When no
colorparameter is provided, the circle interior is filled using the current fill color set withsetFillColor.Koordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diubah menggunakansetOrigin.Nilai parameter
huedidasarkan pada roda warna melingkar, seperti yang ditunjukkan di bawah ini, di mana nilai-nilai tersebut mewakili derajat di sekitar roda (misalnya, merah mendekati 0°, hijau mendekati 120°, dan biru mendekati 240°).

// Draw a circle on the screen
Brain.Screen.drawCircle(240, 120, 40);

drawImageFromFile#
Menggambar gambar pada layar V5 Brain menggunakan file gambar yang tersimpan di kartu SD.
Available Functionsbool drawImageFromFile(
const char* name,
int x,
int y );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Nama file gambar di kartu SD. File harus memiliki ekstensi |
|
|
Koordinat x, dalam piksel dari 0 hingga 479, di mana tepi kiri gambar akan digambar. |
|
|
Koordinat y, dalam piksel dari 0 hingga 239, di mana tepi atas gambar akan digambar. |
Mengembalikan nilai Boolean yang menunjukkan apakah gambar berhasil digambar:
true— Gambar berhasil dimuat dan digambar di layar.false— Gambar tidak dapat digambar (misalnya, jika file tidak ada atau tidak valid).
Format gambar yang didukung adalah
.bmpdan.png.Ukuran berkas gambar tidak boleh melebihi
512 KBPengkodean RLE 8-bit direkomendasikan untuk meminimalkan ukuran file.
Dimensi gambar maksimum yang didukung adalah ukuran layar Brain (sekitar 479 x 239 piksel).
Koordinat
xdanyrelatif terhadap titik asal layar saat ini, yang dapat diubah menggunakansetOrigin.
// Draw a bmp file on the Brain's screen at coordinate 0, 0
Brain.Screen.drawImageFromFile("test_image.bmp", 0, 0);
render#
Mengaktifkan double buffering untuk layar Brain. Setelah dipanggil, fungsi menggambar apa pun (seperti teks, bentuk, atau gambar) tidak akan langsung muncul lagi untuk sisa proyek. Sebaliknya, 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.
1 — Mengaktifkan double buffering atau menampilkan buffer belakang ke layar.
bool render();
Parameters2 — Menampilkan buffer belakang ke layar dengan kontrol atas perilaku sinkronisasi vertikal dan eksekusi penjadwal opsional.
bool render( bool bVsyncWait, bool bRunScheduler = true );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
|
|
|
Opsional.
|
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
renderakan mengharuskanrenderdigunakan untuk sisa proyek.
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();
pressing#
Laporan menunjukkan apakah layar V5 Brain sedang ditekan saat ini.
Available Functionsbool pressing();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesMengembalikan nilai Boolean yang menunjukkan status penekanan layar saat ini:true — Layar sedang ditekan. atau false — Layar tidak ditekan.
// Change the screen's color after it's pressed
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.setFillColor(green);
Brain.Screen.drawRectangle(0, 0, 479, 239);
// Display different messages after the screen is pressed
while (!Brain.Screen.pressing()) {
wait(5, msec);
}
Brain.Screen.print("First message!");
Brain.Screen.newLine();
// Lift finger to press the screen again
while (Brain.Screen.pressing()) {
wait(5, msec);
}
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.print("Second message!");
Brain.Screen.newLine();
xPosition#
Mengembalikan koordinat x dari penekanan terakhir pada layar V5 Brain.
Available Functionsint32_t xPosition();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesMengembalikan nilai int32_t yang mewakili koordinat x, dalam piksel dari 0 hingga 479, dari penekanan layar terakhir.
// Display a circle where the screen is pressed
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.drawCircle(Brain.Screen.xPosition(), Brain.Screen.yPosition(), 20, white);
yPosition#
Mengembalikan koordinat y dari penekanan terakhir pada layar V5 Brain.
Available Functionsint32_t yPosition();
Fungsi ini tidak menerima parameter apa pun.
Return ValuesMengembalikan nilai int32_t yang mewakili koordinat y, dalam piksel dari 0 hingga 239, dari penekanan layar terakhir.
// Display a circle where the screen is pressed
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.drawCircle(Brain.Screen.xPosition(), Brain.Screen.yPosition(), 20, white);
pressed#
Mendaftarkan fungsi yang akan dipanggil saat layar V5 Brain ditekan.
Available Functions1 — Memanggil sebuah fungsi ketika layar ditekan.
void pressed( void (*callback)(void) );
Parameters2 — Memanggil sebuah fungsi ketika layar ditekan dan meneruskan argumen yang ditentukan pengguna ke fungsi callback.
void pressed( void (*callback)(void*), void* arg );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Sebuah fungsi yang dipanggil ketika layar ditekan. |
|
|
Sebuah fungsi yang dipanggil ketika layar ditekan dan menerima argumen yang ditentukan pengguna. |
|
|
Nilai yang ditentukan pengguna yang diteruskan ke fungsi callback saat layar ditekan. |
Fungsi ini tidak mengembalikan nilai.
NotesFungsi callback dieksekusi setiap kali layar Brain ditekan.
Hanya satu fungsi callback yang dapat didaftarkan dalam satu waktu; memanggil
pressedlagi akan menggantikan callback sebelumnya.Fungsi callback harus mengembalikan
void.
Definisikan fungsi callback (di luar
int main())// Tracks how many times the screen is pressed. void onScreenPressed(void* arg) { int* count = (int*)arg; (*count)++; Brain.Screen.clearScreen(); Brain.Screen.setCursor(1, 1); Brain.Screen.print("Pressed %d times", *count); }Daftarkan fungsi callback di dalam
int main()int main() { int pressCount = 0; // Register the callback and pass a value to update. Brain.Screen.pressed(onScreenPressed, &pressCount); while (true) { wait(20, msec); } }
released#
Mendaftarkan fungsi yang akan dipanggil saat layar V5 Brain dilepaskan setelah ditekan.
Available Functions1 — Memanggil sebuah fungsi ketika layar dilepaskan setelah ditekan.
void released( void (*callback)(void) );
Parameters2 — Memanggil sebuah fungsi ketika layar dilepaskan setelah ditekan dan meneruskan argumen yang ditentukan pengguna ke fungsi callback.
void released( void (*callback)(void*), void* arg );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Sebuah fungsi yang dipanggil ketika layar dilepaskan setelah ditekan. |
|
|
Sebuah fungsi yang dipanggil ketika layar dilepaskan setelah ditekan dan menerima argumen yang ditentukan pengguna. |
|
|
Nilai yang ditentukan pengguna yang diteruskan ke fungsi callback ketika layar dilepaskan setelah ditekan. |
Fungsi ini tidak mengembalikan nilai.
NotesFungsi callback dieksekusi setiap kali layar Brain dilepaskan setelah ditekan.
Hanya satu fungsi callback yang dapat didaftarkan dalam satu waktu; memanggil
releasedlagi akan menggantikan callback sebelumnya.Fungsi callback harus mengembalikan
void.
Definisikan fungsi callback (di luar
int main())// Tracks how many times the screen is released. void onScreenReleased(void* arg) { int* count = (int*)arg; (*count)++; Brain.Screen.clearScreen(); Brain.Screen.setCursor(1, 1); Brain.Screen.print("Released %d times", *count); }Daftarkan fungsi callback di dalam
int main()int main() { int releaseCount = 0; // Register the callback and pass a value to update. Brain.Screen.released(onScreenReleased, &releaseCount); while (true) { wait(20, msec); } }










