final int endSnap,
final boolean fitness) {
this.guiSim.loescheFeld();
long lang = 20;
Vector2D norm;
RobSnapshot rob;
int anfang = startSnap;
int ende = endSnap;
PopSnapshot pop;
Vector2D[] letzte = new Vector2D[grIndizes.length];
byte farbe;
for (int i = anfang; i <= ende; i++) {
pop = this.aufnahme.getPop(i);
for (int j = 0; j < grIndizes.length; j++) {
rob = pop.getRobSchnapp()[grIndizes[j]];
farbe
= eas.simulation.ConstantsSimulation.FARBEN_BENUTZER[
grIndizes[j]
% eas.simulation.ConstantsSimulation.FARBEN_BENUTZER.length];
if (letzte[j] != null) {
this.guiSim.getUmgeb().setzeLinie(
(int) letzte[j].x,
(int) letzte[j].y,
(int) rob.getPosition().x,
(int) rob.getPosition().y,
farbe,
true,
false,
false,
false);
norm = new Vector2D(letzte[j].x, letzte[j].y);
norm.sub(new Vector2D(
rob.getPosition().x,
rob.getPosition().y));
norm.ortho();
norm.norm();
lang = rob.getFitSum();
if (lang <= 0) {
lang = 5;
farbe = eas.simulation.ConstantsSimulation.FARBE_SEL;
} else {
lang += 5;
}
if (!fitness) {
lang = 0;
}
this.guiSim.getUmgeb().setzeLinie(
(int) rob.getPosition().x - norm.x * lang / 2,
(int) rob.getPosition().y - norm.y * lang / 2,
(int) rob.getPosition().x + norm.x * lang / 2,
(int) rob.getPosition().y + norm.y * lang / 2,
farbe,
true,
false,
false,
false);
} else {
// Setze Kreuz + ersten Punkt.
int x1 = (int) rob.getPosition().x - 10;
int y1 = (int) rob.getPosition().y - 10;
int x2 = (int) rob.getPosition().x + 10;
int y2 = (int) rob.getPosition().y + 10;
this.guiSim.getUmgeb().setzeLinie(
x1, y1, x2, y2, farbe,
true, false, false, false);
this.guiSim.getUmgeb().setzeLinie(
x2, y1, x1, y2, farbe,
true, false, false, false);
this.guiSim.getUmgeb().setzeLinie(
x1 + 1, y1, x2 + 1, y2, farbe,
true, false, false, false);
this.guiSim.getUmgeb().setzeLinie(
x2 + 1, y1, x1 + 1, y2, farbe,
true, false, false, false);
this.guiSim.getUmgeb().setzeLinie(
x1 - 1, y1, x2 - 1, y2, farbe,
true, false, false, false);
this.guiSim.getUmgeb().setzeLinie(
x2 - 1, y1, x1 - 1, y2, farbe,
true, false, false, false);
}
letzte[j] = rob.getPosition();
}
}
this.guiSim.getUmgeb().beendeZeichenSession();
}