Vector2i start = path.get(i);
if (i < (path.size() - 1)) {
Vector2i end = path.get(i + 1);
Line2D line = new Line2D.Double(
start.x() + 0.5, start.y() + 0.5,
end.x() + 0.5, end.y() + 0.5);
g.draw(line);
fillCircle(start.x() + 0.5, start.y() + 0.5, 0.2, g);
} else {
fillCircle(start.x() + 0.5, start.y() + 0.5, 0.5, g);
}