ich eine Funktion in einem Thread bin zu aktualisieren, um eine Linie mit einer Kreisbahn in Android folgen zu machen:Linie, die angeblich hat sich umdrehen Punkt nicht zu tun, was es tun soll
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
renderEnvironmentalVariables(canvas);
}
private void renderEnvironmentalVariables(Canvas canvas){
while(angle > 360){
angle -= 360;
}
canvas.drawColor(0xFFe6e6e6);
//renderBaseRadar(canvas);
float origin = width/2;
float x = origin + (float) Math.cos(angle) * (origin);
float y = origin + (float) Math.sin(angle) * (origin);
Log.i("Radio frequency tracker", y + "_" + x);
Paint lineColor = new Paint();
lineColor.setColor(0xFFFFFFFF);
lineColor.setStyle(Paint.Style.STROKE);
lineColor.setStrokeWidth(5);
canvas.drawLine(origin, origin, x, y, lineColor);
angle += 20;
}
onDraw(canvas);
//Log.i("Radio frequency tracker", "Updating canvas thread");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
statt, wenn auch ziemlich reibungslos drehen um den Ursprung herum bleibt die Linie an einer Stelle und bewegt sich nicht, obwohl die Log-Funktion neue Koordinaten aufzeichnet ...
Was mache ich falsch und wie kann ich es beheben?
Das hat es buchstäblich geschafft, danke! –