Einzelnen Beitrag anzeigen

Benutzerbild von bigben37
bigben37

Registriert seit: 19. Dez 2007
Ort: Freiburg
116 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Winkel zwischen 2 Vektoren auch größer als 180°?

  Alt 24. Apr 2011, 11:49
Hui, schon so viele Antworten so früh am morgen

@Aphton: Genau das wollte ich beschreiben

@Uwe Raabe:
Funktionniert leider nicht richtig, es liegt wahrscheinlich daran, dass ich noch den Ursprung, also den Punkt um den ich drehe, mit einbeziehen muss.
Aber der Ansatz mit ArcTan2 hat mich auf folgende funktionierende Berechnung gebracht:
Delphi-Quellcode:
procedure TFuncPlotter.OnMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
  p1, p2: TPoint;
begin
  p1.X := FStartPos.X - Origin.X;
  p1.Y := FStartPos.Y - Origin.Y;
  p2.X := X - Origin.X;
  p2.Y := Y - Origin.Y;
  Rotation := FPlotterStartAngle + RadToDeg(ArcTan2(p1.Y, p1.X) - ArcTan2(p2.Y, p2.X));
end;
MfG Bigben37
Benjamin
Optimismus ist nur ein Mangel an Information
  Mit Zitat antworten Zitat