Ekrāns#

Ievads#

Klase screen ir atvasināta no bāzes klases brain. Tā kontrolē, kā EXP Brain ekrānā rāda tekstu, skaitļus un grafiku.

EXP Brain ekrānam ir noteikts rindu un kolonnu skaits, kas jāizmanto, drukājot tekstu uz tā ekrāna.

Pēc noklusējuma fonts drukāšanai uz Brain ir mono20 , kam ir 7 rindas un 20 kolonnas.

Zīmēšanai smadzeņu izšķirtspēja ir 159 x 107 pikseļi.

VEX Brain ekrāna marķēta režģa diagramma, kurā redzamas rindas, kolonnas, pikseļu izmēri un koordinātas, un sarkanās līnijas iezīmē režģi.

Piekļuve#

screen klasei var piekļūt, izmantojot:

Brain.Screen

Piezīmes#

  • screen objektu nodrošina smadzenes. Tas netiek tieši konstruēts.

  • Projekti izmanto vienu globālu Brain objektu, tāpēc ekrāna funkcijas tiek izsauktas, izmantojot Brain.Screen.

Piemērs#

/* This constructor is required when using VS Code.
A Brain is generated automatically at the start of
VEXcode projects. */

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

// Print text to the Brain screen
Brain.Screen.print("Hello!");

Dalībnieku funkcijas#

screen klasē ir iekļautas šādas dalībfunkcijas:

  • print — Izdrukā formatētu tekstu, skaitļus vai Būla vērtības Brain ekrānā.

  • setCursor — Pārvieto teksta kursoru uz norādīto rindu un kolonnu.

  • newLine — Notīra atlikušo pašreizējās rindas daļu un pārvieto kursoru uz nākamo rindu.

  • clearLine — Notīra atlikušo pašreizējās rindas daļu vai notīra norādīto rindu.

  • row rinda — Atgriež rindu, kurā tiks drukāts teksts.

  • column — Atgriež kolonnu, kurā tiks drukāts teksts.

  • getStringHeight — Atgriež virknes augstumu pikseļos, izmantojot pašreizējo fontu.

  • getStringWidth — Atgriež virknes platumu pikseļos, izmantojot pašreizējo fontu.

  • printAt — Izdrukā formatētu tekstu x, y pikseļu atrašanās vietā (pēc izvēles necaurspīdīgs).

  • clearScreen — Notīra visu ekrānu (pēc izvēles norādītajā krāsā).

  • setFont — Iestata fontu, kas tiek izmantots drukāšanai uz ekrāna.

  • setPenWidth — Iestata zīmēto līniju un formu kontūru biezumu.

  • setPenColor — Iestata teksta, pikseļu, līniju un formu kontūru krāsu.

  • setFillColor — Iestata aizpildījuma krāsu zīmētām formām un drukāta teksta foniem.

  • setOrigin — Iestata ekrāna koordinātu sākumpunktu.

  • setClipRegion — Ierobežo ekrāna izvadi taisnstūrveida apgabalā.

  • drawPixel — Uzzīmē vienu pikseli koordinātā.

  • drawLine — Novelk līniju starp diviem punktiem.

  • drawRectangle — Uzzīmē taisnstūri x un y koordinātēs ar norādīto izmēru.

  • drawCircle — Uzzīmē apli x un y koordinātēs ar norādītu rādiusu.

  • drawImageFromFile — Uzzīmē attēlu no SD kartes faila ekrānā.

  • render — Iespējo dubulto buferizāciju vai renderē aizmugurējo buferi ekrānā.

Pirms jebkuru screen dalībfunkciju izsaukšanas ir jāizveido brain instance, kā parādīts zemāk:

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

print#

EXP Brain ekrānā parāda tekstu, skaitļus vai Būla vērtības.

Available Functions

1 — Izdrukā formatētu tekstu, izmantojot virkņu literāļus vai tikai lasāmas C stila virknes.

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

2 — Izdrukā formatētu tekstu, izmantojot modificējamus rakstzīmju masīvus.

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

Parameters

Parametrs

Tips

Apraksts

format

const char*

Formāta virkne, kas norādīta kā virknes literālis vai tikai lasāma C stila virkne (piemēram, “Score: %d”).

format

char*

Formāta virkne, kas norādīta kā modificējams rakstzīmju masīvs.

…

