0
$\begingroup$

I want to do this:

I have got one object (Empty.001) and I want to move this object only on circle path. I have got second object (Empty) and I can move this second object without limitation. I want to set this: move with second object (Empty) and first object (Empty.001) will move automatically on the circle and distance between objects will be lowest (second object will be on the nearest point on circle from first object).

enter image description here

$\endgroup$

1 Answer 1

4
$\begingroup$

Circle path

You can give your object Copy Location constraint with Empty as a Target and Limit Distance constraint from another Empty with Distance as the radius of you circle. Copy Location tries to move the object to the location of your empty but Limit Distance wont let it. Now you can move another empty as you wish and the object tries to get it but will stay with the circle. Also Limit Distance Clamp Region needs to be On Surface.

You don't need the circle. Just your object and two empties.

Circle path

Circle animation

Square/Rectangle path

To make to object follow a square or a rectangle you still need your object and two empties. First you have to Copy Location of the empty you want to follow. Next give your object a Limit Distance constraint with Clamp Region Outside a Distance that is greater then the farthest point of your rectangle. Last give your object a Limit Location constraint with minimum Minimum x and y and Maximum x and y that give you the size of your rectangle¨.

Follow the square

Animation square

$\endgroup$
2
  • $\begingroup$ Thank you. It is what I want, but I have got a question. Is it possible to use 2D or 3D shape (square, ellipse, triangle, ...) for boundary? In this case my object cannot cross the border and it can move only on the surface? Like in my first question but Empty.001 would move on the square (not circle). $\endgroup$
    – fram4
    Commented Sep 24, 2020 at 17:57
  • $\begingroup$ I don't know how to make the object stay on the surface of another object and follow an empty. These are the ways to get the result you want but every situation is different and requires little bit different approach. They are not "every size fits all" kind of solutions. Maybe somebody else knows an universal solution. $\endgroup$
    – Joonas
    Commented Sep 25, 2020 at 12:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .