Consider the following example. (This is either the last one or the second to last.)
Code
% pdflatex -shell-escape test.tex
\documentclass{article}
\usepackage{auto-pst-pdf,pstricks-add}
\usepackage[locale=DE]{siunitx}
\begin{document}
\begin{figure}
\def\radius{19.2}
\def\lige{33.3}
%\edef\bredde{\dimexpr2*\radius\relax\space}
\pstFPmul\bredde{2}{\radius}
%\edef\laengde{\dimexpr\bredde+\lige\relax\space}
\pstFPadd\laengde{\bredde}{\lige}
\centering
\psset{unit=0.168cm}
% \psset{unit=\psunit}
\begin{pspicture}(\laengde,\bredde)
\pcline(\radius,0)(!\radius\space \lige\space add 0)
\psarc(!\radius\space \lige\space add \radius\space){\radius}{270}{90}
\pcline(!\radius\space \lige\space add 2 \radius\space mul)%
(!\radius\space 2 \radius\space mul)
\psarc(\radius,\radius){\radius}{90}{270}
\psset{linestyle=dotted,arrows=|*-,offset=0pt}
\pcline(\radius,\radius)(0,\radius)
\ncput*{\SI{\radius}{\cm}}
\pcline[arrows=|*-|*](\radius,\radius)(!\radius\space \lige\space add \radius\space)
\ncput*{\SI{\lige}{\cm}}
\pcline(!\radius\space \lige\space add \radius\space)%
(!2 \radius\space mul \lige\space add \radius\space)
\ncput*{\SI{\radius}{\cm}}
\pcline(\radius,\radius)(\radius,0)
\pcline(\radius,\radius)(!\radius\space 2 \radius\space mul)
\pcline(!\radius\space \lige\space add \radius\space)%
(!\radius\space \lige\space add 0)
\pcline(!\radius\space \lige\space add \radius\space)%
(!\radius\space \lige\space add 2 \radius\space mul)
\end{pspicture}
\end{figure}
\end{document}
Output
Question
I have the desired output but the code is not very elegant. Furthermore, I still don't get how to use the \psunit
(see this answer).