Viena vai vairākas papildu vērtības, kas tiek ievietotas formāta virknē, atdalītas ar komatiem.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Izvade sākas no pašreizējās kursora pozīcijas ekrānā.

  • Drukātajam tekstam tiek izmantots pašreizējais ekrāna fonts

  • Drukātajam tekstam tiek izmantota pašreizējā pildspalvas krāsa .

  • Teksts, kas tiek drukāts ar print vienmēr tiek drukāts ar fonu, un fona krāsu nosaka aizpildījuma krāsa.

  • Izmantojot formāta virkni, nodoto vērtību skaitam un tipiem ir jāatbilst virknes formāta specifikatoriem.

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

EXP smadzeņu ekrānuzņēmums, kurā redzams uzraksts “Sveiks, robot!”, kas uzdrukāts ekrāna augšējā kreisajā stūrī baltā krāsā.

setCursor#

Pārvieto kursoru uz noteiktu rindu un kolonnu EXP Brain ekrānā. Nākamais print izsaukums sāks drukāšanu šajā vietā.

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

Parameters

Parametrs

Tips

Apraksts

row

int32_t

Rinda, uz kuru jāpārvieto kursors.

col

int32_t

Kolonna, uz kuru jāpārvieto kursors.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Ietekmē, kur sākas turpmākā teksta izvade, izmantojot print.

  • Rindas un kolonnas ir balstītas uz pašreiz iestatīto ekrāna fontu.

  • Noklusējuma fonts (mono20) izmanto 12 rindas un 48 kolonnas.

  • Izsaucot setCursor , tiek ietekmēta tikai nākamā teksta izvades pozīcija.

Examples
// Display text starting at Row 3 Column 10
Brain.Screen.setCursor(3, 10);
Brain.Screen.print("R3, C10");

EXP Brain ekrānuzņēmums, kurā redzama 3. rindas 12. kolonnas vērtība, kas iespiesta augšējā daļā netālu no ekrāna centra, šajā pozīcijā.

newLine#

Pārvieto kursoru uz nākamās rindas sākumu Brain ekrānā.

Available Functions
void newLine();

Parameters

Šī funkcija nepieņem nekādus parametrus.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Ja kursors atrodas teikuma vidū, newLine notīrīs pārējo rindu aiz kursora, pirms pāriet uz nākamo rindu.

  • Pēc newLineizsaukšanas kursors tiek novietots nākamās rindas pirmajā kolonnā.

  • Kursora pozīcija un rindu numerācija tiek iestatīta, izmantojot setCursor.

Examples
// Display two lines of text
Brain.Screen.print("Line 1");
Brain.Screen.newLine();
Brain.Screen.print("Line 2");

EXP Brain ekrāna ekrānuzņēmums, kurā augšējā kreisajā stūrī redzamas divas balta teksta rindiņas. Augšējā rindā rakstīts “1. rindiņa”, bet otrajā rindā tieši zem tās rakstīts “2. rindiņa”.

clearLine#

Notīra tekstu no rindas EXP Brain ekrānā.

Available Functions

1 — Notīra atlikušo pašreizējās rindas daļu no kursora pozīcijas.

void clearLine();

2 — Notīra norādīto rindu, izmantojot pašlaik konfigurēto aizpildījuma krāsu.

void clearLine(
    int number );

3 — Notīra norādīto rindu, izmantojot iepriekš definētu vai pielāgotas krāsas objektu.

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

4 — Notīra norādīto rindu, izmantojot heksadecimālu krāsas vērtību.

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

5 — Notīra norādīto rindu, izmantojot nokrāsas vērtību.

void clearLine(
    int number,
    int hue );

Parameters

Parametrs

Tips

Apraksts

number

int

Notīrāmā rindas numurs. Rindu numerācija sākas ar 1.

color

const color&

Notīra rindu, izmantojot color objektu. Iepriekš definētās krāsas ietver:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Šeit var izmantot arī pielāgotas krāsas objektu.

color

const char*

