Ekran#

giriiş#

screen sınıfı, brain temel sınıfından türetilmiştir. IQ (1. nesil) Beynin yerleşik ekranında metin ve değerleri nasıl görüntülediğini kontrol eder.

IQ (1. nesil) Beyin ekranı, 5 satır ve 21 sütuna kadar metni destekler.

Numaralı ızgara kaplamalı VEX IQ (1. nesil) Beyin (1-21 sütun ve 1-5 satır). Kırmızı kaplama çizgileri, oklarla 1. Sütun, 21. Sütun, 1. Satır, 2. Satır ve 5. Satırı etiketleyerek ızgara yapısını vurgular. İlk satırda üst kısımda 1'den 21'e kadar sayılar görüntülenir.

Erişim#

screen sınıfına şu yollarla erişilebilir:

Brain.Screen

Notlar#

  • The screen object is provided by the Brain. It is not constructed directly.

  • Projeler tek bir global Brain nesnesi kullanır, bu nedenle ekran fonksiyonları Brain.Screen kullanılarak çağrılır.

Örnek#

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

Üye Fonksiyonları#

screen sınıfı aşağıdaki üye fonksiyonlarını içerir:

  • print — Biçimlendirilmiş metni, sayıları veya Boolean değerlerini Beyin ekranına yazdırır.

  • setCursor — Metin imlecini belirtilen satır ve sütuna taşır.

  • newLine — Geçerli satırın kalanını temizler ve imleci bir sonraki satıra taşır.

  • clearLine — Geçerli satırın kalan kısmını temizler veya belirtilen satırı temizler.

  • row — Metnin yazdırılacağı satırı döndürür.

  • column — Metnin yazdırılacağı sütunu döndürür.

  • getStringHeight — Geçerli yazı tipini kullanarak bir dizenin piksel cinsinden yüksekliğini döndürür.

  • getStringWidth — Geçerli yazı tipini kullanarak bir dizenin piksel cinsinden genişliğini döndürür.

  • printAt — Biçimlendirilmiş metni x, y piksel konumunda yazdırır (isteğe bağlı olarak opak).

  • clearScreen — Tüm ekranı temizler (isteğe bağlı olarak belirtilen bir renge).

  • setFont — Ekranda yazdırmak için kullanılan yazı tipini ayarlar.

  • setPenWidth — Çizilen çizgilerin ve şekil ana hatlarının kalınlığını ayarlar.

  • setPenColor — Metnin, piksellerin, çizgilerin ve şekil ana hatlarının rengini ayarlar.

  • setFillColor — Çizilen şekillerin ve yazdırılan metin arka planlarının dolgu rengini ayarlar.

  • setOrigin — Ekran koordinatları için kullanılan başlangıç ​​noktasını ayarlar.

  • setClipRegion — Ekran çıktısını dikdörtgen bir bölgeyle sınırlandırır.

  • drawPixel — Bir koordinatta bir piksel çizer.

  • drawLine — İki nokta arasında bir çizgi çizer.

  • drawRectangle — Belirtilen boyutta bir dikdörtgeni x, y konumunda çizer.

  • drawCircle — Belirtilen yarıçapla bir x, y konumunda bir daire çizer.

  • render — Çift tamponlamayı etkinleştirir veya arka tamponu ekrana işler.

Herhangi bir screen üye fonksiyonunu çağırmadan önce, aşağıda gösterildiği gibi bir brain örneği oluşturulmalıdır:

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

print#

IQ (1. nesil) Beyin ekranında metin, sayı veya Boolean değerleri görüntüler.

Available Functions

1 — Dize değişmezleri veya salt okunur C tarzı dizeler kullanarak biçimlendirilmiş metin yazdırır.

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

2 — Değiştirilebilir karakter dizileri kullanarak biçimlendirilmiş metin yazdırır.

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

Parameters

Parametre

Tip

Tanım

format

const char*

Bir dize değişmezi veya salt okunur C stili dize olarak sağlanan bir biçim dizesi (örneğin, “Score: %d”).

format

char*

Değiştirilebilir bir karakter dizisi olarak sağlanan bir biçim dizesi.

…

