I got a integer overflow on line 446 CurToFocus := Sqr(X - FFocus.X) + Sqr(Y - FFocus.Y); Solved it by changing it to CurToFocus := Sqr(1.0 * X - FFocus.X) + Sqr(1.0 * Y - FFocus.Y);