座標で定義された3点間の角度

座標で定義された3点間の角度

ABCが で定義されているとします。LaTeXで 3 つの指定された点間の角度を計算するcoordinate組み込み関数 ( とします) はありますか?\angle{A,B,C}

私はその機能を知っている\pgfmathanglebetweenpointsただし、必要なポイントは 2 つだけであり、 を使用して定義されたポイントでは機能しないため、実用的ではありませんcoordinate(使用方法がわからない場合を除く)。

以下の例では、関数は度数\angle{A,B,C}を返す必要があります60。(問題は角度を描くことではなく、角度の値を計算することです)

\documentclass{standalone}
\usepackage{tikz}
\usepackage{xfp}

\begin{document}
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (4,3);
\coordinate (C) at (\fpeval{3*sqrt(3)},\fpeval{-4*sqrt(3)});

\draw[fill] (A) circle (0.05) node[left] {$A$};
\draw[fill] (B) circle (0.05) node[right] {$B$};
\draw[fill] (C) circle (0.05) node[right] {$C$};
\end{tikzpicture}

\end{document}

答え1

パッケージtkz-euclideは角度を計算します。

\documentclass{standalone}
\usepackage{tkz-euclide}

\begin{document}
\begin{tikzpicture}
\coordinate (A) at (0,0);
\coordinate (B) at (4,3);
\coordinate (C) at (\fpeval{3*sqrt(3)},\fpeval{-4*sqrt(3)});

\draw[fill] (A) circle (0.05) node[left] {$A$};
\draw[fill] (B) circle (0.05) node[right] {$B$};
\draw[fill] (C) circle (0.05) node[right] {$C$};
\tkzFindAngle(A,B,C)
\tkzGetAngle{angleABC}
\edef\angleABC{\fpeval{round(\angleABC)}}
\tkzDrawSegments(A,B B,C)
\tkzMarkAngle(A,B,C)
\tkzLabelAngle[pos=1.3](A,B,C){$\angleABC^\circ$}
\end{tikzpicture}

\end{document}

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

関連情報