Copy location constraints
Particularly in regard to
However, the origin is still not where I expected it. Blender seems to
put it in the center of the "launcher" vertex group. However, I would
like to have it in the center of both the launcher and the rocket
Similarly to the method used in my answer to this one How to get a Center Point from multiple Vertex Locations?
The copy location constraint can be subtargeted to a vertex group. And add more constraints for more vertex groups to get an average location, and see where this is before setting the origin.
Simple setup, empty displayed as a circle.
As a very basic example I have stretched the default cube in z and made the top face the "Top" vertex group, the bottom "Bottom"
An empty is added to the scene with two copy location constaints, the first with influence 1 targetting "Top" vertex group, and the second influence 0.5 the "Bottom"
There is some influence to from the vertex group weights, especially if they are zeroed.
Adjusting the second constraint influence moves the empty between them.
Further fine tuning can be achieved, by setting empty's modifier offset to true and tweaking empty location.
Once you are happy with the location of empty, snap the cursor to it and set the geometry from it.