在 PSTricks 中绘制二次曲面

在 PSTricks 中绘制二次曲面

我正在尝试制作遵循以下插图的二次曲面图托马斯微积分书。其中一个例子就是椭圆体如下所示: 在此处输入图片描述

我目前的工作如下:

\documentclass[10pt,a4paper]{report}
\usepackage[width=8.29in, height=11.64in, left=0.5in, right=0.5in, top=0.5in, bottom=0.5in]{geometry}

\usepackage{pstricks, pstricks-add, pst-3dplot}

\begin{document}
\psset{unit=1}
\begin{pspicture*}(-5,-5)(5,6.5)
\pstThreeDCoor[linecolor=black,linewidth=1pt,IIIDxTicksPlane=xz, IIIDyTicksPlane=yz,spotX=180,xMin=-4,xMax=5,yMin=-2.25,yMax=4,zMin=-5,zMax=5,nameX=$x$, nameY=$y$, nameZ=$z$, labels=none] 


\parametricplotThreeD[xPlotpoints=200, linecolor=blue, linewidth=1pt, plotstyle=curve, algebraic](0,TwoPi){1*cos(t) | 2*sin(t) | 0}   % trace on xy-  plane

\parametricplotThreeD[xPlotpoints=200, linecolor=red, linewidth=1pt, plotstyle=curve, algebraic](0,TwoPi){1*cos(t) | 0 | 3*sin(t)}   % trace on xz-plane 


\parametricplotThreeD[xPlotpoints=200, linecolor=red, linewidth=1pt, plotstyle=curve, algebraic](0,TwoPi){0 | 2*cos(t) | 3*sin(t)} % trace on the yz-plane 



\end{pspicture*}
\end{document}

上述代码产生以下结果:

在此处输入图片描述

我不知道如何制作如上图所示的实际椭圆体(即蓝色椭圆体)。我使用技巧因为我的其他一些作品也使用 PSTricks 编码。我可以使用 PSTricks 模仿或复制上面的插图吗?

先感谢您。

答案1

这是一个pst-solides3d更有意义的启动器:

\documentclass{article}
\usepackage{pst-solides3d,pst-plot}
\definecolor{coquille}{rgb}{0.984 0.95 0.718}

\begin{document}
\begin{pspicture}(-3,-3)(3,4)
\psset{viewpoint=20 20 5, Decran=40,lightsrc=viewpoint,action=draw*}
\psSolid[object=ellipsoid,a=2,b=2,c=4,
  ngrid=54 24,base=0 360 -90 90,fillcolor=coquille,linewidth=0.01,
  intersectiontype =0,
  intersectionplan={[0 0 1 -1] [0 0 1 1] [2 0 1 1]},
  intersectionlinewidth=2 2 2,
  intersectioncolor=(blue) (red) (green)]
\axesIIID(2,2,4)(4,4,5)
\end{pspicture}

\end{document}

在此处输入图片描述

但是您需要该软件包的最新版本,您可以在这里或明天在您的系统上通过 CTAN 进行更新: https://hvoss.org/~voss/pst-solides3d.zip

运行速度lulalatex比 慢xelatex。3d 对象的计算量很大。

draw与绘制选项和垂直线相同:

\begin{pspicture}(-3,-3)(3,4)
\psset{viewpoint=20 20 5, Decran=40,lightsrc=viewpoint,action=draw}
\psSolid[object=ellipsoid,a=2,b=2,c=4,opacity=0.5,
  ngrid=54 24,base=0 360 -90 90,fillcolor=coquille,linewidth=0.001,
  linecolor=black!15,
  intersectiontype =0,
  intersectionplan={[0 0 1 -1] [0 0 1 1] [-1 2 0 0]},
  intersectionlinewidth=2 2 2,
  intersectioncolor=(blue) (red) (green)]
\axesIIID(2,2,4)(4,4,5)
\end{pspicture}

在此处输入图片描述

相关内容