Ekran#
giriiş#
Ekran yöntemleri, IQ (2. nesil) Beyninin dahili ekranında metin, sayı ve grafikleri nasıl göstereceğini kontrol eder.
Çizim için, Brain’in çözünürlüğü 160 x 108 pikseldir.
Bu sayfada örnek Beyin adı olarak brain kullanılmıştır. Gerektiğinde kendi yapılandırdığınız adla değiştirin.
Aşağıda tüm yöntemlerin listesi bulunmaktadır:
İmleçle Yazdırma — Metin yerleştirin ve yazdırın.
print— Geçerli imleç konumunda metin, sayı veya değişken değerleri yazdırır.set_cursor— İmleci belirli bir satır ve sütuna taşır.next_row— İmleci bir sonraki satırın 1. sütununa taşır.clear_row— Bir satır metni temizler.row— Metnin yazdırılacağı satırı döndürür.column— Metnin yazdırılacağı sütunu döndürür.print_at— Belirtilen x ve y koordinatında metin, sayı veya değişken değerleri yazdırır.get_string_width— Geçerli yazı tipini kullanarak bir dizenin piksel cinsinden genişliğini döndürür.get_string_height— Geçerli yazı tipini kullanarak bir dizenin piksel cinsinden yüksekliğini döndürür.
Değiştiriciler — Ekran ayarlarını, renkleri ve çizim davranışını değiştirir.
clear_screen— Ekrandaki tüm çizimleri ve metinleri temizler.set_font— Yazdırılan metin için yazı tipini ayarlar.set_pen_width— Çizilen çizgilerin ve şekil ana hatlarının kalınlığını ayarlar.set_pen_color— Metnin, piksellerin, çizgilerin ve şekil ana hatlarının rengini ayarlar.set_fill_color— Çizilen şekillerin ve yazdırılan metin arka planlarının dolgu rengini ayarlar.set_origin— Koordinat tabanlı yazdırma ve çizim için kullanılan başlangıç noktasını ayarlar.
Çizim — Ekrana grafikler ekleyin.
draw_pixel— Bir koordinatta bir piksel çizer.draw_line— İki nokta arasında bir çizgi çizer.draw_rectangle— Bir dikdörtgen çizer.draw_circle— Bir daire çizer.set_clip_region— Çizimlerin ve metinlerin nerede görünebileceğini kısıtlar.render— Yalnızca çağrıldığında Beynin ekranını metin ve çizimlerle günceller.
İmleç Yazdırma#
print#
print , geçerli imleç konumunda ve yazı tipinde Brain ekranına metin, sayı veya değişken değerleri yazdırır.
Usage:
brain.screen.print(text, precision, opaque)
Parametreler |
Tanım |
|---|---|
|
Ekrana yazdırılacak metin, sayı veya değişken değeri. |
|
İsteğe bağlı. Sayıları görüntülerken gösterilecek ondalık basamak sayısı. Bu, bir anahtar kelime argümanı olarak yazılmalıdır, örneğin: |
|
İsteğe bağlı. |
# Display a message at the starting
# cursor position
brain.screen.print("Hello, Robot!")

# Display a percentage with 4 decimal
# places and a blue background
brain.screen.set_fill_color(Color.BLUE)
brain.screen.print((42/100), precision = 4, opaque = True)
set_cursor#
set_cursor imleci Brain ekranındaki belirli bir satır ve sütuna taşır. Sonraki print çağrısı o konumdan yazdırmaya başlayacaktır. Kaç satır ve sütunun rahatça sığabileceği seçilen yazı tipine bağlıdır.
Tek aralıklı yazı tiplerinde karakterlerin tümü aynı genişliktedir, bu da metin yerleşimini tutarlı hale getirir. Buna karşılık, orantılı yazı tiplerinde karakter genişliği değişir, bu nedenle bazı harfler diğerlerinden daha fazla yer kaplar. Bununla birlikte, hangi tür kullanılırsa kullanılsın, set_cursor imleci yazı tipi stiline göre değil, satır ve sütun boyutuna göre konumlandırır. Yazı tipi boyutu set_font kullanılarak ayarlanabilir.
Usage:
brain.screen.set_cursor(row, column)
Parametreler |
Tanım |
|---|---|
|
İmleci taşımak istediğiniz satır. |
|
İmleci taşımak istediğiniz sütun. |
# Repeatedly print the Brain's timer at
# the top left of the screen
while True:
brain.screen.print(brain.timer.time(SECONDS))
brain.screen.next_row()
wait(1, SECONDS)
brain.screen.clear_screen()
brain.screen.set_cursor(1, 1)

