شاشة#

مقدمة#

تتحكم طرق الشاشة في كيفية عرض الدماغ (الجيل الثاني) للنصوص والأرقام والرسومات على شاشته المدمجة.

أما بالنسبة للرسم، فإن دقة الدماغ تبلغ 160 × 108 بكسل.

تستخدم هذه الصفحة الاسم brain كمثال لاسم Brain. استبدله بالاسم الذي قمت بتكوينه حسب الحاجة.

فيما يلي قائمة بجميع الطرق:

طباعة المؤشر — ضع النص واطبعه.

  • print — يطبع النص أو الأرقام أو قيم المتغيرات في موضع المؤشر الحالي.

  • set_cursor — ينقل المؤشر إلى صف وعمود محددين.

  • next_row — ينقل المؤشر إلى العمود 1 من الصف التالي.

  • clear_row — يمسح صفًا من النص.

  • row — تُرجع الصف الذي سيتم فيه طباعة النص.

  • column — تُرجع العمود الذي سيتم طباعة النص فيه.

  • print_at — يطبع النص أو الأرقام أو قيم المتغيرات عند إحداثيات x و y محددة.

  • get_string_width — تُرجع عرض السلسلة بالبكسل باستخدام الخط الحالي.

  • get_string_height — تُرجع ارتفاع السلسلة بالبكسل باستخدام الخط الحالي.

المُعدِّلات — تغيير إعدادات الشاشة والألوان وسلوك الرسم.

  • clear_screen — يمسح الشاشة من جميع الرسومات والنصوص.

  • set_font — يحدد الخط للنص المطبوع.

  • set_pen_width — يحدد سمك الخطوط المرسومة ومخططات الأشكال.

  • set_pen_color — يحدد لون النص والبكسلات والخطوط ومخططات الأشكال.

  • set_fill_color — يحدد لون التعبئة للأشكال المرسومة وخلفيات النصوص المطبوعة.

  • set_origin — يحدد الأصل المستخدم للطباعة والرسم القائم على الإحداثيات.

ارسم — أضف رسومات إلى الشاشة.

  • draw_pixel — يرسم بكسل واحد عند إحداثية معينة.

  • draw_line — يرسم خطًا بين نقطتين.

  • draw_rectangle — يرسم مستطيلاً.

  • draw_circle — يرسم دائرة.

  • set_clip_region — يقيد مكان ظهور الرسومات والنصوص.

  • render — يقوم بتحديث شاشة الدماغ بالنصوص والرسومات فقط عند استدعائها.

بصمة المؤشر#

print#

print prints text, numbers, or variable values on the Brain screen at the current cursor position and font.

Usage:
brain.screen.print(text, precision, opaque)

حدود

وصف

text

النص أو الرقم أو قيمة المتغير المراد طباعتها على الشاشة.

precision

اختياري. عدد المنازل العشرية المراد عرضها عند عرض الأرقام. يجب كتابة هذا كمعامل مُسمى، على سبيل المثال:precision=3القيمة الافتراضية هي 2.

opaque

Optional. opaque=True — The background of the text will be filled with the current fill color or black by default. opaque=False (default) — The background of the text will match the screen’s background color.

# Display a message at the starting
# cursor position
brain.screen.print("Hello, Robot!")

لقطة شاشة من جهاز VEX IQ Brain تظهر عبارة "مرحباً أيها الروبوت!" مكتوبة باللون الأبيض في السطر الأول.

# 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 moves the cursor to a specific row and column on the Brain screen. The next print call will start printing at that location. How many rows and columns can comfortably fit depends on the selected font.

Monospaced fonts have characters that are all the same width, making text placement consistent. In contrast, proportional fonts vary in character width, so some letters take up more space than others. However, regardless of which type is used, set_cursor positions the cursor based on row and column size, not font style. The font size can be adjusted using set_font.

Usage:
brain.screen.set_cursor(row, column)

حدود

وصف

row

الصف الذي سيتم تحريك المؤشر إليه.

column

العمود الذي سيتم تحريك المؤشر إليه.

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

لقطة شاشة من تطبيق IQ Brain تُظهر الرقم 23.19 باللون الأبيض في الزاوية العلوية اليسرى.

next_row#

next_row ينقل المؤشر إلى العمود 1 في الصف التالي على شاشة Brain.

Usage:
brain.screen.next_row()

حدود

وصف

لا تحتوي هذه الطريقة على أي معلمات.

# Display two lines of text
brain.screen.print("Line 1")
brain.screen.next_row()
brain.screen.print("Line 2")

لقطة شاشة من تطبيق IQ Brain تُظهر السطر 1 باللون الأبيض في الزاوية العلوية اليسرى، والسطر 2 أسفله مباشرةً.

