带旋转标签的 PostScript Rosetta 使用多排版

带旋转标签的 PostScript Rosetta 使用多排版

我的目标是设置一个看起来像该图像的花朵部分的玫瑰花图案,尽管我希望标签倾斜或旋转:

数学能力

我想这可以通过极坐标中的节点中心来实现,从角坐标计算标签倾斜度。因此,我希望运行一些 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不过,我想以类似的方式 部署

\multido{\mbenAngle=112.5+45}{3}{%
  \rput{!\mbenAngle 180 sub}%
       (2;\mbenAngle)%
       {[(Tankegang) (Problembehandling) (Modellering)]\multidocount}%
 }

失败目的...]\multidocount 是索引 PS 字符串数组。

但是我对 PostScript 字符串数组的定义和引用不起作用——我也尝试将其括在方括号中:...][\multidocount]

我将非常感激有关如何

  1. 声明一个包含 3 个元素的字符串数组(在完整的 LaTEX 文件中,将有 8 个标签,如上图所示,但根据 MWE,有 3 个标签),
  2. 依次访问每个元素,\multido迭代
  3. (并且可能在每个叶瓣或花瓣的尖端添加一个参考点,以供以后注释,同样可以通过某些数据结构访问,可能是极坐标数组)

答案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}

在此处输入图片描述

相关内容