![在 PStricks 中,以下 \psforeach 和 \multido 有什么区别?](https://linux22.com/image/387313/%E5%9C%A8%20PStricks%20%E4%B8%AD%EF%BC%8C%E4%BB%A5%E4%B8%8B%20%5Cpsforeach%20%E5%92%8C%20%5Cmultido%20%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%EF%BC%9F.png)
我的代码:
\documentclass[12pt,a4paper]{article}
\usepackage{amsmath,amssymb,newcent}
\usepackage{pstricks}
\usepackage{multido}
\usepackage{auto-pst-pdf}
\begin{document}
\begin{pspicture}(-.5,-1.5)(6.5,1.5)
\psforeach{\m}{.5,1.5,2.5,3.5,4.5,5.5}{\psline(0,\m)(\m,0)}
\end{pspicture}
\begin{pspicture}(-.5,-1.5)(6.5,1.5)
\multido{\n=0.5+1}{6}{\psline(0,\n)(\n,0)}
\end{pspicture}
\end{document}
编译结果:
问题:
这些命令是等效的!?。为什么会有差异?
答案1
为了等距值这没什么区别。但\multido
不能与类似的东西一起工作1, 1, 2, 3, 5, 8, ...
,当然,\multido
使用一些预定义的宏:
\i for integers
\n for natural numbers
\r for real
在你的例子中应该是
\multido{\r=0.5+1}{6}{\psline[linecolor=red](0,\r)(\r,0)}