如何在 tikzpicture 中为锯齿线添加饰面

如何在 tikzpicture 中为锯齿线添加饰面

考虑以下 MWE

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.pathmorphing}
\begin{document}
    \begin{center}
        \begin{tikzpicture}
        \draw[thick] (3,-0.5)--(3,-0.8)--(0.2,-0.8)--(0.2,0.8)--(3,0.8)--(3,0.5);
        \draw[thick,decoration={zigzag,segment length=2mm}] decorate{(3,-0.5)--(3,0.5)};
        \end{tikzpicture}
    \end{center}
\end{document}

是此代码显示的输出:

请注意,锯齿形和直线结合的地方没有很好的完成,如图所示数字。

如何实现正确的整理?

答案1

将命令拆分\draw成两个并不是一个好主意。尝试这样做:

\begin{tikzpicture}
\draw[thick] (3,-0.8)--(0.2,-0.8)--(0.2,0.8)--(3,0.8)--(3,0.5) decorate [decoration={zigzag,segment length=2mm}] { -- (3,-0.5)} -- cycle;
\end{tikzpicture}

结果(放大):结果

答案2

您的图形由两条路径组成,因此不是封闭的,这就是为什么存在这种不连续性。这个想法是制作一条封闭的路径,并使用选项pre=lineto,pre length=5pt,post=lineto,post length=5pt仅给出矩形四个顶点的坐标。

截屏

\documentclass[tikz,border=5mm]{standalone}
\usetikzlibrary{decorations.pathmorphing}
\begin{document}

\begin{tikzpicture}
\draw[thick](3,-0.8)--(0.2,-0.8)--(0.2,0.8)--(3,0.8) 
        decorate[decoration={zigzag,segment length=2mm,pre=lineto,pre length=5pt,post=lineto,post length=5pt}] {--cycle};
\end{tikzpicture}

\end{document}

相关内容