Question about RotationTransform function in Mathematica

Background:

a = 0; b = 0; c = 0; Manipulate[Graphics3D[ GeometricTransformation[ {Cuboid[{0, 0, 0}, {1, 1, 1}]}, {RotationTransform[x, {1, 1, 0}, {a, b, c}]}], ViewPoint -> Left], {x, 0, 2 \[Pi]}] 

My question is about RotationTransform with the following signature:

  RotationTransform[x, {1, 1, 0}, {a, b, c}] 

The documentation says: "gives three-dimensional rotation around the w axis fixed at p", in the example above w = {1,1,0} and p = {a, b, c}.

To my surprise, the rotation works the same regardless of what values โ€‹โ€‹I assign (a, b, c). I assume that I do not understand the documents, I made a mistake somewhere. I would expect at least another rotation for different values โ€‹โ€‹of a, b, c. A change in the vector w behaves as expected.

Please explain purpose p.

+6
source share
2 answers

Consider the following example from the help:

 gr={Cuboid[],AbsolutePointSize[10],Opacity[1],{Magenta,Point[{0,0,0}]}, {Green,Point[{1,1,1}]}}; p = {1,1,1}; Graphics3D[{{Opacity[.35], Blue, gr}, GeometricTransformation[{Opacity[.85], Red, gr}, RotationTransform[Pi/6, {0, 0, 1}, p]]}, Boxed -> False] 

enter image description here

And now with:

 p={1,0,0}; 

enter image description here

+6
source

Perhaps it will be clear. It has an effect. I show the anchor point and axis.

 Manipulate[ Module[{w={1,0,0},p={-2,2}}, Graphics3D[ { {Opacity->.4,GeometricTransformation[ {Cuboid[{0,0,0}]},RotationTransform[angle,w,{a,b,c}]] }, {Blue,PointSize[0.05],Point[{a,b,c}]}, {Red,Thick,Line[{{a,b,c},{a,b,c}+w}]} }, ImageSize->300, ImagePadding->2,AxesOrigin->{0,0,0}, ImageMargins->2,ViewAngle->All, Axes->True, Ticks->None, PlotRange->{p,p,p} ] ], {angle,0,2 \[Pi],ImageSize->Tiny}, {{a,0,"a"},0,1,.1,Appearance->"Labeled",ImageSize->Tiny}, {{b,0,"b"},0,1,.1,Appearance->"Labeled",ImageSize->Tiny}, {{c,0,"c"},0,1,.1,Appearance->"Labeled",ImageSize->Tiny}, ControlPlacement->Left ] 

enter image description here

+4
source

Source: https://habr.com/ru/post/893421/