Hallo,
ich mach grad ein kleines applet mit graphikeffekten (graustufen)
und hab bis jetzt von der klass Applet die funktion createImage verwendet;
diese methode liefert mir ein INT_RGB Image zurück;
mit dem bild kann ich mein Applet laufen lassen, kein problem.
jetzt hab ich die funktion einfach überschrieben (ohne änderung des typs):
und schon klappt nix mehr (das was voher weiss war ist schwarz und das schwarze ist auch schwarz :-/)
doch det typ des bildes ist der selbe...?!
des weiteren... meine animation ist komplett flüssig, sobald ich nur einen blur filter
darauf anwende stockts ohne ende.... und das schon bei ner auflösung von 960x600 ?!
ich habe mal in swt ne komponente geschrieben die bilder gezeichnet hat und die hat 100+fps gezeichnet...
ich mach grad ein kleines applet mit graphikeffekten (graustufen)
und hab bis jetzt von der klass Applet die funktion createImage verwendet;
diese methode liefert mir ein INT_RGB Image zurück;
mit dem bild kann ich mein Applet laufen lassen, kein problem.
jetzt hab ich die funktion einfach überschrieben (ohne änderung des typs):
Java:
@Override
public BufferedImage createImage(int width, int height) {
return new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
}
und schon klappt nix mehr (das was voher weiss war ist schwarz und das schwarze ist auch schwarz :-/)
doch det typ des bildes ist der selbe...?!
des weiteren... meine animation ist komplett flüssig, sobald ich nur einen blur filter
Java:
public void blur(BufferedImage src, BufferedImage dst, int kernelSize) {
int weight = kernelSize * kernelSize;
float[] data = new float[weight];
for (int i = 0; i < data.length; i++) {
data[i] = 1f / (float) weight;
}
Kernel kernel = new Kernel(kernelSize, kernelSize, data);
ConvolveOp convolve = new ConvolveOp(kernel, ConvolveOp.EDGE_NO_OP,
null);
convolve.filter(src, dst);
}
ich habe mal in swt ne komponente geschrieben die bilder gezeichnet hat und die hat 100+fps gezeichnet...