G
Guest
Gast
Ich hab mich jetzt das ganze Wochenede zerfuselt, könnt mir bitte jemand helfen?
Ich hab eine Spielfigur, davon 8 Ansichten in Iso (n, no, o, so, s, sw, w, nw)
Ich hab eine Startposition und eine Zielposition.
Die Berechnung welche Ansicht darzustellen ist ist ganz einfach:
So, jetzt hab ich aber statt 8 Ansichten 32, und gugge echt saudumm.
Ich habs versucht die Bilder anders zu benennen (nnnno, nnno, nno, no, noo, nooo, ...) aber Ergebniss ist das ich mich selbst nur verwirrter mache als mir helfe.
Hätt eventuell jemand ne Ahnung wie ich das anders lösen könnt? Am besten über den Winkel und die Bilder 12, 24, 36, 48 benennen?
Ich wüsst mir da echt nicht zu helfen, das übersteigt meine Fähigkeiten anscheinend :-(
Ich hab eine Spielfigur, davon 8 Ansichten in Iso (n, no, o, so, s, sw, w, nw)
Ich hab eine Startposition und eine Zielposition.
Die Berechnung welche Ansicht darzustellen ist ist ganz einfach:
Code:
//Bewegung auf der X-Achse berechnen
double btrgx=kursx-xpos;
int negx=1;
if(btrgx<0){
negx=-1;
btrgx=btrgx*-1;
}
//Bewegung auf der Y-Achse berechnen
double btrgy=kursy-ypos;
int negy=1;
if(btrgy<0){
negy=-1;
btrgy=btrgy*-1;
}
//Winkelfaktoren der Achsen berechnen
double graphx=1;
double graphy=1;
if(btrgx>btrgy)
graphy=btrgy/btrgx;
else if(btrgx<btrgy)
graphx=btrgx/btrgy;
//die verarbeiteten werte mitteilen wegen bildrückgabe
setOrientation(graphx, negx, graphy, negy);
Code:
public void setOrientation(double graphx, int negx, double graphy, int negy) {
String pri="";
String sec="";
if(negy<0)pri="n";
if(negy>0)pri="s";
if(negx<0)sec="w";
if(negx>0)sec="o";
if(graphy<0.5)pri="";
if(graphx<0.5)sec="";
kurs=pri+sec;
System.out.println("kurs: "+ pri+sec);
}
So, jetzt hab ich aber statt 8 Ansichten 32, und gugge echt saudumm.
Ich habs versucht die Bilder anders zu benennen (nnnno, nnno, nno, no, noo, nooo, ...) aber Ergebniss ist das ich mich selbst nur verwirrter mache als mir helfe.
Hätt eventuell jemand ne Ahnung wie ich das anders lösen könnt? Am besten über den Winkel und die Bilder 12, 24, 36, 48 benennen?
Ich wüsst mir da echt nicht zu helfen, das übersteigt meine Fähigkeiten anscheinend :-(