next_row#
next_row komutu, imleci Beyin ekranındaki bir sonraki satırın 1. sütununa taşır.
Usage:
brain.screen.next_row()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
# Display two lines of text
brain.screen.print("Line 1")
brain.screen.next_row()
brain.screen.print("Line 2")

clear_row#
clear_row komutu, Beyin ekranındaki tek bir metin satırını temizler.
Usage:
brain.screen.clear_row(row, color)
Parametreler |
Tanım |
|---|---|
sıra |
İsteğe bağlı. Temizlenecek satır. Varsayılan değer, geçerli imleç satırıdır. |
renk |
İsteğe bağlı. Temizlenen satıra uygulanacak renk. Seçenekler şunlardır:
|
# Display text on two rows
brain.screen.print("This text stays")
brain.screen.next_row()
brain.screen.print("This disappears")
# Wait 3 seconds before clearing
# only the second row
wait(3, SECONDS)
brain.screen.clear_row()
# Turn the 5th row green
brain.screen.clear_row(5, Color.GREEN)
row#
row metnin tam sayı olarak yazdırılacağı satırı döndürür.
Usage:
brain.screen.row()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
# Set cursor to (3,2) and print
# row number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.row())

column#
column metnin tam sayı olarak yazdırılacağı sütunu döndürür.
Usage:
brain.screen.column()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
# Set cursor to (3,2) and print
# column number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.column())

print_at#
print_at belirtilen piksel cinsinden x ve y koordinatında, şu anda ayarlanmış font ve origin ile Brain ekranında metin, sayı veya değişken değerleri yazdırır. Bu yöntem, geçerli imleç konumunu dikkate almaz.
Usage:
brain.screen.print_at(text, x, y, precision, opaque)
Parametreler |
Tanım |
|---|---|
|
Yazdırılacak metin, sayı veya değişken değeri. |
|
Ekranın başlangıç noktasına göre, yazdırılacak x koordinatı anahtar kelime argümanı olarak belirtilir, örneğin: |
|
Ekran başlangıç noktasına göre, yazdırılacak y koordinatı anahtar kelime argümanı olarak belirtilir, örneğin: |
|
İsteğe bağlı. Sayıları görüntülerken gösterilecek ondalık basamak sayısı. Bu, bir anahtar kelime argümanı olarak yazılmalıdır, örneğin: |
|
İsteğe bağlı. |
# Print the number 1 on the Brain's screen at position (100, 40)
brain.screen.print_at(1, x=100, y=40)

# Display 1/3 with 3 decimal places and a blue background
brain.screen.set_fill_color(Color.BLUE)
brain.screen.print_at((1/3), x=100, y=40, precision=3, opaque=True)
get_string_width#
get_string_width bir dizenin piksel cinsinden genişliğini, Brain’in ekranında görüneceği şekilde bir tamsayı olarak döndürür. Genişlik, dizenin uzunluğuna ve mevcut yazı tipine bağlı olarak değişir.
Usage:
brain.screen.get_string_width(string)
Parametreler |
Tanım |
|---|---|
|
Ölçmek için kullanılan ip. |
get_string_height#
get_string_height , bir dizenin yüksekliğini piksel cinsinden, Brain ekranında görüneceği şekilde bir tamsayı olarak döndürür. Yükseklik, dizenin uzunluğuna ve mevcut yazı tipine bağlı olarak değişir.
Usage:
brain.screen.get_string_height(string)
Parametreler |
Tanım |
|---|---|
|
Ölçmek için kullanılan ip. |
Mutatörler#
clear_screen#
clear_screen komutu, Beynin ekranındaki tüm çizimleri ve metinleri temizler.
Usage:
brain.screen.clear_screen(color)
Parametreler |
Tanım |
|---|---|
|
İsteğe bağlı. Ekran rengini ayarlar. Seçenekler şunlardır:
|
# Draw a circle and clear it after
# 2 seconds
brain.screen.draw_circle(80, 50, 20)
wait(2, SECONDS)
brain.screen.clear_screen()
# Turn the screen red
brain.screen.clear_screen(Color.RED)

