Manipulate[ (*by Nasser M. Abbasi 6/30/14*) thick = 0.05 r; spins = Table[{{0, 0, 0}, {0, r Cos[x], r Sin[x]}}, {x, 0., 2 Pi, 2 Pi/n}]; wheel = Table[{0, r Cos[u], r Sin[u]}, {u, 0., 2 Pi, 2 Pi/40}]; Graphics3D[Rotate[GraphicsGroup[ { Cylinder[{{-thick, 0, 0}, {thick, 0, 0}}, thick], Tube[#, thick/2] & /@ spins, Tube[wheel, thick] }], z, {1, 0, 0}], Axes -> False, AxesLabel -> {"x", "y", "z"}, PlotRange -> {{-.2, .2}, {-1.1, 1.1}, {-1.1, 1.1}}, SphericalRegion -> True, Boxed -> False, ImagePadding -> 2, ImageSize -> 350 ], {{z, 0, "angle"}, 0, 2 Pi, .01, ImageSize -> Tiny, Appearance -> "Labeled"}, {{r, 1, "radius"}, .2, 1, .01, ImageSize -> Tiny, Appearance -> "Labeled"}, {{n, 5, "number of rods"}, 3, 20, 1, ImageSize -> Tiny, Appearance -> "Labeled"}, ControlPlacement -> Left, Alignment -> Center, ImageMargins -> 0, FrameMargins -> 0 ]