The center() command should not be moving the object. It simply sets the rotation pivot point. Are you sure you are setting the center to the correct location? Here is an example that uses the cone model that comes with Vizard.
Code:
import viz
viz.go()
#Setup environment
viz.add('tut_ground.wrl')
viz.clearcolor(viz.SKYBLUE)
viz.move(0,0,-20)
#Spin cone
cone = viz.add('tut_cone.wrl')
cone.addAction(vizact.spin(0,1,0,90))
Since the cone if offset 8 meters from the origin it will spin around the origin. Now add the following code to the script:
Now the center is placed at the cones location, so it will spin around its local origin.