How to perfectly align rotated off-centre symmetrical object

I have a model that is symmetrical but it is off-centre and rotated.
I free hand moved and rotated it to the centre and then tried to symmetrize.
It’s clearly not aligned perfectly because it messes up the vertices along the axis.
Does someone have tricks to align it perfectly so a can continue to model on it?

  1. Fill one face on the symmetry plane (can either fill the whole thing or just pick some 3 points and make a triangle).
  2. Create a transform orientation from that new face, snap the 3D cursor to it, delete it.
  3. In object mode create an Empty (should be at 3D cursor), and do a Object Transform -> Align To Transform Orientation on it. Note that Blender 2.91 has a bug where that operator doesn’t automatically use your current transform orientation, you’ll have to open the properties and set it manually to the Face one you’ve created.
  4. Parent your object to the Empty.
  5. Reset rotation on the Empty. May also need to rotate it around X, Y or Z to get it upright.
  6. Unparent the object, pick ‘Clear Parent and Keep Transformation’.
  7. Apply rotation on the object.
  8. (Optional) May also need to move the origin, which should be easy with vertex snapping.
1 Like