Biçim dizesine virgülle ayrılmış olarak eklenen bir veya daha fazla ek değer.

Return Values

Bu fonksiyon bir değer döndürmez.

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

  • Yazdırılan metin, ekran yazı kullanır.

  • Printed text uses the current pen color.

  • print ile yazdırılan metin her zaman bir arka planla yazdırılır ve arka plan rengi, geçerli dolgu rengi tarafından belirlenir.

  • Biçim dizesi kullanılırken, geçirilen değerlerin sayısı ve türleri, dizedeki biçim belirleyicilerle eşleşmelidir.

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

setCursor#

İmleci IQ (1. nesil) Beyin ekranındaki belirli bir satır ve sütuna taşır. Sonraki print çağrısı, o konumdan yazdırmaya başlayacaktır.

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

Parameters

Parametre

Tip

Tanım

row

int32_t

İmleci taşımak istediğiniz satır.

col

int32_t

İmleci taşımak istediğiniz sütun.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • print kullanılırken sonraki metin çıktısının nerede başlayacağını etkiler.

  • Satırlar ve sütunlar şu anda ayarlanmış ekran yazı tipine göre belirlenir.

  • setCursor çağrısı yalnızca sonraki metin çıktısının konumunu etkiler.

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

Ortalanmış metinde “VEXcode!” yazan IQ (1. nesil) Beyin ekranı.

newLine#

İmleci Beyin ekranındaki bir sonraki satırın başına taşır.

Available Functions
void newLine();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • İmleç bir cümlenin ortasındaysa, newLine komutu imleçten sonraki satırın geri kalanını temizleyip sonraki satıra geçecektir.

  • newLineçağrısından sonra imleç, bir sonraki satırın ilk sütununa konumlandırılır.

  • İmleç konumu ve satır numaralandırması setCursor kullanılarak ayarlanır.

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

IQ (1. nesil) Beyin ekranında ayrı satırlarda görüntülenen “İlk Mesaj” ve “İkinci Mesaj”.

clearLine#

IQ (1. nesil) Beyin ekranındaki bir satırdaki metni siler.

Available Functions

1 — İmleç konumundan itibaren geçerli satırın geri kalanını temizler.

void clearLine();

2 — Belirtilen satırı, şu anda yapılandırılmış dolgu rengi kullanarak temizler.

void clearLine(
    int number );

3 — Belirtilen satırı önceden tanımlanmış veya özel renk nesnesi kullanarak temizler.

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

4 — Belirtilen satırı onaltılık renk değeri kullanarak temizler.

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

5 — Belirtilen satırı bir renk tonu değeri kullanarak temizler.

void clearLine(
    int number,
    int hue );

Parameters

Parametre

Tip

Tanım

number

int

Silinecek satır numarası. Satır numaralandırması 1 başlar.

color

const color&

color nesnesi kullanarak satırı temizler. Önceden tanımlanmış renkler şunlardır:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Bu ayrıca özel bir renk nesnesi de kullanabilir.

color

const char*

