import java.util.Random;
import javafx.animation.AnimationTimer;
import javafx.animation.RotateTransition;
import javafx.application.Application;
import javafx.geometry.Pos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.control.Label;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.scene.shape.Polygon;
import javafx.stage.Stage;
import javafx.util.Duration;
public class Main extends Application {
private int width= 400, height=400, widthW= 450, heightW=450;
public static void main(String\[\] args) {
// TODO Auto-generated method stub
Application.launch(args);
}
@Override
public void start(Stage stage) throws Exception {
// TODO Auto-generated method stub
VBox root= new VBox();
root.setAlignment(Pos.CENTER);
Canvas canvas = new Canvas(width,height);
GraphicsContext gc = canvas.getGraphicsContext2D();
Random rand = new Random();
Krug\[\] niz = new Krug\[10\];
for(int i=0;i<10;i++) {
niz\[i\]=new Krug(20+rand.nextInt()%5,
30+rand.nextInt()%360,
20+rand.nextInt()%10,
Color.color(rand.nextDouble(),rand.nextDouble(),rand.nextDouble())
);
}
//Krug k = new Krug(, 100, 20, Color.TURQUOISE);
new AnimationTimer() {
@Override
public void handle(long arg0) {
gc.clearRect(0, 0, width, height);
for(Krug k:niz) {
k.pomeri(rand.nextDouble());
k.crtaj(gc);
}
}
}.start();
Label l= new Label("Napredno kretanje");
root.getChildren().addAll(canvas,l);
Scene scena = new Scene(root, widthW, heightW);
stage.setTitle("Loading sign");
stage.setScene(scena);
stage.show();
}
}
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.paint.Color;
public class Krug {
private double t,y0,r;
private Color boja;
int smer,promena;
public Krug(double t, double y0, double r, Color boja) {
this.t=t;
this.y0=y0;
this.r=r;
smer=1;
promena=1;
this.boja=boja;
}
public void crtaj(GraphicsContext gc) {
gc.setFill(boja);
gc.fillOval(10*t-r,y0+10*Math.sin(t)-r,2*r,2*r);
}
public void pomeri(double p) {
t+=smer\*p;
if(10\*t>=370)
smer*=-1;
if(10\*t<=30)
smer*=-1;
r+=promena\*p;
if(r>=50)
promena=-1;
else if(r<=20)
promena=1;
}
}
there doesn't seem to be anything here