hi
ich möche über diese funktion mir ein bild zeichnen lassen auf dem mehrere polylines in unterschiedlichen farben zu sehen sind.
aus jedem Point[] aus par soll eine linie erzeugt werden und die farbe geändert werden.
die farbe gebe ich über das Color[] an.
allerdings ist das bild, das ich zurückbekomme einfach nur weiß.
kann mir bitte jemand sagen was ich falsch mache?
schonmal thx
hier der code:
ich möche über diese funktion mir ein bild zeichnen lassen auf dem mehrere polylines in unterschiedlichen farben zu sehen sind.
aus jedem Point[] aus par soll eine linie erzeugt werden und die farbe geändert werden.
die farbe gebe ich über das Color[] an.
allerdings ist das bild, das ich zurückbekomme einfach nur weiß.
kann mir bitte jemand sagen was ich falsch mache?
schonmal thx
hier der code:
Java:
static BufferedImage ptl_create_image(Point[][] par, int w, int h, Color[] c){
if(c.length<par.length){
System.err.println("err car zu kurz");
System.exit(1234);
};
//bild erzeugen
BufferedImage img = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
Graphics2D gr=img.createGraphics();
rep_black_px_with(Color.WHITE, img);
for(int a=0;a<par.length;a++){
//ars für xpts und ypts
int x[]=new int[par[a].length],
y[]=new int[par[a].length];
//x u y füllen
for(int i=0;i<par[a].length;i++){
x[i]=par[a][i].x;
y[i]=par[a][i].y;
};
//reinzeichnen
gr.drawPolyline(x, y, y.length-1);
//färben
rep_black_px_with(c[a], img);
};
return img;
};
static void rep_black_px_with(Color c, BufferedImage bld){
for(int x=0;x<bld.getWidth();x++){
for(int y=0;y<bld.getHeight();y++){
if(bld.getRGB(x,y)==Color.BLACK.getRGB()){
bld.setRGB(x, y, c.getRGB());
};};};};