Update: For interactive display, rendering the polyhedron once and using GeometricTransformation with desired transformation is faster:
ir = PolyhedronData["Dodecahedron", "ImplicitRegion"]; rp = RegionPlot3D[ir, PlotPoints -> 70]; {xaxis, yaxis, zaxis} = IdentityMatrix[3]; Panel @ Manipulate[Row[Panel[ Graphics3D[{{EdgeForm[], FaceForm[], Cuboid[{-3, -3, -3}, {3, 3, 3}], Red, PointSize[Large], Point[ctr]}, EdgeForm[None], FaceForm[Opacity[.5]], GeometricTransformation[rp[[1]], RotationTransform[t, #]]}, Axes -> True, PlotRange -> {{-3, 3}, {-3, 3}, {-3, 3}}, AxesOrigin -> {0, 0, 0}, Boxed -> False, ImageSize -> 300, PlotLabel -> #]] & /@ {xaxis, yaxis, zaxis}], {{t, 0}, -Pi, Pi}, Paneled -> False] Anchor rotation at, say, vv = {2, 1, 1}:
vv = {2, 1, 1}; centroid = {0.0000305046, -0.0000984894, -0.0000394806}; Manipulate[Row[Panel[ Graphics3D[{{EdgeForm[], FaceForm[], Cuboid[{-3, -3, -3}, {3, 3, 3}], Red, PointSize[Large], Point[vv]}, Dashed, Thick, Opacity[1, Blue], GeometricTransformation[Line[{centroid, vv}], RotationTransform[t, #, vv]], EdgeForm[None], FaceForm[Opacity[.5]], GeometricTransformation[rp[[1]], RotationTransform[t, #, vv]]}, Axes -> True, PlotRange -> {{-6, 6}, {-6, 6}, {-6, 6}}, AxesOrigin -> {0, 0, 0}, Boxed -> False, ImageSize -> 300, PlotLabel -> #]] & /@ {xaxis, yaxis, zaxis}], {{t, 0}, -Pi, Pi}, Paneled -> False] 

