We'll also need to define what in-range is. This might require a new 'robot.json' config file for each robot (if so, also store robot name & avatar?), or have it passed from the planner. Otherwise, we could share the same range. I'd advise against having it set on the UI because that implies a two-way binding, i.e. if you change it on the UI, it also changes it on the robot, which would be a lot of work (?) to implement.
[x] In range - (robot_instance.is_point_in_grabbing_zone(x,y)). Is it better than the old one? How is the old one performing? I'm leaving the old one for now.
[ ] Has ball - I've spoken to Filip and he convinced me that vision doesn't need a separate 'has ball' function isn't really needed if we have the is_point_in_grabbing_zone(x,y) function. If the ball enters that region of our robot, we just grab it and then assume that we have the ball. Otherwise, I would assume that grabbers would knock the ball far enough for the vision to pick it up. For other robots, we don't really need to know if they have the ball, right?
@Ramsey144 - what do you think?
I will now make a ball predictor which assumes that the ball is in the grabbing zone of another robot if it was in its grabbing zone for a while (median) and then disappeared.
We'll also need to define what in-range is. This might require a new 'robot.json' config file for each robot (if so, also store robot name & avatar?), or have it passed from the planner. Otherwise, we could share the same range. I'd advise against having it set on the UI because that implies a two-way binding, i.e. if you change it on the UI, it also changes it on the robot, which would be a lot of work (?) to implement.