\tikzset を使用してコード ブロックを設定する方法

\tikzset を使用してコード ブロックを設定する方法

固定された TikZ コード ブロックを何度も繰り返して書き直す必要があることにいつも気づきます。質問ですが、単一の引数内に TikZ 実行可能コマンドのブロック (スタイルだけではなく) を作成し、その引数をスタイルとして呼び出すことは可能でしょうか?

このことを考慮:

\usepackage{tikz}
\usetikzlibrary{calc}
\begin{tikzpicture}
\coordinate [label = below:A](A) at (0, 0);
\coordinate [label = above:B](B) at (3, 3);
\draw (A) -- (B);
\draw [|-|, thin] ($(A)! 8mm !90:(B)$)  -- node [sloped, midway, fill = white]{$3$cm}
($(B)! -8mm !90:(A)$);%This is too long and It would awesome to abstract it
\end{tikzpicture}

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

私が知りたいのは、

\tikzset{
dimension line/.code arg={from#1to#2value#3}
    draw the dimension line between (A) and (B),
    add a node in the middle with blah style and blau value
}

そのため、

\draw[dimension line=from A to B value 3cm] (A)--(B);

同じ出力が得られます。これにより、最小限の労力で作業を実行し、抽象化が可能になります。この例は、TikZ でコード ブロックを作成する方法を理解するのに十分シンプルだと思います。ありがとうございます。

答え1

これは本当の答えというよりは長いコメントです。

すべてのtikz-dimline例では直交座標を使用していますが、名前付き座標を使用することもできます。

\documentclass[border=2mm,tikz]{standalone}
\usepackage{tikz-dimline}

\begin{document}
\begin{tikzpicture}

\draw[red] (0,0) coordinate (A) -- (45:3) coordinate (B);
\dimline[color=blue]{([shift={(-3mm,3mm)}]A)}{([shift={(-3mm,3mm)}]B)}{3cm};
\end{tikzpicture}
\end{document}

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

いずれにせよ、私は探していた質問をようやく見つけました。

TikZ で装飾として線の寸法を描く

関連情報