The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
จะมีบางครั้งที่คุณต้องการให้ข้อมูลเฉพาะบางอย่างแก่ฟังก์ชัน ซึ่งจะช่วยให้ฟังก์ชันทำงานตามข้อมูลที่ได้รับในแต่ละครั้งเมื่อมีการเรียกใช้ ตัวอย่างต่อไปนี้จะแสดงวิธีการทำงาน
ตัวอย่าง: โปรแกรมวาดรูปหน้ายิ้มเพื่อแสดงโดยใช้พารามิเตอร์
ตัวอย่างต่อไปนี้ยังเป็นตัวอย่างตัวแปรส่วนกลางที่ใช้งานอย่างถูกต้อง
โดยไม่ใช้ฟังก์ชันที่ผู้ใช้กำหนดเอง:
int MaxX = 484, MaxY = 278;
int main() {
vexcodeInit();
int centerX = MaxX/2, centerY = MaxY/2;
//ใบหน้า
Brain.Screen.drawCircle(centerX, centerY, 100);
//ตาซ้าย
int space = 20; /*กำหนดระยะห่างของตาเทียบกับด้านบนของหน้าจอ*/ คุณสามารถปรับแต่งได้ตามต้องการ*/
centerX = MaxX/2+space;
centerY = MaxY/2-30;
Brain.Screen.drawCircle(centerX, centerY, 20);
//ตาข้างขวา
/*...คุณสามารถเขียนโค้ดสำหรับตาข้างขวาต่อได้ที่นี่*/
//ปากยิ้ม
/*...คุณสามารถเขียนโค้ดสำหรับปากยิ้มต่อได้ที่นี่
... เป็นต้น
หากคุณต้องการวาดขนาดที่แตกต่างกัน คุณจะต้องทำซ้ำชุดโค้ดทั้งหมดอีกครั้ง
*/
}
ด้วยฟังก์ชันที่ผู้ใช้กำหนดเอง:
int MaxX = 484, MaxY = 278;
const char Left=1, Right=2;
void drawFace(int size){
/*...โค้ดสำหรับวาดใบหน้าโดยอิงจากพารามิเตอร์ size จากฟังก์ชันที่เรียก*/
}
//ด้าน == ซ้ายหรือขวา
void drawEye(char side){
/*...โค้ดสำหรับวาดดวงตาโดยอิงจากพารามิเตอร์ size จากฟังก์ชันที่เรียก*/
}
//ด้าน == ซ้ายหรือขวา
void drawMouth(bool smile, int size){
/*...โค้ดสำหรับวาดปากโดยอิงจากพารามิเตอร์ size จากฟังก์ชันที่เรียก*/ ซึ่งรวมถึงว่าใบหน้ากำลังยิ้มหรือขมวดคิ้ว รวมถึงความกว้างด้วย*/
}
int main() {
vexcodeInit();
drawFace();
drawEye(Left);
drawEye(Right);
//คุณสามารถสนุกกับสิ่งนี้ได้จริงๆ...
ในขณะที่ (true) {
วาดปาก (true, 30);
รอ 1000 มิลลิวินาที;
วาดปาก (false, 30);
รอ 1000 มิลลิวินาที;
}
}
วิดีโอด้านล่างแสดงลำดับการทำงานของตรรกะจากฟังก์ชันผู้เรียก main():