Как обрезать часть BufferedImage в форме многоугольника и записать ее в другой BufferedImage?
Graphics2D имеет методы clip (Shape) и draw (Shape). Поэтому я думаю, вы можете установить Shape в качестве вашего многоугольника, а затем рисовать один BufferedImage другим.