找回密码
 快速注册
搜索
查看: 991|回复: 2

Mathematica画球面(阿基米德)螺线

[复制链接]

471

主题

945

回帖

9837

积分

积分
9837

显示全部楼层

青青子衿 发表于 2019-2-19 17:53 |阅读模式
本帖最后由 青青子衿 于 2019-3-1 11:06 编辑
  1. Manipulate[
  2. Show[ContourPlot3D[
  3.    x^2 + y^2 + z^2 == 1, {x, -1.2, 1.2}, {y, -1.2, 1.2}, {z, -1.2, 1.2},
  4.    Mesh -> None,
  5.    ContourStyle -> Directive[Yellow, Opacity[0.5]]],
  6.   ParametricPlot3D[{Sin[t/2], Cos[t/2] Sin[(k t)/2], -Cos[t/2] Cos[(k t)/2]},
  7.    {t, -2 \[Pi], 2 \[Pi]},
  8.    PlotStyle -> {Red, Thickness[0.01]}]], {k, 1, 20, 1}]
复制代码
\begin{align*}
\boldsymbol{r}(t)=\left\{\sin\frac{t}{2},\cos\frac{t}{2}\sin\frac{kt}{2},-\cos\frac{t}{2}\cos\frac{kt}{2}\right\}
\end{align*}
Clelia curve
en.wikipedia.org/wiki/Clélie
spherical (Archimedean) spiral

730

主题

1万

回帖

9万

积分

积分
93593
QQ

显示全部楼层

kuing 发表于 2019-2-19 21:27
画球的(ContourPlot3D[...] 这部分)可以用 Graphics3D[{Opacity[0.5], Yellow, Ball[{0, 0, 0}, 1]}] 代替。

730

主题

1万

回帖

9万

积分

积分
93593
QQ

显示全部楼层

kuing 发表于 2019-2-19 21:51
导出gif动图可以这样:
  1. test=Table[Show[Graphics3D[{Opacity[0.5],Yellow,Ball[{0,0,0},1]}],
  2. ParametricPlot3D[{Sin[t/2],Cos[t/2] Sin[(k t)/2],-Cos[t/2] Cos[(k t)/2]},{t,-2Pi,2Pi},PlotStyle->{Red,Thickness[0.01]}]],{k,1,15,0.2}];
  3. Export["test.gif",test]
复制代码
运行十几秒后在我的文档里就可以找到 test.gif 这个文件,不过这样生成的 gif 会稍微有点大,而且只循环两次,所以建议用其他工具再优化一下。
6273b251gy1g0c2nh5ryzg20a00avhdt.gif

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-4 11:59

Powered by Discuz!

× 快速回复 返回顶部 返回列表