Two of the most unintuitively non-controllable aspects of Blender modeling have just become much easier to work with:
Blender object origins and object local orientation.
Blender only allows one to position the object origin at an arbitrary location by first placing the 3D cursor first and then setting the origin to its position. But what if you want to move the origin along X, Y or Z axis, or you want to snap the origin onto an edge or on an objects surface? And what with modifiers that depend on the origin for their positioning; how can you set them precisely and intuitively? FlexOrigin provides. Same goes for changing the local orientation of an object. Once again, Flexorigin comes to the rescue.
FlexOrigin - steer or even animate your object origins and local orientation with empties.
FlexOrigin utilizes a system that couples an empty to the origin of your object. The empty is continuously and robustly assigned to the object origin, meaning that as long as the empty remains in the scene, all translation of the empty will result in the according translation of the object origin. This allows using Gkey or the manipulator to interactively move the object origin, while allowing also for snapping (during transform) to volume/face/edge/vertex/increment, using the standard controls for transform snapping. It also allows animating this empty supplying you with means to animate the object origin or object local orientation. Control empties can be created for as many objects as you wish, and are saved with your .blend file. The origin can still be set by standard methods, the control empty will then move automatically to the new origin position. As an added bonus, the same empty that controls the origin, can be used to control the local orientation of the associated object by rotating it using Rkey or the manipulator. Update of the origin and the local orientation when transforming the empty is continuous and real-time, meaning this system is particularly suited for transforming the origin of objects that have modifiers assigned that are origin dependent, like Mirror or Cast, giving direct feedback, allowing for precise and visual modifier positioning. Take control of your origins now!