Because there's no point in optimizing until you have triaged your algorithm (irremedially slow, a little too slow, or fast enough). If I were certain what
form the original questioner's points stored in, I would have even used a distance() sub. Code should be written
for minimum conceptual complexity and then optimized only if needed, and having a separate $cutoff_squared checking against a square distance is beyond my minimum. YMMV.
Update: the above is obviously hypocritical; I get sucked into premature optimization and complexity fascination all the time.