
I have given a diagram of my current small problem that I need help with. My main purpose is to keep the point from going outside the circle. Nothing else.
The center of the circle is positioned at (x, y).
I only solved a little bit of the problem, and that is the collision detection part of my problem, as given below:
public void bound(Point p, Circle c){
double distance = Math.hypot(p.x - c.x, p.y - c.y);
if (distance >= c.radius){
//Clueless from here on out.
}
}
The part where I left a comment is the spot I couldn’t figure anything out. I did tried to set the point’s velocityX and velocityY to 0, but I realized the point will just stay put whenever it touches the circle.
So, I’m sort of stuck.
I have resolved this issue.
I tried Oli Charlesworth’s method from the comments, but it made things more… “complicated” than I expected. Someone else mentioned I used a completely 100%, vector-based algorithm, since I’m relying a lot on vector-based movements.
TIPS TO THOSE WHO DO READ THIS: