tikz:绘制一个带有厚白色边缘的图形,紧密连接两个大顶点?

tikz:绘制一个带有厚白色边缘的图形,紧密连接两个大顶点?

我正在努力绘制一个由两个顶点组成的图形,其中两个大顶点由一条白边连接。我有两个问题:

  1. 差距:边缘与我的顶点相切,而不是紧贴在它下面
  2. 白边:白色边缘不会显示在白色背景上;但是,我希望边缘能够出现清晰可见的(有点厚的)黑色边框

我的代码片段:

\begin{tikzpicture}
    \node [circle, fill=white, draw=black, minimum size = 1cm] (v2) at (-4,1) {};
    \node [circle, fill=white, draw=black, minimum size = 1cm] (v1) at (-7,5) {};
    \draw [line width = 1cm,draw=gray]  (v1) edge (v2);
\end{tikzpicture}

有点夸张,但希望它能说明我的第一个问题。这在论文或演讲中看起来会很草率。

我对问题 (2) 感到困惑。使用 tikz 边来绘制/填充顶点/节点之类的边是否错误?我应该使用什么来代替?

感谢您的时间!

答案1

background您可以通过在节点中心之间的图层上绘制连接并使用double线条来实现这些结果。

\documentclass[tikz,border=3mm]{standalone}
\usetikzlibrary{backgrounds}
\begin{document}
\begin{tikzpicture}
  \begin{scope}
    \node [circle, fill=white, draw=black, minimum size = 1cm] (v2) at (-4,1) {};
    \node [circle, fill=white, draw=black, minimum size = 1cm] (v1) at (-7,5) {};
    \scoped[on background layer]{
    \draw [line width = 1cm,draw=gray]  (v1.center) -- (v2.center);}
  \end{scope}   
  \begin{scope}[xshift=4cm]
    \node [circle, fill=white, draw=black, minimum size = 1cm] (v2) at (-4,1) {};
    \node [circle, fill=white, draw=black, minimum size = 1cm] (v1) at (-7,5) {};
    \scoped[on background layer]{
    \draw [double distance=6mm,thin]  (v1.center) -- (v2.center);}
  \end{scope}   
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容