2012-05-02 25 views
4

如果你有數學和輸入:斷面 - 數學

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

你會生成3D實體,看起來像一個立方體與邊粉碎。我想要做的是拿這個實體的橫截面與水平面:z = 0,z = 1,z= -1,z= 1/2z= -1/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]]]] 

Sections

+0

謝謝您的幫助! – user1371252

3

只得到交集曲線您可以使用MeshFunctionsMesh選項,例如

ParametricPlot3D[{Sin[u], Sin[v], Sin[u + v]}, {u, 0, 2 Pi}, {v, 0, 2 Pi}, 
MeshFunctions -> {#3 &}, Mesh -> {Range[-1, 1, 1/2]}, 
PlotStyle -> None, PlotPoints -> 50] 

Mathematica graphics

+0

非常感謝您的幫助! – user1371252