0
$\begingroup$

I had this piece of program working before, and can't make it do the dynamic thing anymore. Can you help me put it back on track. Purpose is to show points moving along when the spheres (little ones) spin inside the big one, and if possible showing the space they construct (a lens, lemon like structure, which is Vesica Piscis 3D).

Animate[Graphics3D[{
    Thick, Green,
    {PointSize[Large], Point[{0, 0, 0 - Sin[d Degree]}],
     Point[{0 - Cos[d Degree], 0, 0}]},
    {Opacity[0.2],
     Sphere[{0, 0, 0}, 0.5], Orange},
    Thick, Blue,
    {PointSize[Large], Point[{0, 0, 0 - Sin[d Degree ]}],
     Point[{Sin[d Degree]/2, Cos[d Degree]/2, 0}],
     Point[{0 - Cos[d Degree], 0, 0}]},
    {Opacity[0.2],
     Sphere[{0, 0, 0.5}, 0.5], Yellow},
    Thick, Orange,
    {Opacity[0.2],
     Sphere[{0, 0, 0}, 1], Orange},
    {PointSize[Large], Point[{Cos[d Degree], 0, 0}],
     Point[{0, 0, Sin[d Degree ]}],
     Point[{Sin[d Degree], Cos[d Degree], 0}]
     }
    }] /. 
  Sphere[x__] :> Rotate[Sphere[x], -d Degree, {0, 0, 0} {d, 0, 360}], 
 AnimationRunning -> False]

Thanks in advance,

Cédric

$\endgroup$
  • $\begingroup$ In which version did this code work? $\endgroup$ – Alex Trounev Apr 29 at 14:33
  • $\begingroup$ It looks to me like the square bracket after {d, 0, 360} should be moved to after the {0, 0, 0}. As it stands, those two lists are going to be multiplied together which will cause issues, and Animate needs a variable to animate over, which I assume is supposed to be d. This seems to get the points working, but the spheres don't rotate because they need a vector to rotate about. Which direction are the spheres supposed to rotate? $\endgroup$ – MassDefect Apr 29 at 17:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.