Processing 发送程序优化:简化代码,提高可读性
以下为改进后的程序:
import processing.serial.*;
Serial port;
void setup() {
size(200, 500);
textSize(150);
textAlign(CENTER, CENTER);
port = new Serial(this, "COM3", 9600); // Arduino板的端口号
}
void draw() {
background(225);
String floors = 'F9 F8 F7 F6 F5 F4 F3 F2 F1';
textSize(24);
fill(255, 0, 0);
textLeading(50);
text(floors, 20, 25, 40, 500);
for (int i = 0; i < 9; i++) {
fill(100);
rect(50, i * 50, 100, 50);
}
}
void mouseClicked() {
int currentFloor = -1;
for (int i = 0; i < 9; i++) {
if (mouseX >= 50 && mouseX <= 150 && mouseY >= i * 50 && mouseY <= (i + 1) * 50) {
currentFloor = i + 1;
break;
}
}
if (currentFloor > 0) {
println(currentFloor + ' floor');
port.write(currentFloor);
}
}
改进说明:
- 简化绘制楼层按钮的代码,使用
for循环遍历绘制,使代码更加简洁。 - 重构鼠标点击事件的代码,使用
for循环判断点击的按钮是哪一个楼层,避免了大量的if语句,使代码更加简洁。 - 修改了文本的对齐方式,使其居中显示。
- 修复了鼠标点击事件中的逻辑错误,原先的逻辑是当鼠标点击区域在任何一个按钮范围内时都会发送数据,现在改为只有当鼠标点击区域在某个按钮范围内时才会发送数据。
改进后的代码优势:
- 代码更加简洁易懂,可读性更高。
- 减少了代码重复,提高了代码维护性。
- 修复了原代码中的逻辑错误,使程序更加稳定可靠。
使用说明:
- 将代码复制到 Processing IDE 中。
- 修改
COM3为您的 Arduino 板的端口号。 - 运行程序,点击相应的按钮即可发送数据到 Arduino 板。
提示:
- 确保您的 Arduino 板已经连接到计算机并正确配置。
- 您需要在 Arduino 板上编写相应的代码来接收数据。
- 可以根据自己的需求修改代码,例如添加更多按钮或改变按钮的位置。
希望本教程能帮助您理解如何优化 Processing 发送程序,使代码更加简洁易懂,提高可读性和可维护性。
原文地址: https://www.cveoy.top/t/topic/nJRL 著作权归作者所有。请勿转载和采集!