Οθόνη#
Εισαγωγή#
Η κλάση screen προέρχεται από την βασική κλάση brain. Ελέγχει τον τρόπο με τον οποίο το EXP Brain εμφανίζει κείμενο, αριθμούς και γραφικά στην οθόνη του.
Η οθόνη του EXP Brain έχει έναν καθορισμένο αριθμό γραμμών και στηλών που μπορούν να χρησιμοποιηθούν κατά την εκτύπωση κειμένου στην οθόνη της.
Από προεπιλογή, η γραμματοσειρά για εκτύπωση στο Brain είναι mono20 , η οποία έχει 7 γραμμές και 20 στήλες.
Για το σχέδιο, η ανάλυση του Brain είναι 159 x 107 pixel.

Πρόσβαση#
Η πρόσβαση στην κλάση screen είναι δυνατή μέσω:
Brain.Screen
Σημειώσεις#
Το αντικείμενο
screenπαρέχεται από τον Εγκέφαλο. Δεν κατασκευάζεται απευθείας.Τα έργα χρησιμοποιούν ένα μόνο καθολικό αντικείμενο
Brain, επομένως οι συναρτήσεις οθόνης καλούνται χρησιμοποιώντας τοBrain.Screen.
Παράδειγμα#
/* 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!");
Συναρτήσεις Μελών#
Η κλάση screen περιλαμβάνει τις ακόλουθες συναρτήσεις-μέλη:
print— Εκτυπώνει μορφοποιημένο κείμενο, αριθμούς ή λογικές τιμές στην οθόνη Brain.setCursor— Μετακινεί τον κέρσορα κειμένου σε μια καθορισμένη γραμμή και στήλη.newLine— Διαγράφει το υπόλοιπο της τρέχουσας γραμμής και μετακινεί τον κέρσορα στην επόμενη γραμμή.clearLine— Διαγράφει το υπόλοιπο της τρέχουσας γραμμής ή διαγράφει μια συγκεκριμένη γραμμή.row— Επιστρέφει τη γραμμή όπου θα εκτυπωθεί το κείμενο.column— Επιστρέφει τη στήλη όπου θα εκτυπωθεί το κείμενο.getStringHeight— Επιστρέφει το ύψος μιας συμβολοσειράς σε pixel χρησιμοποιώντας την τρέχουσα γραμματοσειρά.getStringWidth— Επιστρέφει το πλάτος μιας συμβολοσειράς σε pixel χρησιμοποιώντας την τρέχουσα γραμματοσειρά.printAt— Εκτυπώνει μορφοποιημένο κείμενο σε μια θέση εικονοστοιχείου x, y (προαιρετικά αδιαφανές).clearScreen— Καθαρίζει ολόκληρη την οθόνη (προαιρετικά σε ένα καθορισμένο χρώμα).setFont— Ορίζει τη γραμματοσειρά που χρησιμοποιείται για την εκτύπωση στην οθόνη.setPenWidth— Ορίζει το πάχος των γραμμών που έχουν σχεδιαστεί και των περιγραμμάτων των σχημάτων.setPenColor— Ορίζει το χρώμα κειμένου, pixel, γραμμών και περιγραμμάτων σχήματος.setFillColor— Ορίζει το χρώμα γεμίσματος για τα σχεδιασμένα σχήματα και τα φόντα εκτυπωμένου κειμένου.setOrigin— Ορίζει την αρχή που χρησιμοποιείται για τις συντεταγμένες της οθόνης.setClipRegion— Περιορίζει την έξοδο της οθόνης σε μια ορθογώνια περιοχή.drawPixel— Σχεδιάζει ένα pixel σε μια συντεταγμένη.drawLine— Σχεδιάζει μια γραμμή μεταξύ δύο σημείων.drawRectangle— Σχεδιάζει ένα ορθογώνιο σε μια θέση x, y με ένα καθορισμένο μέγεθος.drawCircle— Σχεδιάζει έναν κύκλο σε μια θέση x, y με καθορισμένη ακτίνα.drawImageFromFile— Σχεδιάζει μια εικόνα από ένα αρχείο κάρτας SD στην οθόνη.render— Ενεργοποιεί τη διπλή προσωρινή αποθήκευση ή αποδίδει την προσωρινή αποθήκευση στην οθόνη.
Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους screen , πρέπει να δημιουργηθεί μια παρουσία brain , όπως φαίνεται παρακάτω:
// Create the EXP Brain
brain Brain = brain();
print#
Εμφανίζει κείμενο, αριθμούς ή λογικές τιμές στην οθόνη EXP Brain.
Available Functions1 — Εκτυπώνει μορφοποιημένο κείμενο χρησιμοποιώντας κυριολεκτικές συμβολοσειρές ή συμβολοσειρές τύπου C μόνο για ανάγνωση.
void print( const char* format, ... );
Parameters2 — Εκτυπώνει μορφοποιημένο κείμενο χρησιμοποιώντας τροποποιήσιμους πίνακες χαρακτήρων.
void print( char* format, ... );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια συμβολοσειρά μορφοποίησης που παρέχεται ως κυριολεκτική συμβολοσειρά ή συμβολοσειρά τύπου C μόνο για ανάγνωση (για παράδειγμα, |
|
|
Μια συμβολοσειρά μορφοποίησης που παρέχεται ως τροποποιήσιμος πίνακας χαρακτήρων. |
|
Μία ή περισσότερες πρόσθετες τιμές που εισάγονται στη συμβολοσειρά μορφοποίησης, διαχωρισμένες με κόμματα. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesOutput begins at the current cursor position on the screen.
Το τυπωμένο κείμενο χρησιμοποιεί την τρέχουσα γραμματοσειρά οθόνης .
Το κείμενο που εκτυπώνεται με
printεκτυπώνεται πάντα με φόντο και το χρώμα φόντου καθορίζεται από το τρέχον χρώμα γεμίσματος .Όταν χρησιμοποιείτε μια συμβολοσειρά μορφοποίησης, ο αριθμός και οι τύποι των τιμών που διαβιβάζονται πρέπει να ταιριάζουν με τους προσδιοριστές μορφής στη συμβολοσειρά.
// Display a message at the starting cursor
Brain.Screen.print("Hello, Robot!");

setCursor#
Μετακινεί τον κέρσορα σε μια συγκεκριμένη γραμμή και στήλη στην οθόνη EXP Brain. Η επόμενη κλήση print θα ξεκινήσει την εκτύπωση σε αυτήν την τοποθεσία.
void setCursor(
int32_t row,
int32_t col );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η γραμμή στην οποία θα μετακινηθεί ο κέρσορας. |
|
|
Η στήλη στην οποία θα μετακινηθεί ο κέρσορας. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΕπηρεάζει την έναρξη της επακόλουθης εξόδου κειμένου όταν χρησιμοποιείται
print.Οι γραμμές και οι στήλες βασίζονται στην τρέχουσα γραμματοσειρά οθόνης.
Η προεπιλεγμένη γραμματοσειρά (
mono20) χρησιμοποιεί 12 γραμμές και 48 στήλες.Η κλήση του
setCursorεπηρεάζει μόνο τη θέση του επόμενου κειμένου που εμφανίζεται.
// Display text starting at Row 3 Column 10
Brain.Screen.setCursor(3, 10);
Brain.Screen.print("R3, C10");

newLine#
Μετακινεί τον κέρσορα στην αρχή της επόμενης γραμμής στην οθόνη Brain.
Available Functionsvoid newLine();
Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.
Return ValuesΑυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΕάν ο δρομέας βρίσκεται στη μέση μιας πρότασης, η εντολή
newLineθα διαγράψει την υπόλοιπη γραμμή μετά τον δρομέα πριν μετακινηθεί στην επόμενη γραμμή.Μετά την κλήση της εντολής
newLine, ο κέρσορας τοποθετείται στην πρώτη στήλη της επόμενης γραμμής.Η θέση του δρομέα και η αρίθμηση γραμμών ορίζονται χρησιμοποιώντας
setCursor.
// Display two lines of text
Brain.Screen.print("Line 1");
Brain.Screen.newLine();
Brain.Screen.print("Line 2");

clearLine#
Διαγράφει κείμενο από μια σειρά στην οθόνη EXP Brain.
Available Functions1 — Διαγράφει το υπόλοιπο της τρέχουσας γραμμής από τη θέση του κέρσορα.
void clearLine();
2 — Διαγράφει την καθορισμένη γραμμή χρησιμοποιώντας το τρέχον διαμορφωμένο χρώμα γεμίσματος.
void clearLine( int number );
3 — Διαγράφει την καθορισμένη γραμμή χρησιμοποιώντας ένα προκαθορισμένο ή προσαρμοσμένο χρώμα αντικείμενο.
void clearLine( int number, const color& color );
4 — Διαγράφει την καθορισμένη γραμμή χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος.
void clearLine( int number, const char* color );
Parameters5 — Διαγράφει την καθορισμένη γραμμή χρησιμοποιώντας μια τιμή απόχρωσης.
void clearLine( int number, int hue );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ο αριθμός γραμμής που θα διαγραφεί. Η αρίθμηση γραμμών ξεκινά από |
|
|
Clears the row using a
|
|
|
Καθαρίζει τη γραμμή χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος (για παράδειγμα, |
|
|
Καθαρίζει τη γραμμή χρησιμοποιώντας μια ακέραια τιμή απόχρωσης στην περιοχή |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΗ διαγραφή μιας γραμμής δεν αλλάζει την τρέχουσα θέση του κέρσορα.
Η θέση του δρομέα και η αρίθμηση γραμμών ορίζονται χρησιμοποιώντας
setCursor.Η τιμή της παραμέτρου
hueβασίζεται σε έναν κυκλικό χρωματικό τροχό, όπως φαίνεται παρακάτω, όπου οι τιμές αντιπροσωπεύουν μοίρες γύρω από τον τροχό (για παράδειγμα, κόκκινο κοντά στις 0°, πράσινο κοντά στις 120° και μπλε κοντά στις 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#
Επιστρέφει τη γραμμή όπου θα εκτυπωθεί το κείμενο στην οθόνη EXP Brain.
Available Functionsint32_t row();
Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.
Return ValuesΕπιστρέφει μια τιμή int32_t που αντιπροσωπεύει τη γραμμή όπου θα εκτυπωθεί το κείμενο.
Η αρίθμηση γραμμών ξεκινά από το 1.
NotesΗ θέση του κέρσορα βασίζεται στην τρέχουσα γραμματοσειρά οθόνης .
Η επιστρεφόμενη τιμή υποδεικνύει πού θα εμφανιστεί η επόμενη εκτυπωμένη έξοδος.
Η τιμή της γραμμής αλλάζει όταν εκτυπώνεται κείμενο ή όταν καλείται η συνάρτηση
setCursor.
// Display the cursor's current row
Brain.Screen.setCursor(3, 10);
Brain.Screen.print(Brain.Screen.row());

column#
Επιστρέφει τη στήλη όπου θα εκτυπωθεί το κείμενο στην οθόνη EXP Brain.
Available Functionsint32_t column();
Αυτή η συνάρτηση δεν δέχεται καμία παράμετρο.
Return ValuesΕπιστρέφει μια τιμή int32_t που αντιπροσωπεύει τη στήλη όπου θα εκτυπωθεί το κείμενο.
Η αρίθμηση στηλών ξεκινά από το 1.
NotesΗ θέση του κέρσορα βασίζεται στην τρέχουσα γραμματοσειρά οθόνης .
Η επιστρεφόμενη τιμή υποδεικνύει πού θα εμφανιστεί η επόμενη εκτυπωμένη έξοδος.
Η τιμή της στήλης αλλάζει όταν εκτυπώνεται κείμενο ή όταν καλείται η συνάρτηση
setCursor.
// Display the cursor's current column
Brain.Screen.setCursor(3, 10);
Brain.Screen.print(Brain.Screen.column());

getStringHeight#
Επιστρέφει το ύψος, σε pixel, μιας συμβολοσειράς όταν αποδίδεται στην οθόνη EXP Brain.
Available Functionsint32_t getStringHeight(
const char* cstr );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Το κείμενο που θα μετρηθεί, παρέχεται ως συμβολοσειρά τύπου C (για παράδειγμα, |
Επιστρέφει μια τιμή int32_t που αντιπροσωπεύει το ύψος της συμβολοσειράς σε pixel όταν αποδίδεται στην οθόνη Brain.
getStringWidth#
Επιστρέφει το πλάτος, σε pixel, μιας συμβολοσειράς όταν αποδίδεται στην οθόνη EXP Brain.
Available Functionsint32_t getStringWidth(
const char* cstr );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Το κείμενο που θα μετρηθεί, παρέχεται ως συμβολοσειρά τύπου C (για παράδειγμα, |
Επιστρέφει μια τιμή int32_t που αντιπροσωπεύει το πλάτος της συμβολοσειράς σε pixel όταν αποδίδεται στην οθόνη Brain.
The returned width depends on the currently selected screen font.
Αυτή η συνάρτηση μετρά τη συμβολοσειρά χωρίς να την απεικονίζει στην οθόνη.
Το επιστρεφόμενο πλάτος αντικατοπτρίζει τον τρόπο με τον οποίο θα εμφανιζόταν η συμβολοσειρά κατά την εκτύπωση.
printAt#
Εκτυπώνει κείμενο, αριθμούς ή λογικές τιμές σε μια συγκεκριμένη συντεταγμένη στην οθόνη EXP Brain.
Available Functions1 — Εκτυπώνει τη μορφοποιημένη έξοδο στην καθορισμένη θέση pixel.
void printAt( int32_t x, int32_t y, const char* format, ... );
Parameters2 — Εκτυπώνει τη μορφοποιημένη έξοδο στην καθορισμένη θέση pixel και ορίζει εάν το φόντο κειμένου είναι αδιαφανές ή διαφανές.
void printAt( int32_t x, int32_t y, bool bOpaque, const char* format, ... );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η θέση x για εκτύπωση, με αναφορά στην αρχή της οθόνης. |
|
|
Η θέση y για εκτύπωση, με αναφορά στην αρχή της οθόνης. |
|
|
Ελέγχει εάν το εκτυπωμένο κείμενο σχεδιάζεται αδιαφανώς ή διαφανώς:
|
|
|
Μια συμβολοσειρά μορφοποίησης που ελέγχει τι εκτυπώνεται στην οθόνη (για παράδειγμα, |
|
Μία ή περισσότερες πρόσθετες τιμές που εισάγονται στη συμβολοσειρά μορφοποίησης, διαχωρισμένες με κόμματα. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesThe
xandycoordinates are relative to the current screen origin, which can be changed usingsetOrigin.Το τυπωμένο κείμενο χρησιμοποιεί την τρέχουσα γραμματοσειρά οθόνης .
Όταν χρησιμοποιείτε μια συμβολοσειρά μορφοποίησης, ο αριθμός και οι τύποι των τιμών που διαβιβάζονται πρέπει να ταιριάζουν με τους προσδιοριστές μορφής στη συμβολοσειρά.
// Print the number 1 at pixel (100, 40)
Brain.Screen.printAt(100, 40, "1");
clearScreen#
Διαγράφει όλα τα σχέδια και το κείμενο από την οθόνη του Εγκεφάλου.
Available Functions1 — Μαυρίζει την οθόνη.
void clearScreen();
2 — Καθαρίζει την οθόνη χρησιμοποιώντας ένα προκαθορισμένο ή προσαρμοσμένο χρώμα αντικείμενο.
void clearScreen( const color& color );
3 — Καθαρίζει την οθόνη χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος.
void clearScreen( const char* color );
Parameters4 — Καθαρίζει την οθόνη χρησιμοποιώντας μια τιμή απόχρωσης.
void clearScreen( int hue );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Clears the screen using a
|
|
|
Καθαρίζει την οθόνη χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος που αναπαρίσταται ως συμβολοσειρά (για παράδειγμα, |
|
|
Καθαρίζει την οθόνη χρησιμοποιώντας μια ακέραια τιμή απόχρωσης στην περιοχή |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΗ τιμή της παραμέτρου
hueβασίζεται σε έναν κυκλικό χρωματικό τροχό, όπως φαίνεται παρακάτω, όπου οι τιμές αντιπροσωπεύουν μοίρες γύρω από τον τροχό (για παράδειγμα, κόκκινο κοντά στις 0°, πράσινο κοντά στις 120° και μπλε κοντά στις 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#
Ορίζει τη γραμματοσειρά που χρησιμοποιείται για το κείμενο που εμφανίζεται στην οθόνη EXP Brain.
Αυτό ελέγχει τη γραμματοσειρά που εφαρμόζεται στην επακόλουθη έξοδο κειμένου όταν χρησιμοποιούνται συναρτήσεις κειμένου οθόνης όπως print.
void setFont(
fontType font );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ορίζει τη γραμματοσειρά σε μία από τις ακόλουθες ρυθμίσεις:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
Examples// Print larger text
Brain.Screen.setFont(mono40);
Brain.Screen.print("VEX");

setPenWidth#
Ορίζει το πάχος των γραμμών που σχεδιάζονται και των περιγραμμάτων σχήματος.
Available Functionsvoid setPenWidth(
uint32_t width );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Το πλάτος της πένας σε pixel ως εύρος από 0 έως 32. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΤο πλάτος της πένας εφαρμόζεται σε συναρτήσεις σχεδίασης όπως
drawLine,drawRectangleκαιdrawCircle.
// Draw a rectangle with a pen width of 10
Brain.Screen.setPenWidth(10);
Brain.Screen.drawRectangle(20, 20, 75, 50);

setPenColor#
Ορίζει το χρώμα της πένας που χρησιμοποιείται για τη σχεδίαση γραμμών, σχημάτων και κειμένου.
Available Functions1 — Ορίζει το χρώμα της πένας χρησιμοποιώντας ένα προκαθορισμένο ή προσαρμοσμένο χρώμα αντικείμενο.
void setPenColor( const color& color );
2 — Ορίζει το χρώμα της πένας χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος.
void setPenColor( const char* color );
Parameters3 — Ορίζει το χρώμα της πένας χρησιμοποιώντας μια τιμή απόχρωσης.
void setPenColor( int hue );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ορίζει το χρώμα της πένας χρησιμοποιώντας ένα αντικείμενο
|
|
|
Ορίζει το χρώμα της πένας χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος που αναπαρίσταται ως συμβολοσειρά (για παράδειγμα, |
|
|
Ορίζει το χρώμα της πένας χρησιμοποιώντας μια ακέραια τιμή απόχρωσης στην περιοχή |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΤο προεπιλεγμένο χρώμα πένας στην αρχή ενός έργου είναι
white.Το χρώμα της πένας χρησιμοποιείται για περιγράμματα σχημάτων (όπως με
drawCircleήdrawRectangle), κείμενο και αριθμητική έξοδο (μεprintκαιprintAt), και μεμονωμένα pixel που σχεδιάζονται μεdrawPixel.Η τιμή της παραμέτρου
hueβασίζεται σε έναν κυκλικό χρωματικό τροχό, όπως φαίνεται παρακάτω, όπου οι τιμές αντιπροσωπεύουν μοίρες γύρω από τον τροχό (για παράδειγμα, κόκκινο κοντά στις 0°, πράσινο κοντά στις 120° και μπλε κοντά στις 240°).

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

setFillColor#
Ορίζει το χρώμα γεμίσματος που χρησιμοποιείται κατά τη σχεδίαση σχημάτων.
Available Functions1 — Ορίζει το χρώμα γεμίσματος χρησιμοποιώντας ένα προκαθορισμένο ή προσαρμοσμένο χρώμα αντικείμενο.
void setFillColor( const color& color );
2 — Ορίζει το χρώμα γεμίσματος χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος.
void setFillColor( const char* color );
Parameters3 — Ορίζει το χρώμα γεμίσματος χρησιμοποιώντας μια τιμή απόχρωσης.
void setFillColor( int hue );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ορίζει το χρώμα γεμίσματος χρησιμοποιώντας ένα αντικείμενο
|
|
|
Ορίζει το χρώμα γεμίσματος χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος που αναπαρίσταται ως συμβολοσειρά (για παράδειγμα, |
|
|
Ορίζει το χρώμα γεμίσματος χρησιμοποιώντας μια ακέραια τιμή απόχρωσης στην περιοχή |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΤο προεπιλεγμένο χρώμα γεμίσματος στην αρχή ενός έργου είναι
black.Το χρώμα γεμίσματος χρησιμοποιείται για το εσωτερικό των σχημάτων (όπως με
drawCircleήdrawRectangle).Το χρώμα γεμίσματος χρησιμοποιείται ως χρώμα φόντου για εκτυπωμένο κείμενο (όπως με τις συναρτήσεις
printκαιprintAt).Εάν χρησιμοποιηθεί
transparentμε τυπωμένο κείμενο, το φόντο θα είναιblack.
Η τιμή της παραμέτρου
hueβασίζεται σε έναν κυκλικό χρωματικό τροχό, όπως φαίνεται παρακάτω, όπου οι τιμές αντιπροσωπεύουν μοίρες γύρω από τον τροχό (για παράδειγμα, κόκκινο κοντά στις 0°, πράσινο κοντά στις 120° και μπλε κοντά στις 240°).

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

setOrigin#
Ορίζει την προέλευση που χρησιμοποιείται για τη σχεδίαση γραφικών στην οθόνη του εγκεφάλου.
Available Functionsvoid setOrigin(
int32_t x,
int32_t y );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η θέση x της αρχής των αξόνων σε σχέση με την επάνω αριστερή γωνία της οθόνης του εγκεφάλου από 0 έως 159. |
|
|
Η θέση y της αρχής των αξόνων σε σχέση με την επάνω αριστερή γωνία της οθόνης του εγκεφάλου από 0 έως 107. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΗ προεπιλεγμένη αρχή είναι η επάνω αριστερή γωνία της οθόνης στη συντεταγμένη (0, 0).
Η αρχή των αξόνων ισχύει για συναρτήσεις συντεταγμένων όπως
drawLine,drawRectangle,drawCircleκαιprintAt.Η προέλευση παραμένει σε ισχύ μέχρι να αλλάξει ξανά ή να γίνει επαναφορά του έργου.
setClipRegion#
Ορίζει μια ορθογώνια περιοχή στην οθόνη όπου θα περιορίζονται όλα τα σχέδια και το κείμενο. Δεν θα εμφανίζεται κανένα περιεχόμενο εκτός αυτής της περιοχής.
Available Functionsvoid setClipRegion(
int x,
int y,
int width,
int height );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η συντεταγμένη x της επάνω αριστερής γωνίας της περιοχής αποκοπής, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Η συντεταγμένη y της επάνω αριστερής γωνίας της περιοχής αποκοπής, που δίνεται ως ακέραιος αριθμός από 0 έως 107. |
|
|
Το πλάτος της περιοχής κλιπ σε pixel, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Το ύψος της περιοχής κλιπ σε pixel, που δίνεται ως ακέραιος αριθμός από 0 έως 107. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΟι συναρτήσεις σχεδίασης εξακολουθούν να εκτελούνται ακόμη και αν βρίσκονται εκτός της περιοχής κλιπ, αλλά μόνο το τμήμα εντός της περιοχής είναι ορατό.
The
xandycoordinates are relative to the current screen origin, which can be changed usingsetOrigin.Η περιοχή αποκοπής ισχύει μόνο για το τρέχον νήμα.
Ο ορισμός μιας νέας περιοχής κλιπ αντικαθιστά οποιαδήποτε προηγουμένως ορισμένη περιοχή κλιπ για το τρέχον νήμα.
drawPixel#
Σχεδιάζει ένα pixel στην οθόνη EXP Brain στην επιλεγμένη θέση pixel x και y.
Available Functionsvoid drawPixel(
int x,
int y );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η συντεταγμένη x όπου θα σχεδιαστεί το εικονοστοιχείο, η οποία δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Η συντεταγμένη y όπου θα σχεδιαστεί το εικονοστοιχείο, η οποία δίνεται ως ακέραιος αριθμός από 0 έως 107. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΤα pixel σχεδιάζονται χρησιμοποιώντας το τρέχον χρώμα πένας που έχει οριστεί με
setPenColor.The
xandycoordinates are relative to the current screen origin, which can be set usingsetOrigin.Εάν η καθορισμένη θέση του pixel βρίσκεται εκτός των ορίων της οθόνης, το pixel δεν σχεδιάζεται.
// 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);
![]()
drawLine#
Σχεδιάζει μια ευθεία γραμμή που συνδέει δύο σημεία στην οθόνη EXP Brain.
Available Functionsvoid drawLine(
int x1,
int y1,
int x2,
int y2 );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η αρχική συντεταγμένη x της γραμμής, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Η αρχική συντεταγμένη y της γραμμής, που δίνεται ως ακέραιος αριθμός από 0 έως 107. |
|
|
Η τελική συντεταγμένη x της γραμμής, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Η τελική συντεταγμένη y της γραμμής, η οποία δίνεται ως ακέραιος αριθμός από 0 έως 107. |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΟι γραμμές σχεδιάζονται χρησιμοποιώντας το τρέχον χρώμα πένας που έχει οριστεί με
setPenColor.Το πλάτος της γραμμής καθορίζεται από το τρέχον πλάτος πένας που έχει οριστεί με
setPenWidth.The
xandycoordinates are relative to the current screen origin, which can be set usingsetOrigin.Εάν οποιοδήποτε τμήμα της γραμμής βρίσκεται εκτός των ορίων της οθόνης, σχεδιάζεται μόνο το ορατό τμήμα.
// Draw a line from the top left to bottom right of the screen
Brain.Screen.drawLine(0, 0, 159, 107);

drawRectangle#
Σχεδιάζει ένα ορθογώνιο στην οθόνη EXP Brain στην καθορισμένη θέση και μέγεθος.
Available Functions1 — Σχεδιάζει και γεμίζει ένα ορθογώνιο χρησιμοποιώντας το τρέχον διαμορφωμένο χρώμα γεμίσματος.
void drawRectangle( int x, int y, int width, int height );
2 — Σχεδιάζει και γεμίζει ένα ορθογώνιο χρησιμοποιώντας ένα προκαθορισμένο ή προσαρμοσμένο χρώμα αντικείμενο.
void drawRectangle( int x, int y, int width, int height, const color& color );
3 — Σχεδιάζει και γεμίζει ένα ορθογώνιο χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος.
void drawRectangle( int x, int y, int width, int height, const char* color );
Parameters4 — Σχεδιάζει και γεμίζει ένα ορθογώνιο χρησιμοποιώντας μια τιμή απόχρωσης.
void drawRectangle( int x, int y, int width, int height, int hue );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η συντεταγμένη x της επάνω αριστερής γωνίας του ορθογωνίου, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Η συντεταγμένη y της επάνω αριστερής γωνίας του ορθογωνίου, που δίνεται ως ακέραιος αριθμός από 0 έως 107. |
|
|
Το πλάτος του ορθογωνίου, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Το ύψος του ορθογωνίου, που δίνεται ως ακέραιος αριθμός από 0 έως 107. |
|
|
Fills the rectangle using a
|
|
|
Γεμίζει το ορθογώνιο χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος (για παράδειγμα, |
|
|
Γεμίζει το ορθογώνιο χρησιμοποιώντας μια τιμή απόχρωσης στην περιοχή |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΤο περίγραμμα του ορθογωνίου σχεδιάζεται χρησιμοποιώντας το τρέχον χρώμα πένας που έχει οριστεί με
setPenColor.Το πάχος του περιγράμματος καθορίζεται από το τρέχον πλάτος πένας που έχει οριστεί με
setPenWidth.Όταν δεν παρέχεται παράμετρος
color, το εσωτερικό του ορθογωνίου γεμίζεται χρησιμοποιώντας το τρέχον χρώμα γεμίσματος που έχει οριστεί μεsetFillColor.The
xandycoordinates are relative to the current screen origin, which can be changed usingsetOrigin.Εάν οποιοδήποτε τμήμα του ορθογωνίου βρίσκεται εκτός των ορίων της οθόνης, σχεδιάζεται μόνο το ορατό τμήμα.
Η τιμή της παραμέτρου
hueβασίζεται σε έναν κυκλικό χρωματικό τροχό, όπως φαίνεται παρακάτω, όπου οι τιμές αντιπροσωπεύουν μοίρες γύρω από τον τροχό (για παράδειγμα, κόκκινο κοντά στις 0°, πράσινο κοντά στις 120° και μπλε κοντά στις 240°).

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

drawCircle#
Σχεδιάζει έναν κύκλο στην οθόνη EXP Brain στην καθορισμένη θέση και ακτίνα.
Available Functions1 — Σχεδιάζει και γεμίζει έναν κύκλο χρησιμοποιώντας το τρέχον διαμορφωμένο χρώμα γεμίσματος.
void drawCircle( int x, int y, int radius );
2 — Σχεδιάζει και γεμίζει έναν κύκλο χρησιμοποιώντας ένα προκαθορισμένο ή προσαρμοσμένο χρώμα αντικείμενο.
void drawCircle( int x, int y, int radius, const color& color );
3 — Σχεδιάζει και γεμίζει έναν κύκλο χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος.
void drawCircle( int x, int y, int radius, const char* color );
Parameters4 — Σχεδιάζει και γεμίζει έναν κύκλο χρησιμοποιώντας μια τιμή απόχρωσης.
void drawCircle( int x, int y, int radius, int hue );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η συντεταγμένη x του κέντρου του κύκλου, που δίνεται ως ακέραιος αριθμός από 0 έως 159. |
|
|
Η συντεταγμένη y του κέντρου του κύκλου, που δίνεται ως ακέραιος αριθμός από 0 έως 107. |
|
|
Η ακτίνα του κύκλου, που δίνεται ως ακέραιος αριθμός από 0 έως 107 pixel. |
|
|
Fills the circle using a
|
|
|
Γεμίζει τον κύκλο χρησιμοποιώντας μια δεκαεξαδική τιμή χρώματος (για παράδειγμα, |
|
|
Γεμίζει τον κύκλο χρησιμοποιώντας μια τιμή απόχρωσης στην περιοχή |
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΤο περίγραμμα του κύκλου σχεδιάζεται χρησιμοποιώντας το τρέχον χρώμα πένας που έχει οριστεί με
setPenColor.Το πάχος του περιγράμματος καθορίζεται από το τρέχον πλάτος πένας που έχει οριστεί με
setPenWidth.Όταν δεν παρέχεται παράμετρος
color, το εσωτερικό του κύκλου γεμίζεται χρησιμοποιώντας το τρέχον χρώμα γεμίσματος που έχει οριστεί μεsetFillColor.The
xandycoordinates are relative to the current screen origin, which can be changed usingsetOrigin.Η τιμή της παραμέτρου
hueβασίζεται σε έναν κυκλικό χρωματικό τροχό, όπως φαίνεται παρακάτω, όπου οι τιμές αντιπροσωπεύουν μοίρες γύρω από τον τροχό (για παράδειγμα, κόκκινο κοντά στις 0°, πράσινο κοντά στις 120° και μπλε κοντά στις 240°).

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

drawImageFromFile#
Σχεδιάζει μια εικόνα στην οθόνη EXP Brain χρησιμοποιώντας ένα αρχείο εικόνας που είναι αποθηκευμένο στην κάρτα SD.
Available Functionsbool drawImageFromFile(
const char* name,
int x,
int y );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Το όνομα αρχείου της εικόνας στην κάρτα SD. Το αρχείο πρέπει να έχει επέκταση |
|
|
Η συντεταγμένη x, σε pixel από 0 έως 159, στην οποία θα σχεδιαστεί η αριστερή άκρη της εικόνας. |
|
|
Η συντεταγμένη y, σε pixel από 0 έως 107, στην οποία θα σχεδιαστεί το πάνω άκρο της εικόνας. |
Επιστρέφει μια λογική τιμή που υποδεικνύει εάν η εικόνα σχεδιάστηκε με επιτυχία:
true— Η εικόνα φορτώθηκε και σχεδιάστηκε με επιτυχία στην οθόνη.false— Η εικόνα δεν ήταν δυνατό να σχεδιαστεί (για παράδειγμα, εάν το αρχείο δεν υπάρχει ή δεν είναι έγκυρο).
Οι υποστηριζόμενες μορφές εικόνας είναι
.bmpκαι.png.Το μέγεθος του αρχείου εικόνας δεν πρέπει να υπερβαίνει
512 KB.Συνιστάται η κωδικοποίηση RLE 8-bit για την ελαχιστοποίηση του μεγέθους του αρχείου.
Οι μέγιστες υποστηριζόμενες διαστάσεις εικόνας είναι το μέγεθος της οθόνης Brain (περίπου 159 x 107 pixel).
The
xandycoordinates are relative to the current screen origin, which can be changed usingsetOrigin.
// Draw a bmp file on the Brain's screen at coordinate 0, 0
Brain.Screen.drawImageFromFile("test_image.bmp", 0, 0);
render#
Ενεργοποιεί τη διπλή προσωρινή αποθήκευση για την οθόνη του Brain. Μόλις κληθούν, τυχόν συναρτήσεις σχεδίασης (όπως κείμενο, σχήματα ή εικόνες) δεν θα εμφανίζονται πλέον αμέσως για το υπόλοιπο έργο. Αντίθετα, οι ενημερώσεις θα εμφανίζονται μόνο όταν χρησιμοποιηθεί ξανά η απόδοση render Αυτό επιτρέπει ομαλότερες και πιο ελεγχόμενες ενημερώσεις οθόνης, αλλά σημαίνει ότι τίποτα δεν θα είναι ορατό μέχρι να χρησιμοποιηθεί η απόδοση render.
1 — Ενεργοποιεί τη διπλή προσωρινή αποθήκευση ή αποδίδει την προσωρινή αποθήκευση στην οθόνη.
bool render();
Parameters2 — Αποδίδει το back buffer στην οθόνη με έλεγχο της συμπεριφοράς κάθετου συγχρονισμού και προαιρετική εκτέλεση χρονοδιαγράμματος.
bool render( bool bVsyncWait, bool bRunScheduler = true );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
|
|
|
Προαιρετικό.
|
Επιστρέφει μια λογική τιμή που υποδεικνύει εάν τα αποθηκευμένα σχέδια στο buffer αποδώθηκαν με επιτυχία στην οθόνη:
true— Τα σχέδια αποδώθηκαν με επιτυχία στην οθόνη.false— Τα σχέδια δεν ήταν δυνατό να αποδοθούν στην οθόνη.
Notes
Η κλήση της συνάρτησης
renderθα απαιτήσει τη χρήση της συνάρτησηςrenderγια το υπόλοιπο έργο.
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();