Notīra rindu, izmantojot heksadecimālu krāsas vērtību (piemēram, “#000000”).

hue

int

Notīra rindu, izmantojot vesela skaitļa nokrāsas vērtību diapazonā 0līdz359, kas attēlo grādus ap krāsu apli.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Rindas notīrīšana nemaina pašreizējo kursora pozīciju.

  • Kursora pozīcija un rindu numerācija tiek iestatīta, izmantojot setCursor.

  • The hue parameter value is based on a circular color wheel, as shown below, where values represent degrees around the wheel (for example, red near 0°, green near 120°, and blue near 240°).

Krāsu aplis, kas parāda krāsu diapazonu no 0 līdz 359, kur sarkana ir 0, zaļa ir 120 un zila ir 240.

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#

Atgriež rindu, kurā teksts tiks drukāts EXP Brain ekrānā.

Available Functions
int32_t row();

Parameters

Šī funkcija nepieņem nekādus parametrus.

Return Values

Atgriež int32_t , kas apzīmē rindu, kurā tiks drukāts teksts.

Rindu numerācija sākas ar 1.

Notes
  • Kursora pozīcija ir balstīta uz pašreizējo ekrāna fontu .

  • Atgrieztā vērtība norāda, kur parādīsies nākamā izdrukātā izvade.

  • Rindas vērtība mainās, kad tiek drukāts teksts vai kad tiek izsaukta setCursor.

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

EXP Brain ekrāna ekrānuzņēmums, kurā redzams teksts 3 baltā krāsā ekrāna augšējā kreisajā kvadrantā, 3. rindas 10. kolonnas pozīcijā.

column#

Atgriež kolonnu, kurā teksts tiks drukāts EXP Brain ekrānā.

Available Functions
int32_t column();

Parameters

Šī funkcija nepieņem nekādus parametrus.

Return Values

Atgriež int32_t , kas apzīmē kolonnu, kurā tiks drukāts teksts.

Kolonnu numerācija sākas ar 1.

Notes
  • Kursora pozīcija ir balstīta uz pašreizējo ekrāna fontu .

  • Atgrieztā vērtība norāda, kur parādīsies nākamā izdrukātā izvade.

  • Kolonnas vērtība mainās, kad tiek drukāts teksts vai kad tiek izsaukta setCursor.

Examples
// Display the cursor's current column
Brain.Screen.setCursor(3, 10);
Brain.Screen.print(Brain.Screen.column());

EXP Brain ekrāna ekrānuzņēmums, kurā redzams teksts 10 baltā krāsā ekrāna augšējā kreisajā kvadrantā, 3. rindas 10. kolonnas pozīcijā.

getStringHeight#

Atgriež virknes augstumu pikseļos, kad tā tiek atveidota EXP Brain ekrānā.

Available Functions
int32_t getStringHeight( 
    const char* cstr );

Parameters

Parametrs

Tips

Apraksts

cstr

const char*

Mērāmais teksts, kas norādīts kā C stila virkne (piemēram, “Hello”).

Return Values

Atgriež int32_t kas apzīmē virknes augstumu pikseļos, kad tā tiek atveidota Brain ekrānā.

Notes
  • Atgrieztais augstums ir atkarīgs no pašlaik atlasītā ekrāna fonta

  • Šī funkcija mēra virkni, to nezīmējot ekrānā.

  • Atgrieztais augstums atspoguļo, kā virkne izskatītos izdrukāta.

getStringWidth#

Atgriež virknes platumu pikseļos, kad tā tiek atveidota EXP Brain ekrānā.

Available Functions
int32_t getStringWidth( 
    const char* cstr );

Parameters

Parametrs

Tips

Apraksts

cstr

const char*

Mērāmais teksts, kas norādīts kā C stila virkne (piemēram, “Hello”).

Return Values

Atgriež int32_t kas attēlo virknes platumu pikseļos, kad tā tiek atveidota Brain ekrānā.

Notes
  • Atgrieztais platums ir atkarīgs no pašlaik atlasītā ekrāna

  • Šī funkcija mēra virkni, to nezīmējot ekrānā.

  • Atgrieztais platums atspoguļo, kā virkne izskatītos, kad tā tiktu izdrukāta.

printAt#

Izdrukā tekstu, skaitļus vai Būla vērtības noteiktā koordinātā EXP Brain ekrānā.

Available Functions

1 — Izdrukā formatētu izvadi norādītajā pikseļa vietā.

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

2 — Izdrukā formatētu izvadi norādītajā pikseļa vietā un iestata, vai teksta fons ir necaurspīdīgs vai caurspīdīgs.

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

Parameters

Parametrs

Tips

Apraksts

x

int32_t

X-pozīcija, kurā jādrukā, atsaucoties uz ekrāna sākumpunktu.

y

int32_t

Y pozīcija, kurā jādrukā, atsaucoties uz ekrāna sākumpunktu.

bOpaque

bool

Nosaka, vai drukātais teksts tiek zīmēts necaurspīdīgi vai caurspīdīgi:

  • true — Drukātā teksta fons tiek aizpildīts, izmantojot pašreizējo aizpildījuma krāsu.
  • false — Teksts tiek zīmēts caurspīdīgi, un fons netiek aizpildīts.

format

const char*

Formāta virkne, kas kontrolē ekrānā drukājamo informāciju (piemēram, “Score: %d”).

…

Viena vai vairākas papildu vērtības, kas tiek ievietotas formāta virknē, atdalītas ar komatiem.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var mainīt, izmantojot setOrigin.

  • Drukātajam tekstam tiek izmantots pašreizējais ekrāna fonts

  • Drukātajam tekstam tiek izmantota pašreizējā pildspalvas krāsa .

  • Izmantojot formāta virkni, nodoto vērtību skaitam un tipiem ir jāatbilst virknes formāta specifikatoriem.

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

clearScreen#

Izdzēš visus zīmējumus un tekstu no smadzeņu ekrāna.

Available Functions

1 — Padara ekrānu melnu.

void clearScreen();

2 — Notīra ekrānu, izmantojot iepriekš definētu vai pielāgotas krāsas objektu.

void clearScreen(
    const color& color );

3 — Notīra ekrānu, izmantojot heksadecimālu krāsas vērtību.

void clearScreen(
    const char* color );

4 — Notīra ekrānu, izmantojot nokrāsas vērtību.

void clearScreen(
    int hue );

Parameters

Parametrs

Tips

Apraksts

color

const color&

Notīra ekrānu, izmantojot color objektu. Iepriekš definētās krāsas ietver:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Šeit var izmantot arī pielāgotas krāsas objektu.

color

const char*

Notīra ekrānu, izmantojot heksadecimālu krāsas vērtību, kas attēlota kā virkne (piemēram, “#000000”).

hue

int

Clears the screen using an integer hue value in the range 0–359, representing degrees around a color wheel.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • The hue parameter value is based on a circular color wheel, as shown below, where values represent degrees around the wheel (for example, red near 0°, green near 120°, and blue near 240°).

Krāsu aplis, kas parāda krāsu diapazonu no 0 līdz 359, kur sarkana ir 0, zaļa ir 120 un zila ir 240.

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

setFont#

Iestata fontu, kas tiek izmantots tekstam, kas tiek rādīts ekrānā EXP Brain.

Tas kontrolē fontu, kas tiek lietots turpmākajai teksta izvadei, izmantojot ekrāna teksta funkcijas, piemēram, print.

Available Functions
void setFont(
  fontType font );

Parameters

Parametrs

Tips

Apraksts

font

fontType

Iestata fontu uz vienu no šiem:

  • mono12
  • mono15
  • mono20
  • mono30
  • mono40
  • mono60
  • prop20
  • prop30
  • prop40
  • prop60
Šīs opcijas ir parādītas tālāk.

Smadzenes ekrānā drukāja ciparus un burtus ar mono 12 fonta izmēru. Tas rāda no A līdz Z un visus ciparus. Ekrāna apakšdaļā ir rakstīts 9 rindas, 26 kolonnas.
mono12

Smadzenes ekrānuzņēmumā drukāja ciparus un burtus ar fonta izmēru mono 15. Tas rāda no A līdz T un visus ciparus. Ekrāna apakšdaļā ir rakstīts 7 rindas, 22 kolonnas.
mono15

Smadzenes ekrānuzņēmumā drukāja ciparus un burtus ar fonta izmēru mono 20. Tas rāda no A līdz P un visus ciparus. Ekrāna apakšdaļā ir rakstīts 5 rindas, 16 kolonnas.
mono20

Smadzenes ekrānuzņēmumā drukāja ciparus un burtus ar fonta izmēru mono 30. Tas rāda no A līdz J. Ekrāna apakšdaļā ir rakstīts R:3 C:10.
mono30

Smadzenes sietspiedē uzdrukāja ciparus un burtus ar fonta izmēru mono 40. Ekrāna apakšdaļā ir rakstīts R:2 C:8.
mono40

Smadzenes sietspiedē ciparus un burtus ar fonta izmēru mono 60. Tiek parādīts tikai MON60.
mono60

Smadzenes ekrānā izdrukāja ciparus un burtus ar fonta izmēru prop 20. Tas rāda no A līdz W un visus ciparus. Ekrāna apakšdaļā ir rakstīts 5 rindas, 16 kolonnas.
prop20

Smadzenes sietspiedē uzdrukāja ciparus un burtus ar fonta izmēru prop 30. Tas rāda no A līdz P. Ekrāna apakšdaļā ir rakstīts R:3 C:10.
prop30

Smadzenes uz ekrāna izdrukāja ciparus un burtus ar fonta izmēru prop 40. Ekrāna apakšdaļā ir rakstīts R:2 C:8.
prop40

Smadzenes sietspiedē uzdrukāja ciparus un burtus ar prop 60 fonta izmēru. Tiek parādīts tikai PROP60.
prop60

Return Values

Šī funkcija neatgriež vērtību.

Examples
// Print larger text
Brain.Screen.setFont(mono40);
Brain.Screen.print("VEX");

EXP Brain ekrāna ekrānuzņēmums, kurā augšējā kreisajā stūrī redzams balts teksts ar VEX lielākā fontā nekā noklusējuma fonts.

setPenWidth#

Nosaka zīmēto līniju un formu kontūru biezumu.

Available Functions
void setPenWidth(
  uint32_t width );

Parameters

Parametrs

Tips

Apraksts

width

uint32_t

Pildspalvas platums pikseļos diapazonā no 0 līdz 32.

Return Values

Šī funkcija neatgriež vērtību.

Notes Examples
// Draw a rectangle with a pen width of 10
Brain.Screen.setPenWidth(10);
Brain.Screen.drawRectangle(20, 20, 75, 50);

EXP Brain ekrāna ekrānuzņēmums, kurā redzams taisnstūris ar biezām apmalēm ekrāna kreisajā pusē.

setPenColor#

Iestata pildspalvas krāsu, ko izmanto līniju, formu un teksta zīmēšanai.

Available Functions

1 — Iestata pildspalvas krāsu, izmantojot iepriekš definētu vai pielāgotas krāsas objektu.

void setPenColor(
    const color& color );

2 — Iestata pildspalvas krāsu, izmantojot heksadecimālu krāsas vērtību.

void setPenColor(
    const char* color );

3 — Iestata pildspalvas krāsu, izmantojot nokrāsas vērtību.

void setPenColor(
    int hue );

Parameters

Parametrs

Tips

Apraksts

color

const color&

Iestata pildspalvas krāsu, izmantojot color objektu. Iepriekš definētās krāsas ietver:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Var izmantot arī pielāgotas krāsas objektu.

color

const char*

Iestata pildspalvas krāsu, izmantojot heksadecimālu krāsas vērtību, kas attēlota kā virkne (piemēram, “#FF0000”).

hue

int

Iestata pildspalvas krāsu, izmantojot vesela skaitļa nokrāsas vērtību diapazonā 0līdz359, kas attēlo grādus ap krāsu apli (piemēram, 0 ir sarkana, 120 ir zaļa un 240 ir zila).

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Noklusējuma pildspalvas krāsa projekta sākumā ir white.

  • The pen color is used for outlines of shapes (such as with drawCircle or drawRectangle), text and numeric output (with print and printAt), and individual pixels drawn with drawPixel.

  • The hue parameter value is based on a circular color wheel, as shown below, where values represent degrees around the wheel (for example, red near 0°, green near 120°, and blue near 240°).

Krāsu aplis, kas parāda krāsu diapazonu no 0 līdz 359, kur sarkana ir 0, zaļa ir 120 un zila ir 240.

Examples
// Draw a rectangle with orange borders
Brain.Screen.setPenColor(orange);
Brain.Screen.drawRectangle(20, 20, 75, 50);

EXP Brain ekrāna ekrānuzņēmums, kurā ekrāna kreisajā pusē redzams oranžā krāsā uzzīmēts taisnstūris.

setFillColor#

Iestata aizpildījuma krāsu, kas tiek izmantota, zīmējot formas.

Available Functions

1 — Iestata aizpildījuma krāsu, izmantojot iepriekš definētu vai pielāgotas krāsas objektu.

void setFillColor(
    const color& color );

2 — Iestata aizpildījuma krāsu, izmantojot heksadecimālu krāsas vērtību.

void setFillColor(
    const char* color );

3 — Iestata aizpildījuma krāsu, izmantojot nokrāsas vērtību.

void setFillColor(
    int hue );

Parameters

Parametrs

Tips

Apraksts

color

const color&

Iestata aizpildījuma krāsu, izmantojot color objektu. Iepriekš definētās krāsas ietver:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Šeit var izmantot arī pielāgotas krāsas objektu.

color

const char*

Iestata aizpildījuma krāsu, izmantojot heksadecimālu krāsas vērtību, kas attēlota kā virkne (piemēram, “#00FF00”).

hue

int

Iestata aizpildījuma krāsu, izmantojot vesela skaitļa nokrāsas vērtību diapazonā 0līdz359, kas attēlo grādus ap krāsu apli (piemēram, 0 ir sarkana, 120 ir zaļa un 240 ir zila).

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Noklusējuma aizpildījuma krāsa projekta sākumā ir black.

  • Aizpildījuma krāsa tiek izmantota formu iekšpusē (piemēram, ar drawCircle vai drawRectangle).

  • Aizpildījuma krāsa tiek izmantota kā fona krāsa drukātam tekstam (piemēram, ar print un printAt).

    • Ja drukātam tekstam tiek izmantota vērtība transparent , fons būs melns black.

  • The hue parameter value is based on a circular color wheel, as shown below, where values represent degrees around the wheel (for example, red near 0°, green near 120°, and blue near 240°).

Krāsu aplis, kas parāda krāsu diapazonu no 0 līdz 359, kur sarkana ir 0, zaļa ir 120 un zila ir 240.

Examples
// Draw a rectangle filled with purple
  Brain.Screen.setFillColor(purple);
  Brain.Screen.drawRectangle(20, 20, 75, 50);

EXP Brain ekrāna ekrānuzņēmums, kurā ekrāna kreisajā pusē redzams ar violetu krāsu aizpildīts taisnstūris.

setOrigin#

Iestata sākuma punktu, kas tiek izmantots grafikas zīmēšanai Brain ekrānā.

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

Parameters

Parametrs

Tips

Apraksts

x

int32_t

Sākotnes x pozīcija attiecībā pret smadzeņu ekrāna augšējo kreiso stūri no 0 līdz 159.

y

int32_t

Sākotnes y pozīcija attiecībā pret smadzeņu ekrāna augšējo kreiso stūri no 0 līdz 107.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Noklusējuma sākumpunkts ir ekrāna augšējais kreisais stūris koordinātēs (0, 0).

  • Izcelsmes punkts attiecas uz koordinātu funkcijām, piemēram, drawLine, drawRectangle, drawCircle un printAt.

  • Izcelsmes punkts paliek spēkā, līdz tas tiek mainīts vēlreiz vai projekts tiek atiestatīts.

setClipRegion#

Nosaka taisnstūrveida apgabalu ekrānā, kurā tiks ievietoti visi zīmējumi un teksts. Jebkāds saturs ārpus šī apgabala netiks parādīts.

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

Parameters

Parametrs

Tips

Apraksts

x

int

Klipa apgabala augšējā kreisā stūra x koordināta, kas norādīta kā vesels skaitlis no 0 līdz 159.

y

int

Saspraudes apgabala augšējā kreisā stūra y koordināta, kas norādīta kā vesels skaitlis no 0 līdz 107.

width

int

Klipa apgabala platums pikseļos, kas norādīts kā vesels skaitlis no 0 līdz 159.

height

int

Klipa apgabala augstums pikseļos, kas norādīts kā vesels skaitlis no 0 līdz 107.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Zīmēšanas funkcijas joprojām tiek izpildītas pat tad, ja tās atrodas ārpus klipa apgabala, bet redzama ir tikai apgabala iekšpusē esošā daļa.

  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var mainīt, izmantojot setOrigin.

  • Klipa reģions attiecas tikai uz pašreizējo pavedienu.

  • Jauna klipa apgabala iestatīšana aizstāj jebkuru iepriekš iestatītu klipa apgabalu pašreizējai pavedienam.

Examples

drawPixel#

Uzzīmē vienu pikseli EXP Brain ekrānā atlasītajā x un y pikseļu atrašanās vietā.

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

Parameters

Parametrs

Tips

Apraksts

x

int

X koordināta, kur tiks zīmēts pikselis, norādīta kā vesels skaitlis no 0 līdz 159.

y

int

Y koordināta, kur tiks zīmēts pikselis, norādīta kā vesels skaitlis no 0 līdz 107.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Pikseļi tiek zīmēti, izmantojot pašreizējo pildspalvas krāsu, kas iestatīta ar setPenColor.

  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var iestatīt, izmantojot setOrigin.

  • Ja norādītā pikseļa atrašanās vieta atrodas ārpus ekrāna robežām, pikselis netiek zīmēts.

Examples
// Draw the pixels marking the corners of a square
Brain.Screen.drawPixel(50, 50);
Brain.Screen.drawPixel(50, 75);
Brain.Screen.drawPixel(75, 50);
Brain.Screen.drawPixel(75, 75);

EXP Brain ekrāna ekrānuzņēmums, kurā redzams pikseļu klāsts, kas attēlo kvadrāta stūrus ekrāna centrā.

drawLine#

Zīmē taisnu līniju, kas savieno divus punktus EXP Brain ekrānā.

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

Parameters

Parametrs

Tips

Apraksts

x1

int

Līnijas sākuma x koordināta, kas norādīta kā vesels skaitlis no 0 līdz 159.

y1

int

Līnijas sākuma y koordināta, kas norādīta kā vesels skaitlis no 0 līdz 107.

x2

int

Līnijas beigu x koordināta, kas norādīta kā vesels skaitlis no 0 līdz 159.

y2

int

Līnijas beigu y koordināta, kas norādīta kā vesels skaitlis no 0 līdz 107.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Līnijas tiek zīmētas, izmantojot pašreizējo pildspalvas krāsu, kas iestatīta ar setPenColor.

  • Līnijas platumu nosaka pašreizējais pildspalvas platums, kas iestatīts ar setPenWidth.

  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var iestatīt, izmantojot setOrigin.

  • Ja kāda līnijas daļa atrodas ārpus ekrāna robežām, tiek zīmēta tikai redzamā daļa.

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

EXP Brain ekrāna ekrānuzņēmumā redzama plāna diagonāla līnija pāri centram no augšējā kreisā stūra līdz apakšējam labajam stūrim.

drawRectangle#

Uzzīmē taisnstūri EXP Brain ekrānā norādītajā pozīcijā un izmērā.

Available Functions

1 — Zīmē un aizpilda taisnstūri, izmantojot pašlaik konfigurēto aizpildījuma krāsu.

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

2 — Zīmē un aizpilda taisnstūri, izmantojot iepriekš definētu vai pielāgotu krāsu objektu.

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

3 — Zīmē un aizpilda taisnstūri, izmantojot heksadecimālu krāsas vērtību.

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

4 — Zīmē un aizpilda taisnstūri, izmantojot nokrāsas vērtību.

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

Parameters

Parametrs

Tips

Apraksts

x

int

Taisnstūra augšējā kreisā stūra x koordināta, kas norādīta kā vesels skaitlis no 0 līdz 159.

y

int

Taisnstūra augšējā kreisā stūra y koordināta, kas norādīta kā vesels skaitlis no 0 līdz 107.

width

int

Taisnstūra platums, kas norādīts kā vesels skaitlis no 0 līdz 159.

height

int

Taisnstūra augstums, kas norādīts kā vesels skaitlis no 0 līdz 107.

color

const color&

Aizpilda taisnstūri, izmantojot color objektu. Iepriekš definētās krāsas ietver:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Var izmantot arī pielāgotas krāsas objektu.

color

const char*

Aizpilda taisnstūri, izmantojot heksadecimālu krāsas vērtību (piemēram, “#FF0000”).

hue

int

Aizpilda taisnstūri, izmantojot nokrāsas vērtību diapazonā 0līdz359.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Taisnstūra kontūra tiek zīmēta, izmantojot pašreizējo pildspalvas krāsu, kas iestatīta ar setPenColor.

  • Kontūras biezumu nosaka pašreizējais pildspalvas platums, kas iestatīts ar setPenWidth.

  • Ja nav norādīts parametrs color , taisnstūra iekšpuse tiek aizpildīta, izmantojot pašreizējo aizpildījuma krāsu, kas iestatīta ar setFillColor.

  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var mainīt, izmantojot setOrigin.

  • Ja kāda taisnstūra daļa atrodas ārpus ekrāna robežām, tiek zīmēta tikai redzamā daļa.

  • The hue parameter value is based on a circular color wheel, as shown below, where values represent degrees around the wheel (for example, red near 0°, green near 120°, and blue near 240°).

Krāsu aplis, kas parāda krāsu diapazonu no 0 līdz 359, kur sarkana ir 0, zaļa ir 120 un zila ir 240.

Examples
// Draw a rectangle on the screen
Brain.Screen.drawRectangle(20, 20, 80, 30);

EXP Brain ekrāna ekrānuzņēmumā redzams taisnstūris ar plānu baltu apmali augšējā kreisajā kvadrantā.

drawCircle#

Uzzīmē apli EXP Brain ekrānā norādītajā pozīcijā un rādiusā.

Available Functions

1 — Zīmē un aizpilda apli, izmantojot pašlaik konfigurēto aizpildījuma krāsu.

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

2 — Zīmē un aizpilda apli, izmantojot iepriekš definētu vai pielāgotu krāsu objektu.

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

3 — Zīmē un aizpilda apli, izmantojot heksadecimālu krāsas vērtību.

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

4 — Zīmē un aizpilda apli, izmantojot nokrāsas vērtību.

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

Parameters

Parametrs

Tips

Apraksts

x

int

Apļa centra x koordināta, kas norādīta kā vesels skaitlis no 0 līdz 159.

y

int

Apļa centra y koordināta, kas norādīta kā vesels skaitlis no 0 līdz 107.

radius

int

Apļa rādiuss, kas norādīts kā vesels skaitlis no 0 līdz 107 pikseļiem.

color

const color&

Aizpilda apli, izmantojot color objektu. Iepriekš definētās krāsas ietver:

  • black
  • white
  • red
  • green
  • blue
  • yellow
  • orange
  • purple
  • cyan
  • transparent
Var izmantot arī pielāgotas krāsas objektu.

color

const char*

Aizpilda apli, izmantojot heksadecimālu krāsas vērtību (piemēram, “#FF0000”).

hue

int

Aizpilda apli, izmantojot nokrāsas vērtību diapazonā 0līdz359.

Return Values

Šī funkcija neatgriež vērtību.

Notes
  • Apļa kontūra tiek zīmēta, izmantojot pašreizējo pildspalvas krāsu, kas iestatīta ar setPenColor.

  • Kontūras biezumu nosaka pašreizējais pildspalvas platums, kas iestatīts ar setPenWidth.

  • Ja nav norādīts parametrs color , apļa iekšpuse tiek aizpildīta, izmantojot pašreizējo aizpildījuma krāsu, kas iestatīta ar setFillColor.

  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var mainīt, izmantojot setOrigin.

  • The hue parameter value is based on a circular color wheel, as shown below, where values represent degrees around the wheel (for example, red near 0°, green near 120°, and blue near 240°).

Krāsu aplis, kas parāda krāsu diapazonu no 0 līdz 359, kur sarkana ir 0, zaļa ir 120 un zila ir 240.

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

EXP Brain ekrāna ekrānuzņēmumā redzams aplis ar plānu baltu apmali centrā.

drawImageFromFile#

Uzzīmē attēlu EXP Brain ekrānā, izmantojot attēla failu, kas saglabāts SD kartē.

Available Functions
bool drawImageFromFile(
  const char* name,
  int x,
  int y );

Parameters

Parametrs

Tips

Apraksts

name

const char*

Attēla faila nosaukums SD kartē. Failam ir jābūt ar paplašinājumu .bmp vai .png.

x

int

X koordināta pikseļos no 0 līdz 159, kurā tiks zīmēta attēla kreisā mala.

y

int

Y koordināta pikseļos no 0 līdz 107, pie kuras tiks zīmēta attēla augšējā mala.

Return Values

Atgriež Būla vērtību, kas norāda, vai attēls tika veiksmīgi uzzīmēts:

  • true — Attēls tika veiksmīgi ielādēts un uzzīmēts ekrānā.
  • false — Attēlu nevarēja uzzīmēt (piemēram, ja fails neeksistē vai ir nederīgs).

Notes
  • Atbalstītie attēlu formāti ir .bmp un .png.

  • Attēla faila lielums nedrīkst pārsniegt 512 KB

    • Lai samazinātu faila lielumu, ieteicams izmantot 8 bitu RLE kodējumu.

  • Maksimāli atbalstītie attēla izmēri ir Brain ekrāna izmērs (aptuveni 159 x 107 pikseļi).

  • x un y koordinātas ir relatīvas attiecībā pret pašreizējo ekrāna sākumpunktu, ko var mainīt, izmantojot setOrigin.

Examples
// Draw a bmp file on the Brain's screen at coordinate 0, 0
Brain.Screen.drawImageFromFile("test_image.bmp", 0, 0);

render#

Iespējo dubultu buferizāciju Brain ekrānam. Pēc izsaukšanas visas zīmēšanas funkcijas (piemēram, teksts, formas vai attēli) vairs neparādīsies nekavējoties pārējā projektā. Tā vietā atjauninājumi tiks parādīti tikai tad, kad atkal tiks izmantota render Tas nodrošina vienmērīgākus un kontrolētākus ekrāna atjauninājumus, bet nozīmē, ka nekas nebūs redzams, kamēr netiks izmantota render.

Available Functions

1 — Iespējo dubulto buferizāciju vai atveido aizmugurējo buferi ekrānā.

bool render();

2 — Renderē aizmugurējo buferi ekrānā ar vertikālās sinhronizācijas darbības kontroli un papildu plānotāja izpildi.

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

Parameters

Parametrs

Tips

Apraksts

bVsyncWait

bool

​

  • true — Pirms renderēšanas nogaidīt ekrāna vertikālo atsvaidzinājumu, lai samazinātu vizuālo plīsumu.
  • false — Pirms renderēšanas negaidīt ekrāna vertikālo atsvaidzinājumu.

bRunScheduler

bool

Neobligāti.

  • true (noklusējums) — Ļaut fona uzdevumiem darboties, gaidot renderēšanu.
  • false — Neļaut fona uzdevumiem darboties, gaidot renderēšanu.

Return Values

Atgriež Būla vērtību, kas norāda, vai buferī saglabātie zīmējumi tika veiksmīgi atveidoti ekrānā:

  • true — Zīmējumi tika veiksmīgi atveidoti ekrānā.
  • false — Zīmējumus nevarēja atveidot ekrānā.
  • Notes
    • Izsaucot render , pārējā projekta daļā būs jāizmanto render.

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