clear_row#

clear_row يمسح صفًا واحدًا من النص على شاشة الدماغ.

Usage:
brain.screen.clear_row(row, color)

حدود

وصف

صف

اختياري. الصف المراد مسحه. القيمة الافتراضية هي صف المؤشر الحالي.

لون

Optional. The color to apply to the cleared row. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# 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 تُرجع الصف الذي سيتم فيه طباعة النص كعدد صحيح.

Usage:
brain.screen.row()

حدود

وصف

لا تحتوي هذه الطريقة على أي معلمات.

# Set cursor to (3,2) and print 
# row number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.row())

لقطة شاشة لاختبار الذكاء مع الرقم 3 مطبوعًا باللون الأبيض في أقصى يسار الشاشة، في المنتصف عموديًا، في الصف 3 والعمود 2.

column#

العمود column يُرجع العمود الذي سيتم فيه طباعة النص كرقم صحيح.

Usage:
brain.screen.column()

حدود

وصف

لا تحتوي هذه الطريقة على أي معلمات.

# Set cursor to (3,2) and print 
# column number
brain.screen.set_cursor(3, 2)
brain.screen.print(brain.screen.column())

لقطة شاشة لاختبار الذكاء مع الرقم 2 مطبوعًا باللون الأبيض في أقصى يسار الشاشة، في المنتصف عموديًا، في الصف 3 والعمود 2.

get_string_width#

get_string_width returns the width of a string in pixels as an integer, as it would appear on the Brain’s screen. The width varies depending on the string’s length and the current font.

Usage:
brain.screen.get_string_width(string)

حدود

وصف

string

الخيط المراد قياسه.

get_string_height#

get_string_height returns the height of a string in pixels as an integer, as it would appear on the Brain screen. The height varies depending on the string’s length and the current font.

Usage:
brain.screen.get_string_height(string)

حدود

وصف

string

الخيط المراد قياسه.

المتحولون#

clear_screen#

clear_screen يمسح جميع الرسومات والنصوص من شاشة الدماغ.

Usage:
brain.screen.clear_screen(color)

حدود

وصف

color

Optional. Sets the screen color. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# 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 sets the font used for displaying text on the Brain screen. This font will apply to all text printed with print or print_at. The default font at the start of a project is MONO20.

Usage:
brain.screen.set_font(fontname)

المعلمة

وصف

fontname

يُحدد الخط إلى أحد الخيارات التالية:

  • MONO12
  • MONO15
  • MONO20
  • MONO30
  • MONO40
  • MONO60
  • PROP20
  • PROP30PROP40
  • PROP60
الخيارات موضحة أدناه.

لقطة شاشة لجهاز VEX IQ Brain مع سلسلة من الأرقام والحروف بخط Mono 12. الحرفان AZ موجودان في سطر واحد، ويمتدان على عرض الشاشة. تشير الزاوية السفلية اليسرى إلى 26 حرفًا في 9 صفوف.
MONO12

نفس لقطة الشاشة السابقة، ولكن بخط Mono 15. تظهر الأحرف AT في سطر واحد، ممتدة على عرض الشاشة. تشير الزاوية السفلية اليسرى إلى 20 حرفًا في 7 صفوف.
MONO15

نفس لقطة الشاشة السابقة، ولكن بخط Mono 20. الأحرف AP على سطر واحد، تمتد على عرض الشاشة. تشير الزاوية السفلية اليسرى إلى 16 حرفًا في 5 صفوف.
MONO20

نفس لقطة الشاشة السابقة، ولكن بخط Mono 30. الأرقام من 1 إلى 9 بالإضافة إلى 0 إضافي موجودة في سطر واحد، يمتد على عرض الشاشة. تشير الزاوية السفلية اليسرى إلى 3 صفوف.
MONO30

نفس لقطة الشاشة السابقة، ولكن بخط Mono 40. الأرقام من 1 إلى 8 موجودة في السطر الثاني، وتمتد على عرض الشاشة.
MONO40

نفس لقطة الشاشة السابقة، ولكن بخط Mono 60. تظهر الشاشة MN 60 بخط كبير، يشغل النصف العلوي من الشاشة تقريبًا.
MONO60

نفس لقطة الشاشة السابقة، ولكن بخط Prop 20. تظهر الأحرف AW على سطر واحد، ممتدة على عرض الشاشة. تشير الزاوية السفلية اليسرى إلى 26 حرفًا في 5 صفوف.
PROP20

نفس لقطة الشاشة السابقة، ولكن بخط Prop 30. تتكرر الأرقام من 1 إلى 9 مرتين في سطر واحد، ممتدة على عرض الشاشة. تشير الزاوية السفلية اليسرى إلى 18 حرفًا في 3 صفوف.
PROP30

