GlowScript 3.1 VPython
scene.autoscale=0
m=ellipsoid(pos=vec(0,.5,1),axis=vec(1,.5,.5),size=vec(1,6,10),color=color.orange)
c1=cylinder(radius=1, axis=vector(1,0,0),pos=vec(0,1,0),color=color.yellow, length=5)
c2=cylinder(radius=1, axis=vector(-1,0,0),pos=vec(0,1,0),color=color.yellow, length=5)
f=compound([m,c1,c2])
c=cylinder(radius=.5,color=color.blue,axis=vec(0,4,0))
b=box(size=vec(2,2,2),color=color.cyan, pos=vec(0,0,0))
b2=box(size=vec(2,2,2),color=color.cyan,pos=vec(0,4,0))
f2=compound([c,b,b2]),pos=vec(-6,0,0)
#compund puts objects together and make it a whole object
while True:
rate(1000)
f.rotate(angle=pi/100,origin=vec(0,.5,0), axis=vec(1,0,0))
f2.rotate(angle=pi/100,origin=vec(0,1,0), axis=vec(0,1,0))