One of my pet peeves is when I zoom in to a 3D model and the rotation is somewhere far off screen, most of the time the model center. It makes it very difficult to orient yourself when rotation also moves what I was looking at off screen.
I think Google Earth (desktop) does it well, it rotates around the point where the mouse cursor is pushed. So you push the center button, it shows a marker where the pointer was, and then you rotate by moving the mouse.
At the very least I think the rotation center should be on the surface and on screen.
I think Google Earth has two options - you can keep the "camera" fixed and change the direction it's looking, or - you can rotate around a point on earth. I can't remember the details but this is accomplished using different modifier keys + the arrow keys.
I think Google Earth (desktop) does it well, it rotates around the point where the mouse cursor is pushed. So you push the center button, it shows a marker where the pointer was, and then you rotate by moving the mouse.
At the very least I think the rotation center should be on the surface and on screen.