نفس لقطة الشاشة السابقة، ولكن بخط Prop 40. يظهر على الشاشة Prop 40 في السطر العلوي، ويشير السطر الثاني إلى 14 حرفًا وسطرين.
PROP40

نفس لقطة الشاشة السابقة، ولكن بخط PROP 60. يظهر PROP 60 بخط كبير، ويشغل النصف العلوي من الشاشة تقريبًا.
PROP60

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

لقطة شاشة من شاشة اختبار الذكاء IQ Brain مع نص أبيض على سطرين في الزاوية العلوية اليسرى. السطر الأول مكتوب عليه Mono Medium، والسطر الثاني أسفله مباشرة مكتوب عليه Prop Medium بخط أصغر.

set_pen_width#

set_pen_width يحدد سمك الخطوط المرسومة ومخططات الأشكال.

Usage:
brain.screen.set_pen_width(width)

المعلمة

وصف

width

عرض القلم، بالبكسل، من 0 إلى 32.

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

لقطة شاشة لاختبار الذكاء (IQ Brain) مع دائرتين بيضاوتين مطبوعتين في النصف السفلي من الشاشة. الدائرة الموجودة على اليسار مرسومة بحدود أضيق من تلك الموجودة على اليمين.

set_pen_color#

set_pen_color يحدد لون النص والبكسلات والخطوط ومخططات الأشكال.

Usage:
brain.screen.set_pen_color(color)

المعلمة

وصف

color

Optional. The pen and font color to use. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

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

لقطة شاشة من تطبيق IQ Brain مع مستطيلين صغيرين مرسومين في النصف السفلي من الشاشة. المستطيل الموجود على اليسار أزرق، والمستطيل الموجود على اليمين أبيض.

set_fill_color#

set_fill_color يحدد لون التعبئة المستخدم عند رسم الأشكال.

Usage:
brain.screen.set_fill_color(color)

المعلمة

وصف

color

Optional. The fill color to use. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# Draw a yellow circle
brain.screen.set_fill_color(Color.YELLOW)
brain.screen.draw_circle(50, 50, 20)

لقطة شاشة من شاشة اختبار الذكاء IQ Brain مع دائرة صفراء زاهية ذات إطار أبيض رفيع مرسومة على النصف الأيسر من الشاشة.

set_origin#

يُحدد الخيار set_origin نقطة الأصل المستخدمة للرسم والطباعة القائمة على الإحداثيات على شاشة Brain. افتراضيًا، تكون نقطة الأصل هي الزاوية العلوية اليسرى للشاشة.

Usage:
brain.screen.set_origin(x, y)

المعلمة

وصف

x

الإحداثي السيني الجديد الذي سيتم تعيينه كنقطة أصل، معطاة كعدد صحيح من 0 إلى 159.

y

إحداثي y الجديد الذي سيتم تعيينه كنقطة أصل، معطاة كعدد صحيح من 0 إلى 107.

# Draw a line with the origin set to (50, 50)
brain.screen.set_origin(50, 50)
brain.screen.draw_line(1, 1, 159, 107)

لقطة شاشة من برنامج IQ Brain مع خط أبيض يبدأ قليلاً إلى يسار المنتصف ويمتد قطريًا إلى أسفل اليمين باتجاه الزاوية اليمنى السفلية من الشاشة.

يرسم#

draw_pixel#

draw_pixel draws one pixel at the selected x and y coordinate using the current pen color.

Usage:
brain.screen.draw_pixel(x, y)

المعلمة

وصف

x

إحداثي x حيث سيتم رسم البكسل، معطاة كعدد صحيح من 0 إلى 159.

y

إحداثي y حيث سيتم رسم البكسل، معطاة كعدد صحيح من 0 إلى 107.

# Draw one pixel at the center
# of the screen
brain.screen.draw_pixel(80, 50)

لقطة شاشة من تطبيق IQ Brain مع نقطة بيضاء صغيرة في منتصف الشاشة.

draw_line#

draw_line يرسم خطًا من إحداثيات الشاشة الأولى (x1, y1) إلى إحداثيات الشاشة الثانية (x2, y2) باستخدام عرض القلم ولون القلم.

تستخدم إحداثيات x و y الأصل الافتراضي (0، 0) ما لم يتم تعيين أصل مختلف باستخدام set_origin.

Usage:
brain.screen.draw_line(x1, y1, x2, y2)

المعلمة

وصف

x1

إحداثي البداية للخط على المحور السيني، معطاة كعدد صحيح من 0 إلى 159.

y1

إحداثي y الابتدائي للخط، معطاة كعدد صحيح من 0 إلى 107.

x2

