我的目标是设置一个看起来像该图像的花朵部分的玫瑰花图案,尽管我希望标签倾斜或旋转:
我想这可以通过极坐标中的节点中心来实现,从角坐标计算标签倾斜度。因此,我希望运行一些 PSTRICKS 宏(涉及\multido
)。
我已经使用 MWE 放置了一个标签
\documentclass[]{standalone}
\usepackage[dvipsnames]{pstricks}
\begin{document}
\begin{pspicture}(-3.5,-3.5)(3.5,3.5)
\rput{!112.5 180 sub}(2;112.5){Tankegang}
\rput{!157.5 180 sub}(2;157.5){Problembehandling}
\rput{!202.5 180 sub}(2;202.5){Modellering}
\end{pspicture}
\end{document}
提供
\multido{\mbenAngle=112.5+45}{3}{%
\rput{!\mbenAngle 180 sub}%
(2;\mbenAngle)%
{[(Tankegang) (Problembehandling) (Modellering)]\multidocount}%
}
这失败目的...]\multidocount
是索引 PS 字符串数组。
但是我对 PostScript 字符串数组的定义和引用不起作用——我也尝试将其括在方括号中:...][\multidocount]
我将非常感激有关如何
- 声明一个包含 3 个元素的字符串数组(在完整的 LaTEX 文件中,将有 8 个标签,如上图所示,但根据 MWE,有 3 个标签),
- 依次访问每个元素,
\multido
迭代 - (并且可能在每个叶瓣或花瓣的尖端添加一个参考点,以供以后注释,同样可以通过某些数据结构访问,可能是极坐标数组)。
答案1
\documentclass[dvipsnames,pstricks]{standalone}
\usepackage{multido}
\usepackage{arrayjobx}
\newarray\Names
\readarray{Names}{Tankegang&Problembehandling&Modellering}
\begin{document}
\begin{pspicture}(-3.5,-3.5)(3.5,3.5)
\multido{\iA=1+1,\rA=112.5+60.0}{3}{%
\rput{!\rA\space 180 sub}(2;\rA){\Names(\iA)}}
\end{pspicture}
\end{document}