private void setPath(int time) { if (time < person.totalTime) { Node personNode = person.getPersonCoordinateAtTimeT(time + 1); grids[personNode.x][personNode.y].setType(Type.BLANK); grids[personNode.x][personNode.y].repaint(); grids[personNode.x][personNode.y].revalidate(); List<Node> lastList = person.getStepListAtTimeT(time + 1); for (Node node : lastList) { int x = node.x; int y = node.y; if (x == person.getPersonCoordinateAtTimeT(time).x && y == person.getPersonCoordinateAtTimeT(time).y) { continue; } grids[x][y].setType(Type.BLANK); grids[x][y].repaint(); grids[x][y].revalidate(); } } Node personNode = person.getPersonCoordinateAtTimeT(time); grids[personNode.x][personNode.y].setType(Type.PERSON); grids[personNode.x][personNode.y].repaint(); grids[personNode.x][personNode.y].revalidate(); List<Node> list = person.getStepListAtTimeT(time); for (Node node : list) { int x = node.x; int y = node.y; if (x == person.getPersonCoordinateAtTimeT(time).x && y == person.getPersonCoordinateAtTimeT(time).y) { continue; } grids[x][y].setType(Type.STEP); grids[x][y].repaint(); grids[x][y].revalidate(); } }帮我写一下注释 用markdown
时间: 2024-02-06 16:04:41 浏览: 64
```java
/**
* 该方法用于设置路径
* @param time 时间参数,用于计算人物在该时间下的坐标
*/
private void setPath(int time) {
if (time < person.totalTime) {
// 获取人物在该时间下的坐标,并将该坐标所在的格子类型设置为空白格子
Node personNode = person.getPersonCoordinateAtTimeT(time + 1);
grids[personNode.x][personNode.y].setType(Type.BLANK);
grids[personNode.x][personNode.y].repaint();
grids[personNode.x][personNode.y].revalidate();
// 获取人物在该时间点之前的所有步骤,将每个步骤所在的格子类型设置为空白格子
List<Node> lastList = person.getStepListAtTimeT(time + 1);
for (Node node : lastList) {
int x = node.x;
int y = node.y;
if (x == person.getPersonCoordinateAtTimeT(time).x
&& y == person.getPersonCoordinateAtTimeT(time).y) {
continue;
}
grids[x][y].setType(Type.BLANK);
grids[x][y].repaint();
grids[x][y].revalidate();
}
}
// 获取人物在该时间下的坐标,并将该坐标所在的格子类型设置为人物类型
Node personNode = person.getPersonCoordinateAtTimeT(time);
grids[personNode.x][personNode.y].setType(Type.PERSON);
grids[personNode.x][personNode.y].repaint();
grids[personNode.x][personNode.y].revalidate();
// 获取人物在该时间点之前所有的步骤,将每个步骤所在的格子类型设置为步骤类型
List<Node> list = person.getStepListAtTimeT(time);
for (Node node : list) {
int x = node.x;
int y = node.y;
if (x == person.getPersonCoordinateAtTimeT(time).x
&& y == person.getPersonCoordinateAtTimeT(time).y) {
continue;
}
grids[x][y].setType(Type.STEP);
grids[x][y].repaint();
grids[x][y].revalidate();
}
}
```
阅读全文