Ekran#
giriiş#
screen sınıfı, brain temel sınıfından türetilmiştir. IQ (2. nesil) Beynin yerleşik ekranında metin, sayı ve grafikleri nasıl gösterdiğini kontrol eder.
Varsayılan olarak, Brain’e yazdırmak için kullanılan yazı tipi tek aralıklı küçük yazı tipidir.
Çizim için, Brain’in çözünürlüğü 160 x 108 pikseldir.
Erişim#
screen sınıfına şu yollarla erişilebilir:
Brain.Screen
Notlar#
The
screenobject is provided by the Brain. It is not constructed directly.Projeler tek bir global
Brainnesnesi kullanır, bu nedenle ekran fonksiyonlarıBrain.Screenkullanı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.drawImageFromFile— SD kart dosyasından ekrana bir görüntü çizer.render— Çift tamponlamayı etkinleştirir veya arka tamponu ekrana işler.pressingbasıyor — Ekranın şu anda basılı olup olmadığını döndürür.xPosition— En son ekran basımının x koordinatını döndürür.yPosition— En son ekran basımının y koordinatını döndürür.pressed— Ekrana basıldığında çalıştırılacak bir geri çağırma fonksiyonu kaydeder.released— Ekran basıldıktan sonra bırakıldığında çalıştırılacak bir geri çağırma fonksiyonu kaydeder.
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 (2. nesil) Beyin ekranında metin, sayı veya Boolean değerleri görüntüler.
Available Functions1 — Dize değişmezleri veya salt okunur C tarzı dizeler kullanarak biçimlendirilmiş metin yazdırır.
void print( const char* format, ... );
Parameters2 — Değiştirilebilir karakter dizileri kullanarak biçimlendirilmiş metin yazdırır.
void print( char* format, ... );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Bir dize değişmezi veya salt okunur C stili dize olarak sağlanan bir biçim dizesi (örneğin, |
|
|
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. |
Bu fonksiyon bir değer döndürmez.
NotesOutput begins at the current cursor position on the screen.
Yazdırılan metin, ekran yazı kullanır.
Printed text uses the current pen color.
printile 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.
// Display a message at the starting cursor
Brain.Screen.print("Hello, Robot!");

setCursor#
İmleci IQ (2. 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.
void setCursor(
int32_t row,
int32_t col );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
İmleci taşımak istediğiniz satır. |
|
|
İmleci taşımak istediğiniz sütun. |
Bu fonksiyon bir değer döndürmez.
Notesprintkullanı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.
Varsayılan yazı tipi (
mono20) 5 satır ve 16 sütun kullanır.setCursorçağrısı yalnızca sonraki metin çıktısının konumunu etkiler.
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);
}
}

newLine#
İmleci Beyin ekranındaki bir sonraki satırın başına taşır.
Available Functionsvoid newLine();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesBu fonksiyon bir değer döndürmez.
Notesİmleç bir cümlenin ortasındaysa,
newLinekomutu 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ı
setCursorkullanılarak ayarlanır.
// Display two lines of text
Brain.Screen.print("Line 1");
Brain.Screen.newLine();
Brain.Screen.print("Line 2");

