by Donnie » September 11th, 2006, 10:19 am
I think it is difficult to know the direction if you just compare the original angle to the new angle (refer to below programe). You know the minus and plus value will be occured. Maybe, I don't understand your meaning very well. Could you explain it in detail for me. Thanks a lot.
if Dragging then
begin
if X = RotateImage1.Width / 2 then
if Y < RotateImage1.Height / 2 then
Theta := Pi / 2
else
Theta := -Pi / 2
else
Theta := ArcTan2(Y - RotateImage1.Height / 2, X - RotateImage1.Width / 2);
Angle := StartAngle + 180 * (StartTheta - Theta) / Pi;
TrackBar1.Position := Trunc(Angle * 10) mod 3600;
TrackBar1Change(Self);
end;