Hallo Zusammen,
ich will ein Programm schreiben, das nach Übermittlung von X-Y Koordinaten eine Struktur gleich eines zerbrochenenen Glases zeichnet (Bitte fragt nicht wofür
)
hat jemand von euch eine Idee, wie ich meine mageren Striche (könnt den Code gerne ausführen) optisch verbessern kann, dachte da zB an teilweise Dickere Striche um eine Verästelung hinzukriegen etc..wär euch sehr dankbar....
jetz noch eine eher triviale Frage (hoffe ich)..ich führe die repaint Funktion innerhalb einer endlos-Schleife aus....der erste Parameter soll dabei eine milisekunde sein, doch egal wie ich die Zahl änder, der zeichnet einfach volle Pulle
...jemand ne Idee?
Vielen Dank für eure Hilfe nun zum Code:
Klasse Peach :
Klasse Main:
ich will ein Programm schreiben, das nach Übermittlung von X-Y Koordinaten eine Struktur gleich eines zerbrochenenen Glases zeichnet (Bitte fragt nicht wofür
hat jemand von euch eine Idee, wie ich meine mageren Striche (könnt den Code gerne ausführen) optisch verbessern kann, dachte da zB an teilweise Dickere Striche um eine Verästelung hinzukriegen etc..wär euch sehr dankbar....
jetz noch eine eher triviale Frage (hoffe ich)..ich führe die repaint Funktion innerhalb einer endlos-Schleife aus....der erste Parameter soll dabei eine milisekunde sein, doch egal wie ich die Zahl änder, der zeichnet einfach volle Pulle
Vielen Dank für eure Hilfe nun zum Code:
Klasse Peach :
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
*
* @author Thomas
*/
public class Peach extends JPanel {
int xtrack;
int ytrack;
public void getc(int x,int y)
{
this.xtrack=x;
this.ytrack=y;
}
public void paintComponent(Graphics g)
{
this.setBackground(Color.WHITE);
g.setColor(Color.DARK_GRAY );
int zufallz=200;
int zufall1;
int zufall2;
int zufall3;
zufall1=(int) ((Math.random()*zufallz)+1); //40 veränderbar, kucken was am besten aussieht 40 =maximale veränderbarkeit
zufall2=(int) ((Math.random()*zufallz)+1);
zufall3=(int) ((Math.random()*4)+1);
if(zufall3==1){g.setColor(Color.GRAY);}
if(zufall3==2){g.setColor(Color.BLACK);}
if(zufall3==3){g.setColor(Color.BLUE);}
g.drawLine(xtrack,ytrack,xtrack+zufall1,ytrack+zufall2); //20 und 40 unsere x,y Koordinaten (getrackt)
g.drawLine(xtrack+zufall1,ytrack+zufall2,xtrack+zufall1,ytrack+zufall2);
zufall1=(int) ((Math.random()*zufallz)+1);
zufall2=(int) ((Math.random()*zufallz)+1);
zufall3=(int) ((Math.random()*4)+1);
if(zufall3==1){g.setColor(Color.GRAY);}
if(zufall3==2){g.setColor(Color.BLACK);}
if(zufall3==3){g.setColor(Color.BLUE);}
g.drawLine(xtrack,ytrack,xtrack+zufall1,ytrack+zufall2);
g.drawLine(xtrack+zufall1,ytrack+zufall2,xtrack+zufall1,ytrack+zufall2);
zufall1=(int) ((Math.random()*zufallz)+1);
zufall2=(int) ((Math.random()*zufallz)+1);
zufall3=(int) ((Math.random()*4)+1);
if(zufall3==1){g.setColor(Color.GRAY);}
if(zufall3==2){g.setColor(Color.BLACK);}
if(zufall3==3){g.setColor(Color.BLUE);}
g.drawLine(xtrack,ytrack,xtrack+zufall1,ytrack+zufall2);
g.drawLine(xtrack+zufall1,ytrack+zufall2,xtrack+zufall1,ytrack+zufall2);
zufall1=(int) ((Math.random()*zufallz)+1);
zufall2=(int) ((Math.random()*zufallz)+1);
zufall3=(int) ((Math.random()*4)+1);
if(zufall3==1){g.setColor(Color.GRAY);}
if(zufall3==2){g.setColor(Color.BLACK);}
if(zufall3==3){g.setColor(Color.BLUE);}
g.drawLine(xtrack,ytrack,xtrack+zufall1,ytrack+zufall2);
g.drawLine(xtrack+zufall1,ytrack+zufall2,xtrack+zufall1,ytrack+zufall2);
}
}
Klasse Main:
Code:
import java.awt.Color;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
float xt=210;
float yt=200;
JFrame f=new JFrame("Glaspatch");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Peach p=new Peach();
f.add(p);
p.getc((int)xt,(int)yt);
f.setSize(1024,1024);
f.setVisible(true);
f.setBackground(Color.white);
while(true==true)
{
f.repaint(200000, (int)xt, (int)yt, 1024, 1024);
}
}
}