Näyttö#
Johdanto#
screen -luokka on johdettu brain -perusluokasta. Se ohjaa sitä, miten V5 Brain näyttää tekstiä, numeroita ja grafiikkaa kosketusnäytöllään ja miten se reagoi kosketussyötteeseen.
Oletusarvoisesti Brainiin tulostettava fontti on monospaced small, jossa on 12 riviä ja 48 saraketta.
Piirtämistä varten aivojen resoluutio on 480 x 240 pikseliä.

Pääsy#
screen -luokkaan pääsee käsiksi seuraavasti:
Brain.Screen
Muistiinpanoja#
Aivot tarjoavat
screen-objektin. Sitä ei konstruoida suoraan.Projektit käyttävät yhtä globaalia
Brain-objektia, joten screen-funktioita kutsutaan käyttämälläBrain.Screen-objektia.
Esimerkki#
/* This constructor is required when using VS Code.
A Brain is generated automatically at the start of
VEXcode projects. */
// Create the V5 Brain
brain Brain = brain();
// Print text to the Brain screen
Brain.Screen.print("Hello!");
Jäsenten toiminnot#
screen -luokka sisältää seuraavat jäsenfunktiot:
print— Tulostaa muotoiltua tekstiä, numeroita tai totuusarvoja Brain-näytölle.setCursor— Siirtää tekstikohdistimen määritettyyn riviin ja sarakkeeseen.newLine— Tyhjentää nykyisen rivin loppuosan ja siirtää kohdistimen seuraavalle riville.clearLine— Tyhjentää nykyisen rivin loppuosan tai tyhjentää määritetyn rivin.row— Palauttaa rivin, jolle teksti tulostetaan.column— Palauttaa sarakkeen, johon teksti tulostetaan.getStringHeight— Palauttaa merkkijonon korkeuden pikseleinä käyttäen nykyistä fonttia.getStringWidth— Palauttaa merkkijonon leveyden pikseleinä käyttäen nykyistä fonttia.printAt— Tulostaa muotoiltua tekstiä x- ja y-pikselisijaintiin.clearScreen— Tyhjentää kaikki piirrokset ja tekstin Brain-näytöltä.setFont— Asettaa näytölle tulostettaessa käytettävän fontin.setPenWidth— Asettaa piirrettyjen viivojen ja ääriviivojen paksuuden.setPenColor— Asettaa tekstin, pikseleiden, viivojen ja ääriviivojen värin.setFillColor— Asettaa piirrettyjen muotojen ja tulostettujen tekstitaustojen täyttövärin.setOrigin— Asettaa näyttökoordinaattien alkuperän.setClipRegion— Rajoittaa näytön tulosteen suorakaiteen muotoiseen alueeseen.drawPixel— Piirtää yhden pikselin koordinaattiin.drawLine— Piirtää viivan kahden pisteen välille.drawRectangle— Piirtää x- ja y-koordinaatteihin suorakulmion määritetyllä koolla.drawCircle— Piirtää ympyrän x- ja y-koordinaateissa määritetyllä säteellä.drawImageFromFile— Piirtää kuvan SD-kortilla olevasta tiedostosta näytölle.render— Ottaa käyttöön kaksoispuskuroinnin tai renderöi taustapuskurin näytölle.pressing— Palauttaa, painetaanko näyttöä parhaillaan.xPosition— Palauttaa viimeisimmän näytöllä painalluksen x-koordinaatin.yPosition— Palauttaa viimeisimmän näytöllä painalluksen y-koordinaatin.pressed— Rekisteröi takaisinkutsufunktion suoritettavaksi, kun näyttöä painetaan.released— Rekisteröi takaisinkutsufunktion suoritettavaksi, kun näyttö vapautetaan painamisen jälkeen.
Ennen minkään screen -jäsenfunktion kutsumista on luotava brain -instanssi alla olevan mukaisesti:
// Create the V5 Brain
brain Brain = brain();
print#
Näyttää tekstiä, numeroita tai totuusarvoja V5 Brain -näytössä.
Available Functions1 — Tulostaa muotoiltua tekstiä käyttämällä merkkijonoliteraaleja tai vain luettavia C-tyylisiä merkkijonoja.
void print( const char* format, ... );
Parameters2 — Tulostaa muotoiltua tekstiä muokattavia merkistötaulukoita käyttäen.
void print( char* format, ... );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Muotoilumerkkijono, joka annetaan merkkijonoliteraalina tai vain luettavana C-tyylisenä merkkijonona (esimerkiksi |
|
|
Muokattavana merkkijonona annettu muotoilumerkkijono. |
|
Yksi tai useampi lisäarvo, jotka lisätään muotoilumerkkijonoon pilkuilla erotettuna. |
Tämä funktio ei palauta arvoa.
NotesTeksti, joka tulostetaan arvolla
printtulostetaan aina taustan kanssa, ja taustavärin määrää nykyinen täyttöväriMuotoilumerkkijonoa käytettäessä välitettävien arvojen lukumäärän ja tyyppien on vastattava merkkijonon muotoilumäärittelijöitä.
// Display a message at the starting cursor
Brain.Screen.print("Hello, Robot!");

setCursor#
Siirtää kohdistimen tiettyyn riviin ja sarakkeeseen V5 Brain -näytössä. Seuraava print -kutsu aloittaa tulostuksen tästä kohdasta.
void setCursor(
int32_t row,
int32_t col );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Rivi, johon kohdistin siirretään. |
|
|
Sarake, johon kohdistin siirretään. |
Tämä funktio ei palauta arvoa.
NotesVaikuttaa siihen, mistä seuraava tekstituloste alkaa käytettäessä
print.Rivit ja sarakkeet perustuvat nykyiseen asetettuun näyttöfonttiin.
Oletusfontti (
mono20) käyttää 12 riviä ja 48 saraketta.Funktion
setCursorkutsuminen vaikuttaa vain seuraavan tekstitulosteen sijaintiin.
// Display text starting at Row 3 Column 12
Brain.Screen.setCursor(3, 12);
Brain.Screen.print("Row 3, Column 12");

newLine#
Siirtää kohdistimen Brain-näytön seuraavan rivin alkuun.
Available Functionsvoid newLine();
Tämä funktio ei hyväksy parametreja.
Return ValuesTämä funktio ei palauta arvoa.
NotesJos kohdistin on lauseen keskellä,
newLinetyhjentää lopun rivin kohdistimen jälkeen ennen siirtymistä seuraavalle riville.newLinekutsumisen jälkeen kursori sijoitetaan seuraavan rivin ensimmäiseen sarakkeeseen.Kohdistimen sijainti ja rivinumerointi asetetaan käyttämällä
setCursor.
// Display two lines of text
Brain.Screen.print("Line 1");
Brain.Screen.newLine();
Brain.Screen.print("Line 2");

clearLine#
Tyhjentää tekstin riviltä V5 Brain -näytössä.
Available Functions1 — Tyhjentää nykyisen rivin lopun kohdistimen sijainnista.
void clearLine();
2 — Tyhjentää määritetyn rivin käyttämällä nykyistä määritettyä täyttöväriä.
void clearLine( int number );
3 — Tyhjentää määritetyn rivin käyttämällä ennalta määritettyä tai mukautettua väriä objektia.
void clearLine( int number, const color& color );
4 — Tyhjentää määritetyn rivin käyttämällä heksadesimaaliväriarvoa.
void clearLine( int number, const char* color );
Parameters5 — Tyhjentää määritetyn rivin käyttäen sävyarvoa.
void clearLine( int number, int hue );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Tyhjennettävän rivin numero. Rivien numerointi alkaa numerosta |
|
|
Clears the row using a
|
|
|
Tyhjentää rivin käyttämällä heksadesimaalimuotoista väriarvoa (esimerkiksi |
|
|
Tyhjentää rivin käyttämällä kokonaislukuista sävyn arvoa väliltä |
Tämä funktio ei palauta arvoa.
NotesRivin tyhjentäminen ei muuta kohdistimen nykyistä sijaintia.
Kohdistimen sijainti ja rivinumerointi asetetaan käyttämällä
setCursor.Sävyparametrin
hueperustuu pyöreään väriympyrään, kuten alla on esitetty, jossa arvot edustavat asteita ympyrän ympärillä (esimerkiksi punainen lähellä 0°, vihreä lähellä 120° ja sininen lähellä 240°).

// 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#
Palauttaa rivin, jolle teksti tulostetaan V5 Brain -näytöllä.
Available Functionsint32_t row();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa arvon int32_t joka edustaa riviä, jolle teksti tulostetaan.
Rivien numerointi alkaa numerosta 1.
NotesPalautettu arvo osoittaa, missä seuraava tulostettu tuloste näkyy.
Rivin arvo muuttuu, kun teksti tulostetaan tai kun
setCursorkutsutaan.
// Display the cursor's current row
Brain.Screen.setCursor(3, 12);
Brain.Screen.print(Brain.Screen.row());

column#
Palauttaa sarakkeen, johon teksti tulostetaan V5 Brain -näytöllä.
Available Functionsint32_t column();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa arvon int32_t joka edustaa saraketta, johon teksti tulostetaan.
Sarakkeiden numerointi alkaa numerosta 1.
NotesPalautettu arvo osoittaa, missä seuraava tulostettu tuloste näkyy.
Sarakkeen arvo muuttuu, kun teksti tulostetaan tai kun
setCursorkutsutaan.
// Display the cursor's current column
Brain.Screen.setCursor(5, 15);
Brain.Screen.print(Brain.Screen.column());

getStringHeight#
Palauttaa merkkijonon korkeuden pikseleinä, kun se renderöidään V5 Brain -näytössä.
Available Functionsint32_t getStringHeight(
const char* cstr );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Mitattava teksti, joka annetaan C-tyylisenä merkkijonona (esimerkiksi |
Palauttaa arvon int32_t joka edustaa merkkijonon korkeutta pikseleinä Brain-näytössä renderöidyssä muodossa.
Palautettu korkeus riippuu valitusta näyttöfontista.
Tämä funktio mittaa merkkijonon piirtämättä sitä näytölle.
Palautettu korkeus heijastaa sitä, miltä merkkijono näyttäisi tulostettuna.
getStringWidth#
Palauttaa merkkijonon leveyden pikseleinä, kun se renderöidään V5 Brain -näytössä.
Available Functionsint32_t getStringWidth(
const char* cstr );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Mitattava teksti, joka annetaan C-tyylisenä merkkijonona (esimerkiksi |
Palauttaa arvon int32_t joka edustaa merkkijonon leveyttä pikseleinä, kun se renderöidään Brain-näytöllä.
Palautettu leveys riippuu valitusta näyttöfontista.
Tämä funktio mittaa merkkijonon piirtämättä sitä näytölle.
Palautettu leveys heijastaa sitä, miltä merkkijono näyttäisi tulostettuna.
printAt#
Tulostaa tekstiä, numeroita tai totuusarvoja tietyssä koordinaatissa V5 Brain -näytöllä.
Available Functions1 — Tulostaa muotoillun tulosteen määritettyyn pikselisijaintiin.
void printAt( int32_t x, int32_t y, const char* format, ... );
Parameters2 — Tulostaa muotoillun tulosteen määritettyyn pikselisijaintiin ja määrittää, onko tekstin tausta läpinäkymätön vai peittävä.
void printAt( int32_t x, int32_t y, bool bOpaque, const char* format, ... );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Tulostettava x-sijainti, viitaten näytön lähtöpisteeseen. |
|
|
Tulostettava y-akselin sijainti suhteessa näytön lähtöpisteeseen. |
|
|
Määrittää, piirretäänkö tulostettava teksti läpinäkymättömäksi vai läpinäkyväksi:
|
|
|
Muotoilumerkkijono, joka määrittää, mitä näytölle tulostetaan (esimerkiksi |
|
Yksi tai useampi lisäarvo, jotka lisätään muotoilumerkkijonoon pilkuilla erotettuna. |
Tämä funktio ei palauta arvoa.
NotesKoordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, jota voidaan muuttaa käyttämälläsetOrigin.Muotoilumerkkijonoa käytettäessä välitettävien arvojen lukumäärän ja tyyppien on vastattava merkkijonon muotoilumäärittelijöitä.
// Print "Center" at the center of the screen
Brain.Screen.printAt(220, 120, "Center");

clearScreen#
Poistaa kaikki piirrokset ja tekstin Brain-näytöltä ja palauttaa kohdistimen riville 1, sarakkeeseen 1.
Available Functions1 — Tyhjentää näytön mustaksi.
void clearScreen();
2 — Tyhjentää näytön käyttämällä ennalta määritettyä tai mukautettua väriä objektia.
void clearScreen( const color& color );
3 — Tyhjentää näytön käyttämällä heksadesimaaliväriarvoa.
void clearScreen( const char* color );
Parameters4 — Tyhjentää näytön käyttäen sävyarvoa.
void clearScreen( int hue );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Tyhjentää näytön käyttämällä
|
|
|
Tyhjentää näytön käyttämällä heksadesimaalimuotoista väriarvoa, joka esitetään merkkijonona (esimerkiksi |
|
|
Tyhjentää näytön käyttämällä kokonaislukuista sävyarvoa väliltä |
Tämä funktio ei palauta arvoa.
NotesSävyparametrin
hueperustuu pyöreään väriympyrään, kuten alla on esitetty, jossa arvot edustavat asteita ympyrän ympärillä (esimerkiksi punainen lähellä 0°, vihreä lähellä 120° ja sininen lähellä 240°).

// 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#
Asettaa V5 Brain -näytössä näkyvän tekstin fontin.
Tämä määrittää fontin, jota käytetään myöhemmässä tekstitulostuksessa käytettäessä näyttötekstifunktioita, kuten print.
void setFont(
fontType font );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Asettaa fontin johonkin seuraavista:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
Tämä funktio ei palauta arvoa.
Examples// Print larger text
Brain.Screen.setFont(mono40);
Brain.Screen.print("VEX");

// Print in Chinese
Brain.Screen.setFont(fontType::cjk16);
Brain.Screen.print("VEX机器人");

setPenWidth#
Määrittää piirrettyjen viivojen ja ääriviivojen paksuuden.
Available Functionsvoid setPenWidth(
uint32_t width );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Kynän leveys pikseleinä väliltä 0–32. |
Tämä funktio ei palauta arvoa.
NotesKynän leveys koskee piirtofunktioita, kuten
drawLine,drawRectanglejadrawCircle.
// Draw a rectangle with a pen width of 10
Brain.Screen.setPenWidth(10);
Brain.Screen.drawRectangle(50, 50, 130, 60);

setPenColor#
Määrittää tekstin, pikseleiden, viivojen ja ääriviivojen värin.
Available Functions1 — Asettaa kynän värin käyttämällä ennalta määritettyä tai mukautettua väriä objektia.
void setPenColor( const color& color );
2 — Asettaa kynän värin heksadesimaaliarvon avulla.
void setPenColor( const char* color );
Parameters3 — Asettaa kynän värin sävyarvon avulla.
void setPenColor( int hue );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Asettaa kynän värin käyttämällä
|
|
|
Asettaa kynän värin käyttämällä heksadesimaalimuotoista väriarvoa, joka esitetään merkkijonona (esimerkiksi |
|
|
Asettaa kynän värin käyttämällä kokonaislukuarvoa väliltä |
Tämä funktio ei palauta arvoa.
NotesProjektin alussa kynän oletusväri on
white.Kynän väriä käytetään muotojen ääriviivoihin (kuten funktioilla
drawCircletaidrawRectangle), teksti- ja numeeriseen tulosteeseen (funktioillaprintjaprintAt) sekä yksittäisiin pikseleihin, jotka piirretään funktiolladrawPixel.Sävyparametrin
hueperustuu pyöreään väriympyrään, kuten alla on esitetty, jossa arvot edustavat asteita ympyrän ympärillä (esimerkiksi punainen lähellä 0°, vihreä lähellä 120° ja sininen lähellä 240°).

// Draw a rectangle with orange borders
Brain.Screen.setPenColor(orange);
Brain.Screen.drawRectangle(50, 50, 130, 60);

setFillColor#
Määrittää muotojen piirtämisessä käytettävän täyttövärin.
Available Functions1 — Asettaa täyttövärin käyttämällä ennalta määritettyä tai mukautettua väriä -objektia.
void setFillColor( const color& color );
2 — Asettaa täyttövärin heksadesimaaliarvon avulla.
void setFillColor( const char* color );
Parameters3 — Asettaa täyttövärin sävyarvon avulla.
void setFillColor( int hue );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Asettaa täyttövärin käyttämällä
|
|
|
Asettaa täyttövärin käyttämällä heksadesimaalimuotoista väriarvoa, joka esitetään merkkijonona (esimerkiksi |
|
|
Asettaa täyttövärin kokonaislukuarvona väliltä |
Tämä funktio ei palauta arvoa.
NotesOletusarvoinen täyttöväri projektin alussa on
black.Täyttöväriä käytetään muotojen sisäosissa (kuten esimerkiksi
drawCircletaidrawRectangle).Täyttöväriä käytetään tulostetun tekstin taustavärinä (kuten esimerkiksi
printjaprintAt).Jos käytetään arvoa
transparenttulostetun tekstin kanssa, tausta onblack.
Sävyparametrin
hueperustuu pyöreään väriympyrään, kuten alla on esitetty, jossa arvot edustavat asteita ympyrän ympärillä (esimerkiksi punainen lähellä 0°, vihreä lähellä 120° ja sininen lähellä 240°).

// Draw a rectangle filled with purple
Brain.Screen.setFillColor(purple);
Brain.Screen.drawRectangle(50, 100, 130, 60);

setOrigin#
Asettaa piirtämisessä ja koordinaatistoon perustuvassa tulostuksessa käytettävän origon Brain-näytössä.
Available Functionsvoid setOrigin(
int32_t x,
int32_t y );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Origon x-sijainti suhteessa Brain-näytön vasempaan yläkulmaan välillä 0–479. |
|
|
Origon y-akselin sijainti suhteessa Brain-näytön vasempaan yläkulmaan välillä 0–239. |
Tämä funktio ei palauta arvoa.
NotesOletusarvoinen lähtöpiste on näytön vasen yläkulma koordinaateissa (0, 0).
Origo pätee koordinaattifunktioihin, kuten
drawLine,drawRectangle,drawCirclejaprintAt.Alkuperä pysyy voimassa, kunnes sitä muutetaan uudelleen tai projekti nollataan.
setClipRegion#
Määrittää näytölle suorakaiteen muotoisen alueen, johon kaikki piirrokset ja teksti rajataan. Tämän alueen ulkopuolella olevaa sisältöä ei näytetä.
Available Functionsvoid setClipRegion(
int x,
int y,
int width,
int height );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Leikkausalueen vasemman yläkulman x-koordinaatti kokonaislukuna väliltä 0–479. |
|
|
Leikkausalueen vasemman yläkulman y-koordinaatti kokonaislukuna väliltä 0–239. |
|
|
Leikkausalueen leveys pikseleinä, kokonaislukuna 0–479. |
|
|
Leikkausalueen korkeus pikseleinä, kokonaislukuna 0–239. |
Tämä funktio ei palauta arvoa.
NotesPiirtofunktioita suoritetaan edelleen, vaikka ne osuisivatkin leikealueen ulkopuolelle, mutta vain alueen sisällä oleva osa on näkyvissä.
Koordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, jota voidaan muuttaa käyttämälläsetOrigin.Leikkausalue koskee vain nykyistä säikettä.
Uuden leikealueen asettaminen korvaa kaikki aiemmin asetetut leikealueet nykyiselle säikeelle.
// 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#
Piirtää yhden pikselin V5 Brain -näyttöön valittuun x- ja y-pikselisijaintiin.
Available Functionsvoid drawPixel(
int x,
int y );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Pikselin piirrettävä x-koordinaatti kokonaislukuna 0–479. |
|
|
Y-koordinaatti, johon pikseli piirretään, kokonaislukuna 0–239. |
Tämä funktio ei palauta arvoa.
NotesPikselit piirretään käyttämällä nykyistä kynän väriä, joka on asetettu
setPenColor-asetuksella.Koordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, joka voidaan asettaa käyttämälläsetOrigin.Jos määritetty pikselin sijainti on näytön rajojen ulkopuolella, pikseliä ei piirretä.
// Draw the pixels marking the corners of a square
Brain.Screen.drawPixel(250, 100);
Brain.Screen.drawPixel(275, 100);
Brain.Screen.drawPixel(250, 125);
Brain.Screen.drawPixel(275, 125);
![]()
drawLine#
Piirtää suoran viivan, joka yhdistää kaksi pistettä V5 Brain -näytössä.
Available Functionsvoid drawLine(
int x1,
int y1,
int x2,
int y2 );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Suoran aloitus-x-koordinaatti kokonaislukuna 0–479. |
|
|
Suoran aloitus-y-koordinaatti kokonaislukuna väliltä 0–239. |
|
|
Suoran päättymispisteen x-koordinaatti kokonaislukuna väliltä 0–479. |
|
|
Suoran päätepisteen y-koordinaatti kokonaislukuna väliltä 0–239. |
Tämä funktio ei palauta arvoa.
NotesViivat piirretään käyttämällä nykyistä kynän väriä, joka on asetettu
setPenColor-asetuksella.Viivan leveys määräytyy kynän nykyisen leveyden mukaan, joka on asetettu
setPenWidth-metodilla.Koordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, joka voidaan asettaa käyttämälläsetOrigin.Jos jokin osa viivasta on näytön rajojen ulkopuolella, vain näkyvä osa piirretään.
// Draw a line from the top left to bottom right of the screen
Brain.Screen.drawLine(0, 0, 479, 239);

drawRectangle#
Piirtää suorakulmion V5 Brain -näyttöön määritettyyn paikkaan ja kokoon.
Available Functions1 — Piirtää ja täyttää suorakulmion käyttämällä nykyistä määritettyä täyttöväriä.
void drawRectangle( int x, int y, int width, int height );
2 — Piirtää ja täyttää suorakulmion käyttämällä ennalta määritettyä tai mukautettua väriä objektia.
void drawRectangle( int x, int y, int width, int height, const color& color );
3 — Piirtää ja täyttää suorakulmion käyttämällä heksadesimaaliväriarvoa.
void drawRectangle( int x, int y, int width, int height, const char* color );
Parameters4 — Piirtää ja täyttää suorakulmion käyttäen sävyarvoa.
void drawRectangle( int x, int y, int width, int height, int hue );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Suorakulmion vasemman yläkulman x-koordinaatti kokonaislukuna väliltä 0–479. |
|
|
Suorakulmion vasemman yläkulman y-koordinaatti kokonaislukuna väliltä 0–239. |
|
|
Suorakulmion leveys kokonaislukuna väliltä 0–479. |
|
|
Suorakulmion korkeus kokonaislukuna väliltä 0–239. |
|
|
Fills the rectangle using a
|
|
|
Täyttää suorakulmion heksadesimaaliväriarvolla (esimerkiksi |
|
|
Täyttää suorakulmion sävyarvolla väliltä |
Tämä funktio ei palauta arvoa.
NotesSuorakulmion ääriviiva piirretään käyttämällä nykyistä kynän väriä, joka on asetettu
setPenColor-asetuksella.Ääriviivan paksuus määräytyy kynän nykyisen leveyden mukaan, joka on asetettu
setPenWidth-metodilla.Kun
color-parametria ei anneta, suorakulmion sisäosa täytetään nykyisellä täyttövärillä, joka on asetettusetFillColor-metodilla.Koordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, jota voidaan muuttaa käyttämälläsetOrigin.Jos jokin osa suorakulmiosta on näytön rajojen ulkopuolella, vain näkyvä osa piirretään.
Sävyparametrin
hueperustuu pyöreään väriympyrään, kuten alla on esitetty, jossa arvot edustavat asteita ympyrän ympärillä (esimerkiksi punainen lähellä 0°, vihreä lähellä 120° ja sininen lähellä 240°).

// Draw a rectangle on the screen
Brain.Screen.drawRectangle(50, 50, 130, 60);

drawCircle#
Piirtää ympyrän V5 Brain -näyttöön määritettyyn kohtaan ja säteeseen.
Available Functions1 — Piirtää ja täyttää ympyrän käyttämällä nykyistä määritettyä täyttöväriä.
void drawCircle( int x, int y, int radius );
2 — Piirtää ja täyttää ympyrän käyttämällä ennalta määritettyä tai mukautettua väriä objektia.
void drawCircle( int x, int y, int radius, const color& color );
3 — Piirtää ja täyttää ympyrän käyttämällä heksadesimaaliväriarvoa.
void drawCircle( int x, int y, int radius, const char* color );
Parameters4 — Piirtää ja täyttää ympyrän käyttäen sävyarvoa.
void drawCircle( int x, int y, int radius, int hue );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Ympyrän keskipisteen x-koordinaatti kokonaislukuna väliltä 0–479. |
|
|
Ympyrän keskipisteen y-koordinaatti kokonaislukuna väliltä 0–239. |
|
|
Ympyrän säde, joka annetaan kokonaislukuna väliltä 0 - 239 pikseliä. |
|
|
Täyttää ympyrän käyttämällä
|
|
|
Täyttää ympyrän heksadesimaaliväriarvolla (esimerkiksi |
|
|
Täyttää ympyrän käyttämällä sävyarvoa väliltä |
Tämä funktio ei palauta arvoa.
NotesYmpyrän ääriviiva piirretään käyttämällä nykyistä kynän väriä, joka on asetettu
setPenColor-asetuksella.Ääriviivan paksuus määräytyy kynän nykyisen leveyden mukaan, joka on asetettu
setPenWidth-metodilla.Kun
color-parametria ei anneta, ympyrän sisäosa täytetään käyttämällä nykyistä täyttöväriä, joka on asetettusetFillColor-mekaniikalla.Koordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, jota voidaan muuttaa käyttämälläsetOrigin.Sävyparametrin
hueperustuu pyöreään väriympyrään, kuten alla on esitetty, jossa arvot edustavat asteita ympyrän ympärillä (esimerkiksi punainen lähellä 0°, vihreä lähellä 120° ja sininen lähellä 240°).

// Draw a circle on the screen
Brain.Screen.drawCircle(240, 120, 40);

drawImageFromFile#
Piirtää kuvan V5 Brain -näyttöön käyttämällä SD-kortille tallennettua kuvatiedostoa.
Available Functionsbool drawImageFromFile(
const char* name,
int x,
int y );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
SD-kortilla olevan kuvan tiedostonimi. Tiedoston tiedostopäätteen on oltava |
|
|
X-koordinaatti pikseleinä 0–479, johon kuvan vasen reuna piirretään. |
|
|
Y-koordinaatti pikseleinä 0–239, johon kuvan yläreuna piirretään. |
Palauttaa totuusarvon, joka ilmaisee, onnistuiko kuvan piirtäminen:
true— Kuva ladattiin ja piirrettiin näytölle onnistuneesti.false— Kuvaa ei voitu piirtää (esimerkiksi jos tiedostoa ei ole tai se on virheellinen).
Tuetut kuvamuodot ovat
.bmpja.png.Kuvatiedoston koko ei saa ylittää
512 KBTiedostokoon minimoimiseksi suositellaan 8-bittistä RLE-koodausta.
Suurimmat tuetut kuvamitat ovat Brain-näytön koko (noin 479 x 239 pikseliä).
Koordinaatit
xjayovat suhteessa nykyiseen näytön nollapisteeseen, jota voidaan muuttaa käyttämälläsetOrigin.
// Draw a bmp file on the Brain's screen at coordinate 0, 0
Brain.Screen.drawImageFromFile("test_image.bmp", 0, 0);
render#
Mahdollistaa Brainin näytön kaksoispuskuroinnin. Kun funktio on kutsuttu, piirtofunktiot (kuten teksti, muodot tai kuvat) eivät enää näy välittömästi projektin loppuosassa. Sen sijaan päivitykset näkyvät vasta, kun render -käytetään uudelleen. Tämä mahdollistaa sujuvammat ja hallitummat näytön päivitykset, mutta tarkoittaa, että mikään ei ole näkyvissä ennen kuin render -käytetään.
1 — Ottaa käyttöön kaksoispuskuroinnin tai renderöi takapuskurin näytölle.
bool render();
Parameters2 — Renderöi takapuskurin näytölle ja hallitsee pystysuuntaisen synkronoinnin toimintaa ja valinnaista ajastimen suoritusta.
bool render( bool bVsyncWait, bool bRunScheduler = true );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
|
|
|
Valinnainen.
|
Palauttaa totuusarvon, joka ilmaisee, renderöitiinkö puskuriin tallennetut piirrokset näytölle onnistuneesti:
true— Piirrokset renderöitiin näytölle onnistuneesti.false— Piirroksia ei voitu renderöidä näytölle.
Notes
Funktion
renderkutsuminen edellyttää, että projektin loppuosassa käytetään funktiotarender.
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();
pressing#
Ilmoittaa, painetaanko V5 Brain -näyttöä parhaillaan.
Available Functionsbool pressing();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa totuusarvon, joka ilmaisee näytön nykyisen painetun tilan:true — Näyttöä painetaan parhaillaan. tai false — Näyttöä ei paineta.
// Change the screen's color after it's pressed
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.setFillColor(green);
Brain.Screen.drawRectangle(0, 0, 479, 239);
// Display different messages after the screen is pressed
while (!Brain.Screen.pressing()) {
wait(5, msec);
}
Brain.Screen.print("First message!");
Brain.Screen.newLine();
// Lift finger to press the screen again
while (Brain.Screen.pressing()) {
wait(5, msec);
}
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.print("Second message!");
Brain.Screen.newLine();
xPosition#
Palauttaa viimeisen painalluksen x-koordinaatin V5 Brain -näytössä.
Available Functionsint32_t xPosition();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa arvon int32_t joka edustaa viimeisimmän näytön painalluksen x-koordinaattia pikseleinä välillä 0 - 479.
// Display a circle where the screen is pressed
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.drawCircle(Brain.Screen.xPosition(), Brain.Screen.yPosition(), 20, white);
yPosition#
Palauttaa viimeisen painalluksen y-koordinaatin V5 Brain -näytössä.
Available Functionsint32_t yPosition();
Tämä funktio ei hyväksy parametreja.
Return ValuesPalauttaa arvon int32_t joka edustaa viimeisimmän näytön painalluksen y-koordinaattia pikseleinä välillä 0 - 239.
// Display a circle where the screen is pressed
while (Brain.Screen.pressing() == false) {
wait(5, msec);
}
Brain.Screen.drawCircle(Brain.Screen.xPosition(), Brain.Screen.yPosition(), 20, white);
pressed#
Rekisteröi funktion, joka kutsutaan, kun V5 Brain -näyttöä painetaan.
Available Functions1 — Kutsuu funktiota, kun näyttöä painetaan.
void pressed( void (*callback)(void) );
Parameters2 — Kutsuu funktiota, kun näyttöä painetaan, ja välittää käyttäjän määrittämän argumentin takaisinkutsufunktiolle.
void pressed( void (*callback)(void*), void* arg );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Funktio, jota kutsutaan, kun näyttöä painetaan. |
|
|
Funktio, jota kutsutaan, kun näyttöä painetaan, ja joka vastaanottaa käyttäjän määrittämän argumentin. |
|
|
Käyttäjän määrittämä arvo, joka välitetään takaisinkutsufunktiolle, kun näyttöä painetaan. |
Tämä funktio ei palauta arvoa.
NotesTakaisinkutsutoiminto suoritetaan joka kerta, kun Brain-näyttöä painetaan.
Kerrallaan voidaan rekisteröidä vain yksi takaisinkutsufunktio; numeron
pressedpainaminen uudelleen korvaa edellisen takaisinkutsufunktion.Takaisinkutsufunktion on palautettava
void.
Määrittele takaisinkutsufunktio (
int main())// Tracks how many times the screen is pressed. void onScreenPressed(void* arg) { int* count = (int*)arg; (*count)++; Brain.Screen.clearScreen(); Brain.Screen.setCursor(1, 1); Brain.Screen.print("Pressed %d times", *count); }Rekisteröi takaisinkutsu
int main()int main() { int pressCount = 0; // Register the callback and pass a value to update. Brain.Screen.pressed(onScreenPressed, &pressCount); while (true) { wait(20, msec); } }
released#
Rekisteröi funktion, joka kutsutaan, kun V5 Brain -näyttö vapautetaan painalluksen jälkeen.
Available Functions1 — Kutsuu funktiota, kun näyttö vapautetaan painamisen jälkeen.
void released( void (*callback)(void) );
Parameters2 — Kutsuu funktiota, kun näyttö vapautetaan painalluksen jälkeen, ja välittää käyttäjän määrittämän argumentin takaisinkutsufunktiolle.
void released( void (*callback)(void*), void* arg );
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Funktio, jota kutsutaan, kun näyttö vapautetaan painamisen jälkeen. |
|
|
Funktio, jota kutsutaan, kun näyttö vapautetaan painamisen jälkeen ja joka vastaanottaa käyttäjän määrittämän argumentin. |
|
|
Käyttäjän määrittämä arvo, joka välitetään callback-funktiolle, kun näyttö vapautetaan painamisen jälkeen. |
Tämä funktio ei palauta arvoa.
NotesTakaisinkutsutoiminto suoritetaan joka kerta, kun Brain-näyttö vapautetaan painalluksen jälkeen.
Kerrallaan voidaan rekisteröidä vain yksi takaisinkutsufunktio; funktion
releaseduudelleen kutsuminen korvaa edellisen takaisinkutsufunktion.Takaisinkutsufunktion on palautettava
void.
Määrittele takaisinkutsufunktio (
int main())// Tracks how many times the screen is released. void onScreenReleased(void* arg) { int* count = (int*)arg; (*count)++; Brain.Screen.clearScreen(); Brain.Screen.setCursor(1, 1); Brain.Screen.print("Released %d times", *count); }Rekisteröi takaisinkutsu
int main()int main() { int releaseCount = 0; // Register the callback and pass a value to update. Brain.Screen.released(onScreenReleased, &releaseCount); while (true) { wait(20, msec); } }










