[pstricks] psdots: order of scaling and rotating

Herbert Voss Herbert.Voss at FU-Berlin.DE
Mon Nov 15 10:32:55 CET 2010


Am 14.11.2010 16:49, schrieb Uwe Siart:

> However, as a result I see a diamond rather than a rotated rectangle. I
> think this indicates that the dot symbol is rotated first and then
> scaled by 'dotscale=2 1'. So either there is a bug in the pstricks
> package or the documentation is wrong in this case.

Uwe,
yes and no. It is true for graphical objects which are
not defined by a character from the PSTricksFont:

\listfiles
\documentclass{article}
\usepackage{pstricks}

\makeatletter
\@namedef{psds at mysquare}{%
  /r1 DS .886 mul def /r2 r1 CLW sub def
  \pst at gdot{r1 \tx at SQ \pst at usecolor\psfillcolor r2 \tx at SQ}}
\makeatother

\begin{document}
\psscalebox{5}{%
\begin{pspicture}(1,1)
  \psdot[dotstyle=mysquare,dotscale=4 1](.5,.5)
\end{pspicture}}
\psscalebox{5}{%
\begin{pspicture}(1,1)
  \psdot[dotstyle=mysquare,dotscale=4 1,dotangle=45](.5,.5)
\end{pspicture}}

\end{document}

For characters from the PSTricksFont we have:

/FontDot {
  DS 2 mul dup matrix scale
  matrix concatmatrix exch
  matrix rotate
  matrix concatmatrix exch
  findfont exch makefont setfont } def

first scaled then rotated, but this is not important, because
PostScript itself uses the new build fontmatrix
and did it the other way round.

This is the behaviour from the beginning, the reason why we cannot
change it.

Herbert


More information about the PSTricks mailing list