bool containsPoint(Point<num> p) { final dx = x - p.x; final dy = y - p.y; return dx * dx + dy * dy < radius * radius; }