短い正弦波のシンボルに似せて、正弦波を含む円形のノードを描きます。

短い正弦波のシンボルに似せて、正弦波を含む円形のノードを描きます。

TikZ でこれを行うにはどうすればいいですか。
下のリンクに示す図のように、短い正弦波のシンボルに似た正弦曲線を含む円形ノードを描画したいと思います。円は描画できますが、その中に正弦曲線を配置する方法がわかりません。 図

答え1

これを行う簡単な方法は を使用することです。追加の魔法を使用すると、 が画像の左下隅、が画像の右上隅になるpath pictureようにパス画像を設定できます。これにより、パス画像の要素を指定するのが非常に簡単になります。(-1,-1)(1,1)

\documentclass[tikz,border=5]{standalone}
\tikzset{%
  do path picture/.style={%
    path picture={%
      \pgfpointdiff{\pgfpointanchor{path picture bounding box}{south west}}%
        {\pgfpointanchor{path picture bounding box}{north east}}%
      \pgfgetlastxy\x\y%
      \tikzset{x=\x/2,y=\y/2}%
      #1
    }
  },
  sin wave/.style={do path picture={    
    \draw [line cap=round] (-3/4,0)
      sin (-3/8,1/2) cos (0,0) sin (3/8,-1/2) cos (3/4,0);
  }},
  cross/.style={do path picture={    
    \draw [line cap=round] (-1,-1) -- (1,1) (-1,1) -- (1,-1);
  }},
  plus/.style={do path picture={    
    \draw [line cap=round] (-3/4,0) -- (3/4,0) (0,-3/4) -- (0,3/4);
  }}
}
\begin{document}
\begin{tikzpicture}[minimum size=0.75cm]
\node [circle, draw, sin wave] at (-1, 0) {};
\node [circle, draw, plus]     at ( 0, 0) {};
\node [circle, draw, cross]    at ( 1, 0) {};
\end{tikzpicture}
\end{document}

ここに画像の説明を入力してください

答え2

ノード内に tikz 画像として正弦曲線を配置できます。

\begin{tikzpicture}
\node[draw,circle,inner sep=-0.4pt] at (0,0)
{\tikz \draw[scale=0.15,domain=-3.141:3.141,smooth,variable=\t]
plot (\t,{sin(\t r)});};
\end{tikzpicture}

ここに画像の説明を入力してください

関連情報