إحداثي س النهائي للخط، معطاة كعدد صحيح من 0 إلى 159.

y2

إحداثي y النهائي للخط، معطاة كعدد صحيح من 0 إلى 107.

# Draw a line from the top left to
# bottom right of the screen
brain.screen.draw_line(0, 0, 159, 107)

لقطة شاشة من تطبيق IQ Brain مع خط قطري أبيض مرسوم من الزاوية العلوية اليسرى إلى الزاوية السفلية اليمنى.

draw_rectangle#

draw_rectangle draws a rectangle with its top-left corner at the selected (x, y) coordinate and a size determined by the given width and height, all measured in pixels. The rectangle’s outline is drawn using the current pen width and pen color. The interior is filled with the current fill color, unless the optional color parameter is used.

تستخدم إحداثيات x و y الأصل الافتراضي (0,0) ما لم يتم تعيين أصل مختلف باستخدام set_origin.

Usage:
brain.screen.draw_rectangle(x, y, width, height, color)

المعلمة

وصف

x

الإحداثي السيني للزاوية العلوية اليسرى للمستطيل، معطاة كعدد صحيح من 0 إلى 159.

y

إحداثي y للزاوية العلوية اليسرى للمستطيل، معطاة كعدد صحيح من 0 إلى 107.

width

عرض المستطيل بالبكسل.

height

ارتفاع المستطيل بالبكسل.

color

Optional. The fill color of the rectangle. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# Draw a red rectangle on the screen
brain.screen.draw_rectangle(25, 25, 100, 50, Color.RED)

لقطة شاشة من شاشة اختبار الذكاء IQ Brain مع مستطيل أحمر كبير ذي حدود بيضاء رفيعة مرسوم في منتصف الشاشة تقريبًا.

draw_circle#

draw_circle draws a circle with its center at the selected (x, y) coordinate and a size determined by the given radius, all measured in pixels. The circle’s outline is drawn using the current pen width and pen color. The interior is filled with the current fill color, unless the optional color parameter is used.

تستخدم إحداثيات x و y الأصل الافتراضي (0,0) ما لم يتم تعيين أصل مختلف باستخدام set_origin.

Usage:
brain.screen.draw_circle(x, y, radius, color)

المعلمة

وصف

x

الإحداثي السيني لمركز الدائرة، معطاة كعدد صحيح من 0 إلى 159.

y

إحداثي y لمركز الدائرة، معطاة كعدد صحيح من 0 إلى 107.

radius

نصف قطر الدائرة بالبكسل.

color

Optional. The fill color of the circle. Options include:

  • Color.BLACK
  • Color.BLUE
  • Color.BLUE_GREEN
  • Color.BLUE_VIOLET
  • Color.GREEN
  • Color.ORANGE
  • Color.PURPLE
  • Color.RED
  • COLOR.RED_ORANGE
  • Color.RED_VIOLET
  • Color.VIOLET
  • Color.WHITE
  • Color.YELLOW
  • Color.YELLOW_GREEN
  • Color.YELLOW_ORANGE
You can also specify a custom color.

# Draw a green circle on the screen
brain.screen.draw_circle(80, 50, 20, Color.GREEN)

لقطة شاشة لاختبار الذكاء الدماغي مع دائرة خضراء صلبة ذات حافة بيضاء رفيعة في وسط الشاشة.

set_clip_region#

يُحدد set_clip_region منطقة مستطيلة على الشاشة حيث سيتم حصر جميع الرسومات والنصوص. ولن يتم عرض أي محتوى خارج هذه المنطقة.

Usage:
brain.screen.set_clip_region(x, y, width, height)

المعلمة

وصف

x

إحداثيات x للزاوية العلوية اليسرى لمنطقة القص، معطاة كعدد صحيح أو عدد عشري من 0 إلى 159.

y

إحداثيات y للزاوية العلوية اليسرى لمنطقة القص، معطاة كعدد صحيح أو عدد عشري من 0 إلى 107.

width

عرض منطقة القص بالبكسل.

height

ارتفاع منطقة القص بالبكسل.

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

لقطة شاشة من شاشة اختبار الذكاء IQ Brain مع نص أبيض بالقرب من مركز الشاشة مكتوب عليه "Cut of"، مع مربع أحمر صلب أسفله مباشرة، يوضح ما يتم طباعته في منطقة القص.

render#

يُفعّل الأمر renderrender ) مرة أخرى. يتيح هذا تحديثات أكثر سلاسة وتحكمًا للشاشة، ولكنه يعني أنه لن يكون أي شيء مرئيًا حتى يتم استخدام الأمر `render ).

Usage:
brain.screen.render()

حدود

وصف

لا تحتوي هذه الطريقة على أي معلمات.

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