//畫出坐標之間的綫 for(int i=0;i<31;i++) { for(int j=0;j<31;j++) { if (i<30) { painter.setPen(QColor(25, 25, 112)); // 设置线条颜色 painter.drawLine(i*25+200+nodeSize,(j+1)*25+50+nodeSize/2,(i+1)*25+200,(j+1)*25+50+nodeSize/2); // 绘制线条 } if (j <30) { painter.setPen(QColor(25, 25, 112)); // 设置线条颜色 painter.drawLine(i*25+200+nodeSize/2,(j+1)*25+50+nodeSize,i*25+200+nodeSize/2,(j+2)*25+50); // 绘制线条 } } },修改爲會順澤下一個坐標的方向,根據agv的current坐標向前面加1
时间: 2024-03-09 16:44:25 浏览: 93
c#GDI+画点
以下是修改后的代码:
```
//画出坐标之间的线
for(int i=0;i<31;i++) {
for(int j=0;j<31;j++) {
if (i<30) {
painter.setPen(QColor(25, 25, 112)); // 设置线条颜色
if (i == currentX && j == currentY) {
painter.drawLine(i*25+200+nodeSize,(j+1)*25+50+nodeSize/2,(i+2)*25+200,(j+1)*25+50+nodeSize/2); // 绘制线条
} else {
painter.drawLine(i*25+200+nodeSize,(j+1)*25+50+nodeSize/2,(i+1)*25+200,(j+1)*25+50+nodeSize/2); // 绘制线条
}
}
if (j <30) {
painter.setPen(QColor(25, 25, 112)); // 设置线条颜色
if (i == currentX && j == currentY) {
painter.drawLine(i*25+200+nodeSize/2,(j+1)*25+50+nodeSize,i*25+200+nodeSize/2,(j+3)*25+50); // 绘制线条
} else {
painter.drawLine(i*25+200+nodeSize/2,(j+1)*25+50+nodeSize,i*25+200+nodeSize/2,(j+2)*25+50); // 绘制线条
}
}
}
}
```
这个修改后的代码会根据 AGV 的 current 坐标向前面加1,来画出从当前坐标到下一个坐标的连线。如果当前坐标是 AGV 的 current 坐标,那么就会画出从当前坐标到下一个坐标的连线,否则就会画出普通的连线。
阅读全文