set_font#
set_font , Brain ekranında metin görüntülemek için kullanılan yazı tipini ayarlar. Bu yazı tipi, print veya print_at ile yazdırılan tüm metinlere uygulanacaktır. Bir projenin başlangıcındaki varsayılan yazı tipi MONO20.
Usage:
brain.screen.set_font(fontname)
Parametre |
Tanım |
|---|---|
|
Sets the font to one of the following:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
# Display two different fonts on
# two separate lines
brain.screen.set_font(FontType.MONO20)
brain.screen.print("Mono Medium")
brain.screen.next_row()
brain.screen.set_font(FontType.PROP20)
brain.screen.print("Prop Medium")

set_pen_width#
set_pen_width , çizilen çizgilerin ve şekil ana hatlarının kalınlığını ayarlar.
Usage:
brain.screen.set_pen_width(width)
Parametre |
Tanım |
|---|---|
|
Kalem genişliği, piksel cinsinden, 0 ile 32 arasında. |
# Draw two circles with
# different pen widths
brain.screen.draw_circle(40, 70, 20)
brain.screen.set_pen_width(5)
brain.screen.draw_circle(100, 70, 20)

set_pen_color#
set_pen_color , metnin, piksellerin, çizgilerin ve şekil ana hatlarının rengini ayarlar.
Usage:
brain.screen.set_pen_color(color)
Parametre |
Tanım |
|---|---|
|
İsteğe bağlı. Kullanılacak kalem ve yazı tipi rengi. Seçenekler şunlardır:
|
# Draw two rectangles with
# different colors
brain.screen.draw_rectangle(100, 50, 10, 20)
brain.screen.set_pen_color(Color.BLUE)
brain.screen.draw_rectangle(50, 50, 10, 20)

set_fill_color#
set_fill_color , şekiller çizilirken kullanılan dolgu rengini ayarlar.
Usage:
brain.screen.set_fill_color(color)
Parametre |
Tanım |
|---|---|
|
İsteğe bağlı. Kullanılacak dolgu rengi. Seçenekler şunlardır:
|
# Draw a yellow circle
brain.screen.set_fill_color(Color.YELLOW)
brain.screen.draw_circle(50, 50, 20)

set_origin#
set_origin , Brain ekranında çizim ve koordinat tabanlı yazdırma için kullanılan başlangıç noktasını ayarlar. Varsayılan olarak, başlangıç noktası ekranın sol üst köşesidir.
Usage:
brain.screen.set_origin(x, y)
Parametre |
Tanım |
|---|---|
|
Başlangıç noktası olarak belirlenecek yeni x koordinatı, 0 ile 159 arasında bir tamsayı olarak verilir. |
|
Başlangıç noktası olarak belirlenecek yeni y koordinatı, 0 ile 107 arasında bir tamsayı olarak verilmelidir. |
# Draw a line with the origin set to (50, 50)
brain.screen.set_origin(50, 50)
brain.screen.draw_line(1, 1, 159, 107)

