2

I aim to set up a rosetta vignette looking like the flower part of this image, although I want the labels slanted, or rotated:

mathematics competencies

I imagine this can be achieved with node center in polar coordinates, calculating label slant from angular coordinate. Hence, I am looking to run some PSTRICKS macro (involving \multido).

I have achieved to put a single label using 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}

providing

![enter image description here However, I imagine to deploy \multido in a way similar to

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

The failing intention of the ...]\multidocount is to index a PS array of strings.

But my definition and or my referencing of the PostScript array of strings does not work -- I tried, too, to enclose in square brackets: ...][\multidocount]

I would be grateful for suggestions as to how I could

  1. declare an 3-element array of strings (in the full LaTEX file, there will be 8 labels, in accordance with the image above, but 3 in accordance with MWE),
  2. access each element in turn, as \multido iterates
  3. (and possibly add a reference point for later annotations at the tip of each lobe or petal, again accessible through some data structure, possibly an array of polar coordinates).

1 Answers1

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}

enter image description here

  • your suggestion using arrayjobx will work fine in a single-file implementation. Making the preamble more lightweight by placing the statements \newarray\Names \readarray{Names}{Tankegang&Problembehandling&Modellering} within document (immediately preceeding \multido. That seems compilable, so I accept. – Morten Engelsmann Jun 26 '17 at 09:51