`to` を使って角を描く

`to` を使って角を描く

点(0,0)と点(1,1)を水平線と垂直線で結ぶことができることは分かっています。

\draw (0,0) -| (1,1);

コマンドを使用してこれを実行できる動作はありますかto?

\draw (0,0) to[-|] (1,1); % Doesn't work

コンテキストとしては、CircuiTikz を使用してこれを実行しようとしており、CircuitTikz が to コマンドに追加する他のオプションのいくつかを使用したいと考えています。

答え1

独自の to パスを定義することもできます。たとえば、TikZ マニュアルの第 5 章の最後の例、「単純なグラフとしての図」のチュートリアルを参照してください。セクション 14.13 To パス操作に、これに関する一般的なドキュメントがあると思います。

これが他のものとどのように相互作用するかはわかりませんcircuitikz

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

\documentclass[border=5mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[hv/.style={to path={-| (\tikztotarget) \tikztonodes}}]
\draw (0,0) to[hv] node [below] {foo} (1,1) ;
\end{tikzpicture}
\end{document}

答え2

いいえ、to[]pathコマンドにはそのようなオプションはありません(私はもちろんどこかに、そのようなことを実装する to パスを追加する回答があるはずですが、見つけることができません...「to」は検索に適した単語ではありませんが、いずれにせよ、 では実装されていないcircuitikzため、この点は意味がありません。

細かい説明は少ないですが、線にポールを追加したい場合は、-|またはを使用するときに|-キンクは位置0.5にあります:

\documentclass[border=10pt]{standalone}
\usepackage{circuitikz}
\begin{document}

\begin{tikzpicture}[american]
    \draw (0,0) -| node[pos=0.5, ocirc]{} (2,1);% really pos=0.5 is the default...
\end{tikzpicture}

\end{document}

角度にノードがある垂直パス

「開いた」ポールはパス構築の最後に白で塗りつぶされるので、別のパスを使用して他の要素を接続する場合は、境界アンカーが係合するようにノード名を使用する必要があります。ない裸の座標(インダクタンスの問題を参照してください)

\documentclass[border=10pt]{standalone}
\usepackage{circuitikz}
\begin{document}

\begin{tikzpicture}[american]
    \draw (0,0) -| node[pos=0.5, ocirc](mynode){} (2,1);
    \draw (mynode) to[R] (0,1);
    \draw (0,0 -| 2,1) to[L] ++(2,0);
\end{tikzpicture}

\end{document}

ノード名と境界アンカーの使用

関連情報