clearLine#
IQ (2. nesil) Beyin ekranındaki bir satırdaki metni siler.
Available Functions1 — İ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 );
Parameters5 — Belirtilen satırı bir renk tonu değeri kullanarak temizler.
void clearLine( int number, int hue );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Silinecek satır numarası. Satır numaralandırması |
|
|
|
|
|
Onaltılık renk değeri kullanarak satırı temizler (örneğin, |
|
|
Renk çemberi üzerindeki dereceleri temsil eden |
Bu fonksiyon bir değer döndürmez.
NotesBir satırı temizlemek, mevcut imleç konumunu değiştirmez.
İmleç konumu ve satır numaralandırması
setCursorkullanılarak ayarlanır.hueparametre değeri, aşağıda gösterildiği gibi dairesel bir renk çemberine dayanmaktadır; burada değerler çember üzerindeki dereceleri temsil eder (örneğin, 0°’ye yakın kırmızı, 120°’ye yakın yeşil ve 240°’ye yakın mavi).

// 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 (2. nesil) Beyin ekranında metnin yazdırılacağı satırı döndürür.
Available Functionsint32_t row();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesMetnin yazdırılacağı satırı temsil eden int32_t değerini döndürür.
Satır numaralandırması 1’den başlar.
NotesThe 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.
// Display the cursor's current row
Brain.Screen.setCursor(3, 12);
Brain.Screen.print("row: ", Brain.Screen.row());

column#
IQ (2. nesil) Beyin ekranında metnin yazdırılacağı sütunu döndürür.
Available Functionsint32_t column();
Bu fonksiyon herhangi bir parametre kabul etmez.
Return ValuesMetnin yazdırılacağı sütunu temsil eden int32_t değerini döndürür.
Sütun numaralandırması 1’den başlar.
NotesThe 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.
// Display the cursor's current column
Brain.Screen.print("column: ", Brain.Screen.column());

getStringHeight#
IQ (2. nesil) Beyin ekranında görüntülendiğinde bir dizenin piksel cinsinden yüksekliğini döndürür.
Available Functionsint32_t getStringHeight(
const char* cstr );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Ölçülecek metin, C-stili bir dize olarak sağlanır (örneğin, |
Beyin ekranında görüntülendiğinde dizenin piksel cinsinden yüksekliğini temsil eden int32_t değerini döndürür.
getStringWidth#
IQ (2. nesil) Beyin ekranında görüntülendiğinde bir dizenin piksel cinsinden genişliğini döndürür.
Available Functionsint32_t getStringWidth(
const char* cstr );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Ölçülecek metin, C-stili bir dize olarak sağlanır (örneğin, |
Beyin ekranında görüntülendiğinde dizenin piksel cinsinden genişliğini temsil eden int32_t değerini döndürür.
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 (2. nesil) Beyin ekranında belirli bir koordinata metin, sayı veya Boolean değerleri yazdırır.
Available Functions1 — Belirtilen piksel konumunda biçimlendirilmiş çıktı yazdırır.
void printAt( int32_t x, int32_t y, const char* format, ... );
Parameters2 — 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, ... );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Ekranın başlangıç noktasına göre, yazdırma işleminin gerçekleştirileceği x konumu. |
|
|
Ekranın başlangıç noktasına göre, yazdırma işleminin yapılacağı y-konumu. |
|
|
Yazdırılan metnin opak mı yoksa saydam mı çizileceğini kontrol eder:
|
|
|
Ekranda neyin yazdırılacağını kontrol eden bir format dizesi (örneğin, |
|
Biçim dizesine virgülle ayrılmış olarak eklenen bir veya daha fazla ek değer. |
Bu fonksiyon bir değer döndürmez.
Notesxveykoordinatları,setOriginkullanı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.
// 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 Functions1 — 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 );
Parameters4 — Ekranı bir renk tonu değeri kullanarak temizler.
void clearScreen( int hue );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Ekranı
|
|
|
Ekranı, bir dize olarak temsil edilen onaltılık renk değeri kullanarak temizler (örneğin, |
|
|
Ekranı, renk çemberi üzerindeki dereceleri temsil eden |
Bu fonksiyon bir değer döndürmez.
Noteshueparametre değeri, aşağıda gösterildiği gibi dairesel bir renk çemberine dayanmaktadır; burada değerler çember üzerindeki dereceleri temsil eder (örneğin, 0°’ye yakın kırmızı, 120°’ye yakın yeşil ve 240°’ye yakın mavi).

// 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 (2. 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.
void setFont(
fontType font );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Sets the font to one of the following:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
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 Functionsvoid setPenWidth(
uint32_t width );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Kalem genişliği, piksel cinsinden, 0 ile 32 arasında. |
Bu fonksiyon bir değer döndürmez.
NotesKalem genişliği,
drawLine,drawRectanglevedrawCirclegibi çizim fonksiyonlarına uygulanır.
// 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 Functions1 — 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 );
Parameters3 — Kalem rengini bir ton değeri kullanarak ayarlar.
void setPenColor( int hue );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Kalem rengini
|
|
|
Kalem rengini, bir dize olarak temsil edilen onaltılık renk değeri kullanarak ayarlar (örneğin, |
|
|
Kalem rengini, renk çemberindeki dereceleri temsil eden |
Bu fonksiyon bir değer döndürmez.
NotesProje başlangıcında varsayılan kalem rengi
white.Kalem rengi, şekillerin ana hatları (örneğin
drawCircleveyadrawRectangleile), metin ve sayısal çıktı (printveprintAtile) vedrawPixelile çizilen tek tek pikseller için kullanılır.hueparametre değeri, aşağıda gösterildiği gibi dairesel bir renk çemberine dayanmaktadır; burada değerler çember üzerindeki dereceleri temsil eder (örneğin, 0°’ye yakın kırmızı, 120°’ye yakın yeşil ve 240°’ye yakın mavi).

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 Functions1 — Ö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 );
Parameters3 — Bir ton değeri kullanarak dolgu rengini ayarlar.
void setFillColor( int hue );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
|
|
|
Dolgu rengini, bir dize olarak temsil edilen onaltılık renk değeri kullanarak ayarlar (örneğin, |
|
|
Dolgu rengini, renk çemberi üzerindeki dereceleri temsil eden |
Bu fonksiyon bir değer döndürmez.
NotesProje başlangıcında varsayılan dolgu rengi
black.Dolgu rengi, şekillerin iç kısımları için kullanılır (örneğin
drawCircleveyadrawRectangleile).Dolgu rengi, yazdırılan metin için arka plan rengi olarak kullanılır (örneğin
printveprintAtile).Baskılı metinle birlikte
transparentkullanılırsa, arka planblackolacaktır.
hueparametre değeri, aşağıda gösterildiği gibi dairesel bir renk çemberine dayanmaktadır; burada değerler çember üzerindeki dereceleri temsil eder (örneğin, 0°’ye yakın kırmızı, 120°’ye yakın yeşil ve 240°’ye yakın mavi).

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

setOrigin#
Brain ekranında çizim ve koordinat tabanlı yazdırma için kullanılan başlangıç noktasını ayarlar.
Available Functionsvoid setOrigin(
int32_t x,
int32_t y );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Başlangıç noktasının, Beyin ekranının sol üst köşesine göre x eksenindeki konumu 0 ile 159 arasındadır. |
|
|
Başlangıç noktasının, Beyin ekranının sol üst köşesine göre y eksenindeki konumu 0 ile 107 arasındadır. |
Bu fonksiyon bir değer döndürmez.
NotesVarsayılan başlangıç noktası, ekranın sol üst köşesindeki (0, 0) koordinatıdır.
Başlangıç noktası,
drawLine,drawRectangle,drawCircleveprintAtgibi 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 Functionsvoid setClipRegion(
int x,
int y,
int width,
int height );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Kırpma bölgesinin sol üst köşesinin x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Kırpma bölgesinin sol üst köşesinin y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir. |
|
|
Kırpma bölgesinin piksel cinsinden genişliği, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Kırpma bölgesinin piksel cinsinden yüksekliği, 0 ile 107 arasında bir tamsayı olarak verilir. |
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.
xveykoordinatları,setOriginkullanı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.
// 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 (2. nesil) Beyin ekranında seçilen x ve y piksel konumuna bir piksel çizer.
Available Functionsvoid drawPixel(
int x,
int y );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Pikselin çizileceği x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Pikselin çizileceği y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir. |
Bu fonksiyon bir değer döndürmez.
NotesPikseller,
setPenColorile ayarlanan geçerli kalem rengi kullanılarak çizilir.xveykoordinatları,setOriginkullanılarak ayarlanabilen geçerli ekran orijinine göre belirlenir.Belirtilen piksel konumu ekran sınırlarının dışında ise, piksel çizilmez.
// Draw one pixel at the center
// of the screen
Brain.Screen.drawPixel(80, 50);
![]()
drawLine#
IQ (2. nesil) Beyin tarama ekranında iki noktayı birleştiren düz bir çizgi çizer.
Available Functionsvoid drawLine(
int x1,
int y1,
int x2,
int y2 );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Doğrunun başlangıç x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Doğrunun başlangıç y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir. |
|
|
Doğrunun bitiş noktasındaki x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Doğrunun bitiş noktasındaki y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir. |
Bu fonksiyon bir değer döndürmez.
NotesÇizgiler,
setPenColorile ayarlanan geçerli kalem rengi kullanılarak çizilir.Çizginin genişliği,
setPenWidthile ayarlanan mevcut kalem genişliği tarafından belirlenir.xveykoordinatları,setOriginkullanı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.
// Draw a line from the top left to
// bottom right of the screen
Brain.Screen.drawLine(0, 0, 159, 107);

drawRectangle#
IQ (2. nesil) Beyin ekranında belirtilen konum ve boyutta bir dikdörtgen çizer.
Available Functions1 — Ş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 nesnesini 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 );
Parameters4 — Bir renk tonu değeri kullanarak bir dikdörtgen çizer ve doldurur.
void drawRectangle( int x, int y, int width, int height, int hue );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Dikdörtgenin sol üst köşesinin x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Dikdörtgenin sol üst köşesinin y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir. |
|
|
Dikdörtgenin genişliği, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Dikdörtgenin yüksekliği, 0 ile 107 arasında bir tamsayı olarak verilmiştir. |
|
|
Dikdörtgeni
|
|
|
Dikdörtgeni onaltılık renk değeri kullanarak doldurur (örneğin, |
|
|
Dikdörtgeni |
Bu fonksiyon bir değer döndürmez.
NotesDikdörtgenin dış çizgisi,
setPenColorile ayarlanan geçerli kalem rengi kullanılarak çizilir.Kontur kalınlığı,
setPenWidthile ayarlanan mevcut kalem genişliği tarafından belirlenir.colorparametresi sağlanmadığında, dikdörtgenin içisetFillColorile ayarlanan geçerli dolgu rengi kullanılarak doldurulur.xveykoordinatları,setOriginkullanı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.
hueparametre değeri, aşağıda gösterildiği gibi dairesel bir renk çemberine dayanmaktadır; burada değerler çember üzerindeki dereceleri temsil eder (örneğin, 0°’ye yakın kırmızı, 120°’ye yakın yeşil ve 240°’ye yakın mavi).

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

drawCircle#
IQ (2. nesil) Beyin ekranında belirtilen konumda ve yarıçapta bir daire çizer.
Available Functions1 — Ş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 );
Parameters4 — Bir renk tonu değeri kullanarak bir daire çizer ve doldurur.
void drawCircle( int x, int y, int radius, int hue );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
Çemberin merkezinin x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
|
Çemberin merkezinin y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilir. |
|
|
Dairenin yarıçapı, 0 ile 107 piksel arasında bir tamsayı olarak verilir. |
|
|
Daireyi
|
|
|
Daireyi onaltılık renk değeri kullanarak doldurur (örneğin, |
|
|
Daireyi |
Bu fonksiyon bir değer döndürmez.
NotesDairenin dış çizgisi,
setPenColorile belirlenen mevcut kalem rengi kullanılarak çizilir.Kontur kalınlığı,
setPenWidthile ayarlanan mevcut kalem genişliği tarafından belirlenir.colorparametresi sağlanmadığında, dairenin içisetFillColorile ayarlanan geçerli dolgu rengi kullanılarak doldurulur.xveykoordinatları,setOriginkullanılarak değiştirilebilen mevcut ekran orijinine göre belirlenir.hueparametre değeri, aşağıda gösterildiği gibi dairesel bir renk çemberine dayanmaktadır; burada değerler çember üzerindeki dereceleri temsil eder (örneğin, 0°’ye yakın kırmızı, 120°’ye yakın yeşil ve 240°’ye yakın mavi).

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

drawImageFromFile#
SD kartta saklanan bir resim dosyasını kullanarak IQ (2. nesil) Beyin ekranına bir resim çizer.
Available Functionsbool drawImageFromFile(
const char* name,
int x,
int y );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
SD karttaki resmin dosya adı. Dosyanın uzantısı |
|
|
Görüntünün sol kenarının çizileceği x koordinatı (0 ile 159 piksel arası). |
|
|
Görüntünün üst kenarının çizileceği y koordinatı (0 ile 107 piksel arası). |
Görüntünün başarıyla çizilip çizilmediğini gösteren bir Boolean değer döndürür:
true— Görüntü başarıyla yüklendi ve ekrana çizildi.false— Görüntü çizilemedi (örneğin, dosya mevcut değilse veya geçersizse).
Desteklenen resim formatları
.bmpve.png.Görüntü dosyasının boyutu
512 KBDosya boyutunu en aza indirmek için 8 bit RLE kodlaması önerilir.
Desteklenen maksimum görüntü boyutları, Brain ekranının boyutuyla (160 x 108 piksel) aynıdır.
xveykoordinatları,setOriginkullanılarak değiştirilebilen mevcut ekran orijinine göre belirlenir.
// Draw a bmp file on the Brain's screen at coordinate 0, 0
Brain.Screen.drawImageFromFile("test_image.bmp", 0, 0);
render#
Beyin ekranı için çift tamponlamayı etkinleştirir. Çağrıldıktan sonra, herhangi bir çizim işlevi (metin, şekiller veya resimler 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.
1 — Çift tamponlamayı etkinleştirir veya arka tamponu ekrana yansıtır.
bool render();
Parameters2 — 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 );
Parametre |
Tip |
Tanım |
|---|---|---|
|
|
|
|
|
İsteğe bağlı.
|
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çinrenderkullanılmasını gerektirecektir.
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();