Çizmek#
draw_pixel#
draw_pixel seçili x ve y koordinatında geçerli kalem rengi kullanılarak bir piksel çizer.
Usage:
brain.screen.draw_pixel(x, y)
Parametre |
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. |
# Draw one pixel at the center
# of the screen
brain.screen.draw_pixel(80, 50)
![]()
draw_line#
draw_line , mevcut kalem genişliği ve kalem rengi kullanılarak ilk ekran koordinatı (x1, y1) ikinci ekran koordinatı (x2, y2) bir çizgi çizer.
x ve y koordinatları, set_origin kullanılarak farklı bir başlangıç noktası ayarlanmadığı sürece varsayılan başlangıç noktası olan (0, 0)’ı kullanır.
Usage:
brain.screen.draw_line(x1, y1, x2, y2)
Parametre |
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. |
# Draw a line from the top left to
# bottom right of the screen
brain.screen.draw_line(0, 0, 159, 107)

draw_rectangle#
draw_rectangle sol üst köşesi seçilen (x, y) koordinatında olan ve verilen genişlik ve yükseklik ile belirlenen boyutta (tüm değerler piksel cinsinden ölçülür) bir dikdörtgen çizer. Dikdörtgenin dış çizgisi, geçerli kalem genişliği ve kalem rengi kullanılarak çizilir. İç kısım, isteğe bağlı color parametresi kullanılmadığı sürece, geçerli dolgu rengi ile doldurulur.
x ve y koordinatları, set_origin kullanılarak farklı bir başlangıç noktası ayarlanmadığı sürece varsayılan başlangıç noktası olan (0,0)’ı kullanır.
Usage:
brain.screen.draw_rectangle(x, y, width, height, color)
Parametre |
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 piksel cinsinden genişliği. |
|
Dikdörtgenin yüksekliği, piksel cinsinden. |
|
İsteğe bağlı. Dikdörtgenin dolgu rengi. Seçenekler şunlardır:
|
# Draw a red rectangle on the screen
brain.screen.draw_rectangle(25, 25, 100, 50, Color.RED)

draw_circle#
draw_circle seçilen (x, y) koordinatında merkezi olan ve verilen yarıçapla belirlenen boyutta bir daire çizer; tümü piksel cinsinden ölçülür. Dairenin dış çizgisi, geçerli kalem genişliği ve kalem rengi kullanılarak çizilir. İç kısım, isteğe bağlı color parametresi kullanılmadığı sürece, geçerli dolgu rengi ile doldurulur.
x ve y koordinatları, set_origin kullanılarak farklı bir başlangıç noktası ayarlanmadığı sürece varsayılan başlangıç noktası olan (0,0)’ı kullanır.
Usage:
brain.screen.draw_circle(x, y, radius, color)
Parametre |
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ı, piksel cinsinden. |
|
İsteğe bağlı. Dairenin iç dolgu rengi. Seçenekler şunlardır:
|
# Draw a green circle on the screen
brain.screen.draw_circle(80, 50, 20, Color.GREEN)

set_clip_region#
`set_clip_region , 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.
Usage:
brain.screen.set_clip_region(x, y, width, height)
Parametre |
Tanım |
|---|---|
|
Kırpma bölgesinin sol üst köşesinin x koordinatı, 0 ile 159 arasında bir tamsayı veya ondalık sayı olarak verilir. |
|
Kırpma bölgesinin sol üst köşesinin y koordinatı, 0 ile 107 arasında bir tamsayı veya ondalık sayı olarak verilir. |
|
Kırpma bölgesinin piksel cinsinden genişliği. |
|
Kırpma bölgesinin piksel cinsinden yüksekliği. |
# Restrict text and drawings to a specific region
brain.screen.set_clip_region(0, 0, 120, 120)
brain.screen.draw_rectangle(60, 60, 100, 100, Color.RED)
brain.screen.print_at("Cut off!", x=60, y=60)

render#
render Beyin ekranı için çift tamponlamayı etkinleştirir. Çağrıldıktan sonra, herhangi bir çizim komutu (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ünür olmayacaktır.
Usage:
brain.screen.render()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
# Render text after moving
brain.screen.render()
brain.screen.print("Render later...")
drivetrain.drive_for(FORWARD, 100, MM)
drivetrain.turn_for(RIGHT, 90, DEGREES)
brain.screen.render()









