PSTricks 绘图:对称图形

PSTricks 绘图:对称图形

考虑下面的图片:

数字

我想使用 PSTricks 绘制这个图形。

我的问题是两端;中间的“十字”根本没有问题。

以下是我目前所掌握的信息:

\documentclass{article}

\usepackage{multido}
\usepackage{pstricks}

\begin{document}

\begin{pspicture}(-4,-4)(4,4)
 \psset{fillstyle = solid}
  \psframe[fillcolor = black](-4,-4)(4,4)
  \multido{\i = 0+90}{4}{\rput{\i}(0,0){%
    \pspolygon[
      linecolor = white,
      fillcolor = white
    ](0,0)(0,2.5)(0.5,2.5)(0.5,0.5)(2.5,0.5)(2.5,0)}}
\end{pspicture}

\end{document}

输出

更新

下图显示了最靠近边缘的“凸起”(在 Herbert 的回答中),我想去掉它。我想“压平”末端,使其看起来更像原始图片。

凸

答案1

\documentclass{article}
\usepackage{multido}
\usepackage{pstricks}
\makeatletter
\def\psElement{\pst@object{psElement}}
\def\psElement@i{{%
  \addbefore@par{xunit=0.65,fillcolor=\pslinecolor,fillstyle=solid}%
  \use@par
  \pscustom[]{%
    \psline(0.5,0)(0.5,1)%
    \pscurve(0.7,1.25)(1,1.15)(0.9,1.05)(1.1,0.9)(1.4,1.1)(1.2,1.6)(0.9,1.7)(0.2,1.5)(0,1.2)
    \psline(0,0)
    \closepath}}}
\def\psmySymbol{\pst@object{psmySymbol}}
\def\psmySymbol@i(#1){{%
  \pst@killglue
  \use@par
  \multido{\i=0+90}{4}{\rput{\i}(#1){%
        \psElement\psscalebox{-1 1}{\psElement}}}}}
\makeatletter
\begin{document}

\begin{pspicture}(-2,-2)(6,2)
\psframe*[linecolor=black](-2,-2)(6,2)
\psmySymbol[linecolor=white](0,0)
\psmySymbol[linecolor=red!30](4,0)
\end{pspicture}

\end{document}

在此处输入图片描述

修改后的路径:

 \pscurve(0.7,1.25)(1,1.15)(0.9,1.05)(1.1,0.9)(1.4,1.1)(1.2,1.4)(0.9,1.5)%
         (0.2,1.4)(0,1.2)

在此处输入图片描述

相关内容