Gelöst
Ich versuche, einen Planeten rotierenden einen Stern zu simulieren. Ich bin zur Zeit bewusst die Syntax, um das Bildfeld (Ich habe dies in einem Timer, so dass es wiederholt wird) zu bewegen
private void rotate_timer(object sender, EventArgs e) {
picturebox1.location = new point (picturebox1.location.x + 1,
picturebox1.location.y + 1);
}
Aber ich weiß nicht, wo so zu starten, dass es dich um einen bestimmten Punkt dreht. Wie würde ich drehen (0,0)?
Sie würden das Bild * innerhalb * der Bildbox drehen, nicht die Bildbox selbst - [Wie rotiere ich ein Bild in C#] (http://stackoverflow.com/questions/2163829/how-do-i-rotate- a-Bild-in-c-sharp) - Dasselbe Prinzip gilt für das Bewegen der Bilderbox im Allgemeinen: Ziehen Sie stattdessen das Bild an bestimmten Koordinaten direkt auf (vermutlich) die Form. –
Aber ich brauche das Bild nicht zu drehen. Ich brauche die Box, um um einen Punkt mit einer bestimmten Entfernung zu drehen. –
Sie müssen mit trigonometrischen Funktionen arbeiten (z. B. 'x = Math.Sin (Winkel); y = Math.Cos (Winkel);'), wenn Sie ein Objekt um eine Achse drehen möchten. (Ursprung von [0, 0] wäre einfach eine Drehung um die * z * -Achse am Ursprung.) – ray