截面 - Mathematica

use*_*252 4 wolfram-mathematica

如果您有Mathematica并输入:

ParametricPlot3D[{Sin[u], Sin[v], Sin[u + v]}, {u, 0, 2 Pi}, {v, 0, 2 Pi]
Run Code Online (Sandbox Code Playgroud)

您将生成一个3D实体,看起来像一个侧面压碎的立方体.我想要做的就是利用这个坚实的横截面与水平面:z = 0,z = 1,z= -1,z= 1/2,和z= -1/2.

生成这些横截面图的命令是什么?

小智 6

这可以通过指定a来完成RegionFunction,这是一个布尔条件,用于确定允许绘制曲面的位置.在这里,你会使用

RegionFunction -> Function[{x, y, z}, z < a]
Run Code Online (Sandbox Code Playgroud)

a您想要相交平面的高度在哪里.为了说明这一点,我会制作一部电影:

t = Table[
  ParametricPlot3D[{Sin[u], Sin[v], Sin[u + v]}, {u, 0, 2 Pi}, {v, 0, 
    2 Pi}, RegionFunction -> Function[{x, y, z}, z < a], 
   PlotRange -> {{-1, 1}, {-1, 1}, {-1, 1}}], 
 {a, 1, -1, -.1}
]
Run Code Online (Sandbox Code Playgroud)

现在我将其导出为GIF动画,包括以下内容:

Export["section.gif", Join[t, Rest[Reverse[t]]]]
Run Code Online (Sandbox Code Playgroud)

第