4

Mathematica と入力がある場合:

ParametricPlot3D[{Sin[u], Sin[v], Sin[u + v]}, {u, 0, 2 Pi}, {v, 0, 2 Pi]

側面がつぶれた立方体のような 3D ソリッドを生成します。私がやりたいことは、水平面でこの立体の断面をとることです: z = 0z = 1z= -1z= 1/2、およびz= -1/2

これらの断面のプロットを生成するコマンドは何ですか?

4

2 に答える 2

6

RegionFunctionこれは、サーフェスをプロットできる場所を決定するブール条件である を指定することで実行できます。ここでは、使用します

RegionFunction -> Function[{x, y, z}, z < a]

どこで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}
]

次に、アニメーションとしてエクスポートしてGIF、以下に含めます。

Export["section.gif", Join[t, Rest[Reverse[t]]]]

セクション

于 2012-05-03T02:52:33.113 に答える