Обычно апплет будет вызывать разные методы, которые будут иметь объект Graphics2D, который заканчивается на экране.
В процессе методы будут манипулировать и рисовать вещи на этом объекте.
Но моя проблема в том, что у меня есть очень статичные изображения, которые нужно рассчитать и нарисовать для каждого кадра.
Как я могу построить графический объект, который я могу кэшировать, и повторно применить движущиеся объекты? Для примера у меня есть этот статический фоновый ящик, объект Graphics2D - тот из Апплета.
private Graphics2D drawbackground(Graphics2D g2d) {
// Debug grid layer
int x = 0;
int y = 0;
for (int i = 0; i < 9; i++) {
if (x == 0 && y == 0 || y % 82 == 0) {
x = 0;
for (int t = 0; t <= 5; t++) {
g2d.setColor(Color.WHITE);
g2d.drawLine(x, y + 41, x + 41, y);
g2d.drawLine(x + 41, y, x + 82, y + 41);
g2d.drawLine(x, y + 41, x + 41, y + 82);
g2d.drawLine(x + 82, y + 41, x + 41, y + 82);
x += 82;
}
y += 41;
} else if (y % 41 == 0) {
x = 41;
for (int t = 0; t <= 5; t++) {
g2d.setColor(Color.WHITE);
g2d.drawLine(x, y + 41, x + 41, y);
g2d.drawLine(x + 41, y, x + 82, y + 41);
g2d.drawLine(x, y + 41, x + 41, y + 82);
g2d.drawLine(x + 82, y + 41, x + 41, y + 82);
x += 82;
}
y += 41;
}
}
}
Можно ли сгенерировать эти чертежи и повторно использовать их в кэшированной копии, чтобы моему апплету не требовалось время для прохождения этих drawLines для каждого рисования?