Onaltılık renk değeri kullanarak satırı temizler (örneğin, “#000000”).

hue

int

Renk çemberi üzerindeki dereceleri temsil eden 0–359aralığındaki tam sayı ton değerini kullanarak satırı temizler.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Bir satırı temizlemek, mevcut imleç konumunu değiştirmez.

  • İmleç konumu ve satır numaralandırması setCursor kullanılarak ayarlanır.

  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

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 (1. nesil) Beyin ekranında imlecin mevcut satır konumunu döndürür.

Available Functions
int32_t row();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Metnin yazdırılacağı satırı temsil eden int32_t değerini döndürür.

Satır numaralandırması 1’den başlar.

Notes
  • The cursor position is based on the current screen font.

  • Döndürülen değer, bir sonraki yazdırılacak çıktının nerede görüneceğini gösterir.

  • Metin yazdırıldığında veya setCursor çağrıldığında satır değeri değişir.

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

column#

IQ (1. nesil) Beyin ekranında metnin yazdırılacağı sütunu döndürür.

Available Functions
int32_t column();

Parameters

Bu fonksiyon herhangi bir parametre kabul etmez.

Return Values

Metnin yazdırılacağı sütunu temsil eden int32_t değerini döndürür.

Sütun numaralandırması 1’den başlar.

Notes
  • The cursor position is based on the current screen font.

  • Döndürülen değer, bir sonraki yazdırılacak çıktının nerede görüneceğini gösterir.

  • Sütun değeri, metin yazdırıldığında veya setCursor çağrıldığında değişir.

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

getStringHeight#

IQ (1. nesil) Beyin ekranında görüntülendiğinde bir dizenin piksel cinsinden yüksekliğini döndürür.

Available Functions
int32_t getStringHeight( 
    const char* cstr );

Parameters

Parametre

Tip

Tanım

cstr

const char*

Ölçülecek metin, C-stili bir dize olarak sağlanır (örneğin, “Hello”).

Return Values

Beyin ekranında görüntülendiğinde dizenin piksel cinsinden yüksekliğini temsil eden int32_t değerini döndürür.

Notes
  • Döndürülen yükseklik, şu anda seçili olan ekran yazı bağlıdır.

  • Bu fonksiyon, dizeyi ekrana çizmeden ölçer.

  • Döndürülen yükseklik, metnin yazdırıldığında nasıl görüneceğini yansıtır.

getStringWidth#

IQ (1. nesil) Beyin ekranında görüntülendiğinde bir dizenin piksel cinsinden genişliğini döndürür.

Available Functions
int32_t getStringWidth( 
    const char* cstr );

Parameters

Parametre

Tip

Tanım

cstr

const char*

Ölçülecek metin, C-stili bir dize olarak sağlanır (örneğin, “Hello”).

Return Values

Beyin ekranında görüntülendiğinde dizenin piksel cinsinden genişliğini temsil eden int32_t değerini döndürür.

Notes
  • The returned width depends on the currently selected screen font.

  • Bu fonksiyon, dizeyi ekrana çizmeden ölçer.

  • Döndürülen genişlik, metnin yazdırıldığında nasıl görüneceğini yansıtır.

printAt#

IQ (1. nesil) Beyin ekranında belirli bir koordinata metin, sayı veya Boolean değerleri yazdırır.

Available Functions

1 — Belirtilen piksel konumunda biçimlendirilmiş çıktı yazdırır.

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

2 — Belirtilen piksel konumunda biçimlendirilmiş çıktı yazdırır ve metin arka planının opak mı yoksa saydam mı olacağını ayarlar.

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

Parameters

Parametre

Tip

Tanım

x

int32_t

Ekranın başlangıç ​​noktasına göre, yazdırma işleminin gerçekleştirileceği x konumu.

y

int32_t

Ekranın başlangıç ​​noktasına göre, yazdırma işleminin yapılacağı y-konumu.

bOpaque

bool

Yazdırılan metnin opak mı yoksa saydam mı çizileceğini kontrol eder:

  • true — Yazdırılan metnin arka planı mevcut dolgu rengi kullanılarak doldurulur.
  • false — Metin saydam olarak çizilir ve arka plan doldurulmaz.

format

const char*

Ekranda neyin yazdırılacağını kontrol eden bir format dizesi (örneğin, “Score: %d”).

…

Biçim dizesine virgülle ayrılmış olarak eklenen bir veya daha fazla ek değer.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • x ve y koordinatları, setOrigin kullanılarak değiştirilebilen mevcut ekran orijinine göre belirlenir.

  • Yazdırılan metin, ekran yazı kullanır.

  • Printed text uses the current pen color.

  • Biçim dizesi kullanılırken, geçirilen değerlerin sayısı ve türleri, dizedeki biçim belirleyicilerle eşleşmelidir.

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

clearScreen#

Beynin ekranındaki tüm çizimleri ve metinleri siler.

Available Functions

1 — Ekranı siyaha çevirir.

void clearScreen();

2 — Önceden tanımlanmış veya özel renk nesnesi kullanarak ekranı temizler.

void clearScreen(
    const color& color );

3 — Ekranı onaltılık renk değeri kullanarak temizler.

void clearScreen(
    const char* color );

4 — Ekranı bir renk tonu değeri kullanarak temizler.

void clearScreen(
    int hue );

Parameters

Parametre

Tip

Tanım

color

const color&

Ekranı color nesnesi kullanarak temizler. Önceden tanımlanmış renkler şunlardır:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Bu ayrıca özel renk nesnesi de kullanabilir.

color

const char*

Ekranı, bir dize olarak temsil edilen onaltılık renk değeri kullanarak temizler (örneğin, “#000000”).

hue

int

Ekranı, renk çemberi üzerindeki dereceleri temsil eden 0–359aralığındaki bir tamsayı renk tonu değeri kullanarak temizler.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

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#

IQ (1. nesil) Beyin ekranında görüntülenen metin için kullanılan yazı tipini ayarlar.

Bu, print gibi ekran metni işlevlerini kullanırken sonraki metin çıktısına uygulanan yazı tipini kontrol eder.

Available Functions
void setFont(
  fontType font );

Parameters

Parametre

Tip

Tanım

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

Bu fonksiyon bir değer döndürmez.

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#

Çizilen çizgilerin ve şekil konturlarının kalınlığını ayarlar.

Available Functions
void setPenWidth(
  uint32_t width );

Parameters

Parametre

Tip

Tanım

width

uint32_t

Kalem genişliği, piksel cinsinden, 0 ile 32 arasında.

Return Values

Bu fonksiyon bir değer döndürmez.

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#

Metnin, piksellerin, çizgilerin ve şekil konturlarının rengini ayarlar.

Available Functions

1 — Kalem rengini önceden tanımlanmış veya özel renk nesnesi kullanarak ayarlar.

void setPenColor(
    const color& color );

2 — Kalem rengini onaltılık renk değeri kullanarak ayarlar.

void setPenColor(
    const char* color );

3 — Kalem rengini bir ton değeri kullanarak ayarlar.

void setPenColor(
    int hue );

Parameters

Parametre

Tip

Tanım

color

const color&

Kalem rengini color nesnesi kullanarak ayarlar. Önceden tanımlanmış renkler şunlardır:

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

color

const char*

Kalem rengini, bir dize olarak temsil edilen onaltılık renk değeri kullanarak ayarlar (örneğin, “#FF0000”).

hue

int

Kalem rengini, renk çemberindeki dereceleri temsil eden 0–359aralığında bir tamsayı ton değeri kullanarak ayarlar (örneğin, 0 kırmızı, 120 yeşil ve 240 mavidir).

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

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

setFillColor#

Şekiller çizilirken kullanılacak dolgu rengini ayarlar.

Available Functions

1 — Önceden tanımlanmış veya özel renk nesnesi kullanarak dolgu rengini ayarlar.

void setFillColor(
    const color& color );

2 — Dolgu rengini onaltılık renk değeri kullanarak ayarlar.

void setFillColor(
    const char* color );

3 — Bir ton değeri kullanarak dolgu rengini ayarlar.

void setFillColor(
    int hue );

Parameters

Parametre

Tip

Tanım

color

const color&

color nesnesi kullanarak dolgu rengini ayarlar. Önceden tanımlanmış renkler şunlardır:

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

color

const char*

Dolgu rengini, bir dize olarak temsil edilen onaltılık renk değeri kullanarak ayarlar (örneğin, “#00FF00”).

hue

int

Dolgu rengini, renk çemberi üzerindeki dereceleri temsil eden 0–359aralığında bir tamsayı ton değeri kullanarak ayarlar (örneğin, 0 kırmızı, 120 yeşil ve 240 mavidir).

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

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

setOrigin#

Beyin ekranında grafik çizimi için kullanılan başlangıç ​​noktasını ayarlar.

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

Parameters

Parametre

Tip

Tanım

x

int32_t

Başlangıç ​​noktasının, Beyin ekranının sol üst köşesine göre x eksenindeki konumu 0 ile 159 arasındadır.

y

int32_t

Başlangıç ​​noktasının, Beyin ekranının sol üst köşesine göre y eksenindeki konumu 0 ile 107 arasındadır.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Varsayılan başlangıç ​​noktası, ekranın sol üst köşesindeki (0, 0) koordinatıdır.

  • Başlangıç ​​noktası, drawLine, drawRectangle, drawCircle ve printAt gibi koordinat fonksiyonlarına uygulanır.

  • Başlangıç ​​değeri, tekrar değiştirilene veya proje sıfırlanana kadar geçerliliğini korur.

setClipRegion#

Ekranda tüm çizimlerin ve metinlerin sınırlandırılacağı dikdörtgen bir alan tanımlar. Bu alanın dışındaki herhangi bir içerik görüntülenmeyecektir.

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

Parameters

Parametre

Tip

Tanım

x

int

Kırpma bölgesinin sol üst köşesinin x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir.

y

int

Kırpma bölgesinin sol üst köşesinin y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir.

width

int

Kırpma bölgesinin piksel cinsinden genişliği, 0 ile 159 arasında bir tamsayı olarak verilir.

height

int

Kırpma bölgesinin piksel cinsinden yüksekliği, 0 ile 107 arasında bir tamsayı olarak verilir.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • Çizim işlevleri, kırpma bölgesinin dışında kalsalar bile yine de yürütülür, ancak yalnızca bölgenin içindeki kısım görünür.

  • x ve y koordinatları, setOrigin kullanılarak değiştirilebilen mevcut ekran orijinine göre belirlenir.

  • Kırpma bölgesi yalnızca geçerli iş parçacığı için geçerlidir.

  • Yeni bir kırpma bölgesi ayarlamak, geçerli iş parçacığı için önceden ayarlanmış olan tüm kırpma bölgelerinin yerini alır.

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#

IQ (1. nesil) Beyin ekranında belirtilen x ve y piksel konumuna tek bir piksel çizer.

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

Parameters

Parametre

Tip

Tanım

x

int

Pikselin çizileceği x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir.

y

int

Pikselin çizileceği y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

  • x ve y koordinatları, setOrigin kullanılarak ayarlanabilen geçerli ekran orijinine göre belirlenir.

  • Belirtilen piksel konumu ekran sınırlarının dışında ise, piksel çizilmez.

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

drawLine#

IQ (1. nesil) Beyin tarama ekranında iki noktayı birleştiren düz bir çizgi çizer.

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

Parameters

Parametre

Tip

Tanım

x1

int

Doğrunun başlangıç ​​x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir.

y1

int

Doğrunun başlangıç ​​y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir.

x2

int

Doğrunun bitiş noktasındaki x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir.

y2

int

Doğrunun bitiş noktasındaki y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

  • Çizginin genişliği, setPenWidth ile ayarlanan mevcut kalem genişliği tarafından belirlenir.

  • x ve y koordinatları, setOrigin kullanılarak ayarlanabilen geçerli ekran orijinine göre belirlenir.

  • Çizginin herhangi bir kısmı ekran sınırlarının dışında kalırsa, yalnızca görünür kısım çizilir.

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

drawRectangle#

IQ (1. nesil) Beyin ekranında belirtilen konum ve boyutta bir dikdörtgen çizer.

Available Functions

1 — Şu ​​anda yapılandırılmış dolgu rengi kullanılarak bir dikdörtgen çizer ve doldurur.

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

2 — Önceden tanımlanmış veya özel renk nesnesi kullanarak bir dikdörtgen çizer ve doldurur.

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

3 — Onaltılık renk değeri kullanarak bir dikdörtgen çizer ve doldurur.

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

4 — Bir renk tonu değeri kullanarak bir dikdörtgen çizer ve doldurur.

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

Parameters

Parametre

Tip

Tanım

x

int

Dikdörtgenin sol üst köşesinin x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir.

y

int

Dikdörtgenin sol üst köşesinin y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir.

width

int

Dikdörtgenin genişliği, 0 ile 159 arasında bir tamsayı olarak verilir.

height

int

Dikdörtgenin yüksekliği, 0 ile 107 arasında bir tamsayı olarak verilmiştir.

color

const color&

Dikdörtgeni color nesnesi kullanarak doldurur. Önceden tanımlanmış renkler şunlardır:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Bu ayrıca özel renk nesnesi de kullanabilir.

color

const char*

Dikdörtgeni onaltılık renk değeri kullanarak doldurur (örneğin, “#FF0000”).

hue

int

Dikdörtgeni 0–359 aralığındaki bir renk tonu değeri kullanarak doldurur.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

  • Kontur kalınlığı, setPenWidth ile ayarlanan mevcut kalem genişliği tarafından belirlenir.

  • x ve y koordinatları, setOrigin kullanılarak değiştirilebilen mevcut ekran orijinine göre belirlenir.

  • Dikdörtgenin herhangi bir kısmı ekran sınırlarının dışında kalırsa, yalnızca görünür kısım çizilir.

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

drawCircle#

IQ (1. nesil) Beyin ekranında belirtilen konum ve yarıçapta bir daire çizer.

Available Functions

1 — Şu ​​anda yapılandırılmış dolgu rengi kullanılarak bir daire çizer ve doldurur.

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

2 — Önceden tanımlanmış veya özel renk nesnesini kullanarak bir daire çizer ve doldurur.

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

3 — Onaltılık renk değeri kullanarak bir daire çizer ve doldurur.

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

4 — Bir renk tonu değeri kullanarak bir daire çizer ve doldurur.

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

Parameters

Parametre

Tip

Tanım

x

int

Çemberin merkezinin x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir.

y

int

Çemberin merkezinin y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir.

radius

int

Dairenin yarıçapı, 0 ile 107 piksel arasında bir tamsayı olarak verilir.

color

const color&

Daireyi color nesnesi kullanarak doldurur. Önceden tanımlanmış renkler şunlardır:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Bu ayrıca özel bir renk nesnesi de kullanabilir.

color

const char*

Daireyi onaltılık renk değeri kullanarak doldurur (örneğin, “#FF0000”).

hue

int

Daireyi 0–359 aralığındaki bir renk tonu değeri kullanarak doldurur.

Return Values

Bu fonksiyon bir değer döndürmez.

Notes
  • IQ (1. nesil) Beyin ekranı tek renkli bir ekrandır, bu nedenle belirtilen renkler ekranda görünmeyecektir.

  • Kontur kalınlığı, setPenWidth ile ayarlanan mevcut kalem genişliği tarafından belirlenir.

  • x ve y koordinatları, setOrigin kullanılarak değiştirilebilen mevcut ekran orijinine göre belirlenir.

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

render#

Beyin ekranı için çift tamponlamayı etkinleştirir. Çağrıldıktan sonra, herhangi bir çizim işlevi (metin veya şekiller gibi) projenin geri kalanında hemen görünmeyecektir. Bunun yerine, güncellemeler yalnızca render tekrar kullanıldığında gösterilecektir. Bu, daha akıcı ve kontrollü ekran güncellemeleri sağlar, ancak render kullanılana kadar hiçbir şey görünmeyeceği anlamına gelir.

Available Functions

1 — Çift tamponlamayı etkinleştirir veya arka tamponu ekrana yansıtır.

bool render();

2 — Arka tamponu, dikey senkronizasyon davranışı üzerinde kontrol ve isteğe bağlı zamanlayıcı yürütme ile ekrana yansıtır.

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

Parameters

Parametre

Tip

Tanım

bVsyncWait

bool

​

  • true — Görsel yırtılmayı azaltmak için işleme başlamadan önce ekranın dikey yenilenmesini bekleyin.
  • false — İşleme başlamadan önce ekranın dikey yenilenmesini beklemeyin.

bRunScheduler

bool

İsteğe bağlı.

  • true (varsayılan) — Oluşturma işlemi beklenirken arka plan görevlerinin çalışmasına izin verin.
  • false — Oluşturma işlemi beklenirken arka plan görevlerinin çalışmasına izin vermeyin.

Return Values

Arabellekte kaydedilen çizimlerin ekrana başarıyla yansıtılıp yansıtılmadığını gösteren bir Boolean değer döndürür:

  • true — Çizimler ekrana başarıyla yansıtıldı.
  • false — Çizimler ekrana yansıtılamadı.
  • Notes
    • render çağırmak, projenin geri kalanı için render kullanılmasını gerektirecektir.

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