Я не знаю, что у меня вопрос, но если вы хотите провести непрерывную линию. При перетаскивании вам нужно обновить свое последнее место.
@Override
public void mouseDragged(MouseEvent e) {
point2 = e.getPoint();
line2d = new Line2D.Double(point1, point2);
point1 = point2; // add this line
repaint();
}