How-To:

Blender - Precisely Set Object Origin

I frequently need to reset an object's origin in Blender, mostly because it helps with positioning and animating (usually as a pivot or rotation pint). The thing about Blender is that how to do things isn't always obvious. So I'm using this to keep notes for myself.

Standard Method (Blender 2.9+):

In "Object Mode", use the following menu: Object → Set Origin

This has several options, but none of them lets us really put the origin exactly where we want, unless we can put the cursor precisely where we need it. To do this, we need to switch to "Edit Mode".

Precise Method (Blender 2.9+):

In "Edit Mode", select the cursor tool (shift+spacebar, spacebar), and click where you would like to place the cursor. Handy, but not precise. We can be very precise by using vertex points on the object to specify the cursor location. If you have a vertex exactly where you want the origin, just select that vertex. Otherwise, we can place the cursor at the center of several vertices.

Once we have the proper vertices selected, we can snap the cursor to the using Shift+S → "Cursor to Selected" If we have multiple vertices selected, Blender uses the average of the selected points to determine the cursor location.

We then go back to "Object Mode" and use Object → Set Origin → Origin to 3D Cursor

Now the object can rotate from the point we set. To reset the cursor to the world origin, use Shift+C.