The surface show below is very beautiful; however, I don't know its function either as an implicit function or in parametric form.
Anyone have an idea about it and how to draw it with Mathematica?
The surface show below is very beautiful; however, I don't know its function either as an implicit function or in parametric form.
Anyone have an idea about it and how to draw it with Mathematica?
Consider this:
ParametricPlot3D[
RotationTransform[a, {0, 1, 0}][{0, 0, Sin[3 a] + 5/4}],
{a, 0, 2 Pi}, Evaluated -> True]
Now rotate this around a circle, while rotating it at the same time around its' origin:
ParametricPlot3D[
RotationTransform[b, {0, 0, 1}][{6, 0, 0} +
RotationTransform[a + 3 b, {0, 1, 0}][{0, 0, Sin[3 a] + 5/4}]],
{a, 0, 2 Pi}, {b, 0, 2 Pi}, PlotPoints -> 40, Evaluated -> True]
EDIT:
A color function, omitting surface mesh, fixing direction of rotation and adding a hint of transparency, like the original:
ParametricPlot3D[
RotationTransform[b, {0, 0, 1}][{6, 0, 0} +
RotationTransform[a - 3 b + Pi, {0, 1, 0}][{0, 0, Sin[3 a] + 5/4}]],
{a, 0, 2 Pi}, {b, 0, 2 Pi}, PlotPoints -> 40,
ColorFunction -> (RGBColor[#, 0, 1 - #, 4/5] &[1/2 + {1, -1}.{#1, #2}/2] &),
Mesh -> False, Evaluated -> True]
This might be slightly more intuitive way to write ColorFunction
using Blend
and Opacity
in PlotStyle
:
ParametricPlot3D[
RotationTransform[b, {0, 0, 1}][{6, 0, 0} +
RotationTransform[a - 3 b + Pi, {0, 1, 0}][{0, 0, Sin[3 a] + 5/4}]],
{a, 0, 2 Pi}, {b, 0, 2 Pi},
PlotPoints -> 40,
PlotStyle -> Opacity[4/5],
ColorFunction -> (Blend[{Red, Blue}, 1/2 + {1, -1}.{#1, #2}/2] &),
Mesh -> False, Evaluated -> True]
RotationTransform
$\endgroup$
Commented
Nov 24, 2013 at 13:11
Abs[]
them for a rep boost :D
$\endgroup$
I'm adding this answer to put on record an answer to the second part the question, "what is the parametric equation?".
The parametric equation is implicit in Kirma's RotationTransform
expression. To extract it, one need simply write something like
Clear[a, b]
quoit[a_, b_] :=
Evaluate @ RotationTransform[b, {0, 0, 1}][{6, 0, 0} +
RotationTransform[a - 3 b + Pi, {0, 1, 0}][{0, 0, Sin[3 a] + 5/4}]]
The function defined by the above expression, looks like this
Definition @ quoit
quoit[a_, b_] := { Cos[b] (6 - (5/4 + Sin[3 a]) Sin[a - 3 b]), (6 - (5/4 + Sin[3 a]) Sin[a - 3 b]) Sin[b], -Cos[a - 3 b] (5/4 + Sin[3 a]) }
{0,1,0}
is inside the first transform.
$\endgroup$