检索段的长度

检索段的长度

我想检索线段的长度(以厘米为单位)以在节点中显示

如下例所示,我想显示三个向量的长度

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (A) at  (0,0);
\coordinate (B) at (4,2);
\coordinate (C) at (1,3);
\coordinate (D) at (5,3);

\draw[-latex, green, thick] (A) node[left,black]{A} -- (B)node[above left,black]{B} ;
\draw (A) -- (C)node[left]{C} ;
\draw (B) -- (D) node[left]{D};

\draw[thick,-latex,red] (B) -- (intersection of A--C and B--D) coordinate(I) node[left,black]{I} ;
\draw[thick, -latex]  (I) -- (A) node[left,midway]{lenght cm};

\end{tikzpicture}
\end{document}

在此处输入图片描述

答案1

TikZ 提供计算方法veclen。为了计算长度(厘米),我使用了1厘米=28.4点

下面的示例取自手册,您可以在其中找到更多示例。

下面是一个例子:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\coordinate (A) at  (0,0);
\coordinate (B) at (4,2);
\coordinate (C) at (1,3);
\coordinate (D) at (5,3);

\draw[-latex, green, thick] (A) node[left,black]{A} -- (B)node[above left,black]{B} ;
\draw (A) -- (C)node[left]{C} ;
\draw (B) -- (D) node[left]{D};

\draw[thick,-latex,red] (B) -- (intersection of A--C and B--D) coordinate(I) node[left,black]{I} ;
\draw[thick, -latex] let \p1 = ($ (I) - (A) $) in (I) -- (A) node[left,midway]{ \pgfmathparse{veclen(\x1,\y1)/28.4}\pgfmathresult cm};

\end{tikzpicture}
\end{document}

相关内容