circuitikz 中的电线交叉点

circuitikz 中的电线交叉点

我想在交叉口处建立节点

在此处输入图片描述

        \begin{tikzpicture}
         \newcommand\T{1.5}                  
         \foreach \a in {30,90,...,330}
         \draw (\a:\T) to[short,*-*] (\a+120:\T);
          \draw (90:\T) to[short,-o] +(90:0.4)node[right] {C}; 
          \draw (270:\T) to[short,-o] +(270:0.4)node[left] {D};   
         \end{tikzpicture}

在此处输入图片描述

答案1

使用部分运算符将三角形的边三等分。替换

\draw (\a:\T) to[short,*-*] (\a+120:\T);

经过

\draw let \p1=(\a:\T), \p2=(\a+120:\T) in
  (\p1) to[short,*-*] ($(\p1)!1/3!(\p2)$) -- (\p2);

这将在每条线的起点和线的 1/3 处绘制一个黑点。这足以绘制所有点。

如果您想通过名称访问交叉点以添加标签或进一步的连接,请coordinate向绘制命令添加说明。

\draw let \p1=(\a:\T), \p2=(\a+120:\T) in
  (\p1) coordinate (\a a)
        to[short,*-*] ($(\p1)!1/3!(\p2)$) coordinate (\a b)
        -- (\p2);

例如,第一条线是从 30 度到 150 度的水平线。顶点将命名为(30a)(30b)(90b)(150a)。现在这两个节点可以标记为

\draw (30b) node[below]{B};
\draw (90b) node[below]{A};

在此处输入图片描述

\documentclass[border=3pt]{standalone}
\usepackage{circuitikz}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}
  \newcommand\T{1.5}                  
  \foreach \a in {30,90,...,330}
    \draw let \p1=(\a:\T), \p2=(\a+120:\T) in
      (\p1) coordinate (\a a)
            to[short,*-*] ($(\p1)!1/3!(\p2)$) coordinate (\a b)
            -- (\p2);
  \draw (90a)  to[short,-o] +(0, 0.4)node[right] {C}; 
  \draw (270a) to[short,-o] +(0,-0.4)node[left ] {D};
  \draw (30b) node[below] {B};
  \draw (90b) node[below] {A};
\end{tikzpicture}
\end{document}

答案2

在这里,选择您的样式:别针或标签。

输出

在此处输入图片描述

代码

\documentclass[tikz]{standalone}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}
  \newcommand\T{1.5}                  
  \foreach \a in {30,90,...,330}
  {
    \draw (\a:\T) to[short,*-*] 
      node (myNode-\a) [red, pos={1/3}, circle, draw] {} 
      %node [blue!40, pos={-1/3}, circle, fill]{} % strange...
      (\a+120:\T) ;
  }
  \draw (90:\T) to[short,-o] +(90:0.4)node[right] {C}; 
  \draw (270:\T) to[short,-o] +(270:0.4)node[left] {D};   

  \node [circle, pin=below:A] at (myNode-30) {} ;
  \node [circle, label=below:B] at (myNode-330) {} ;
\end{tikzpicture}
\end{document}

相关内容