Top: Table of contents
Up: Table of contents chapter 8
Next: 8.14 3D data plotting
Previous: 8.12 3d hidden

8.13 3d parametric function

此为 gnuplot 在 3d 中使用参数式的例子。gnuplot 设定变数为 u 和 v (即 x=f(u,v), y=g(u,v), z=h(u,v))。set view 45, 50,,2.5 为改变 3d 图形 投影到平面上的视角及图形放大的比例。

set parametric
set isosamples 50,10
set hidden
set title "parametric sphere"
set urange [-pi/2:pi/2]
set vrange [0:2*pi]
set zrange [-1:1]
set ztics -1.0,0.25,1.0
set view 45,50,,2.5
splot cos(u)*cos(v),cos(u)*sin(v),sin(u)
set parametric
set isosamples 50,10
set hidden
set title "parametric sphere"
set urange [-pi/2:pi/2]
set vrange [0:2*pi]
set zrange [-1:1]
set ztics -1.0,0.25,1.0
set view ,,,0.8
splot cos(u)*cos(v),cos(u)*sin(v),sin(u)

图 29: Example : 3d parametric function

此为使用 3d 参数式描绘一些典型的函数。

set parametric
set hidden
set title "Parametric Helix"
set isosamples 100,20
set urange [0:10*pi]
set vrange [0:2*pi]
set zrange [-0.6:0.6]
splot (1-0.1*cos(v))*cos(u),(1-0.1*cos(v))*sin(u),\
      0.1*(sin(v)+u/1.7-10)

图 30: Example : Parametrix Helix

set parametric
set hidden
set urange [-pi:pi]
set vrange [-pi:pi]
set isosamples 50,20
splot cos(u)+.5*cos(u)*cos(v),sin(u)+.5*sin(u)*cos(v),\
      .5*sin(v) with lines,1+cos(u)+.5*cos(u)*cos(v),\
      .5*sin(v),sin(u)+.5*sin(u)*cos(v) with lines

图 31: Example : Interlocking Tori


Top: Table of contents Next: 8.14 3D data plotting