Вы можете создать новый BufferedImage в else, или вы можете получить компонент Graphics2D в BufferedImage, установить его цвет фона с помощью setBackground(Color c)
, а затем очистить изображение с помощью clearRect(...)
, а затем избавиться от объекта Graphics2D, когда это будет сделано с помощью dispose()
метод.
На самом деле, при просмотре вашего кода я не вижу, как вы это делаете.Не забывайте утилизировать ресурс Graphics или Graphics2D, когда будете использовать их, если вы их создали сами (не если они получены из JVM, скажем, с помощью метода paint или paintComponent).