Circuitikz 电线中的小间隙

Circuitikz 电线中的小间隙

这是我的代码:

\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows.meta, positioning}
\usepackage{verbatim}
\usepackage[american,siunitx]{circuitikz}
\usepackage{changepage}

\begin{document}
    \begin{center}  
        \begin{adjustwidth}{1.5em}{0em} 
            \begin{circuitikz}
                \draw(0, 0) node[draw, minimum width = 1.25cm, minimum height = 5 cm] (buff1){};
                \draw(10, 0) node[draw, minimum width = 1.25cm, minimum height = 5 cm] (buff2){};
                \draw[very thick]($(buff1.north east)!1/3!(buff1.south east)$) coordinate(nearBuff1) to [multiwire = 4] (nearBuff1 -| buff2.west);
                \draw($(buff1.north east)!2/3!(buff1.south east)$) coordinate(nearBuff2);
                %\draw($(nearBuff2)!2/5!(nearBuff2 -| buff2.west)$) node[yshift = 0.15cm] {\footnotesize Hello};
                %\draw(nearBuff2) -- (nearBuff2 -| buff2.west);
            \end{circuitikz}
        \end{adjustwidth}
    \end{center}
\end{document}

输出乍一看是正确的: 在此处输入图片描述

但当我放大时:

在此处输入图片描述

有人能解释一下为什么 multiwire 中有一个间隙吗?该间隙位于斜线的右侧(可能很难看到,但确实存在)?我认为这是某种错误或拼写错误circuitikz

顺便说一下,这是另一个使用多线的文件的快照:

在此处输入图片描述

这是来自 gmail 上的 pdf 查看器。

答案1

有时您可能会看到这个问题 --- 绘制双极子circuitikz是为了使外部线完全从相同的坐标开始(使用一些从一开始就存在的神奇代码,我不会触碰)。

无论如何,这些类型的伪影通常是由于查看器造成的(尤其是与细线和抗锯齿算法相关时)。您的代码片段okular(顺便说一句,它并不是最好的抗锯齿执行者)在最大分辨率(1600%)下没有显示中断:

在此处输入图片描述

而在 200% 时,那里有一种伪影(抗锯齿:)

在此处输入图片描述

问题是,当渲染找到像素的实际坐标时,它最终会将数字四舍五入(欢迎使用有限精度)。因此,有时您会遇到微小的间隙,有时会遇到一点叠加,这会导致抗锯齿时的第二种错误。

Zarko 在做什么他们的明智评论是从左到右重新绘制线条,并将其与从左到右的线条叠加 --- 在这种情况下,这是一个非常好的解决方案。另一个可能的解决方案是使用线帽(但您应该使两个矩形填充并处于前景中)。

相关内容