是否可以让 tikz 将一条倾斜线(不平行于 x 和 y)延伸到 xmax 或 ymax 值,就像在水平线和垂直线之间所做的那样。
我知道通过 tikz 计算交点是可行的,但由于我有很多线要停止,所以我想避免
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (5,0) coordinate(A) -- ++ (0,3);
\node[below]at (A){A};
\draw (0,1) coordinate (B) -- (A|-B);
\node[left]at (B){B};
\draw(B) -- ++(10:6);
\end{tikzpicture}
\end{document}
答案1
您可以按照正确的方向开始路径,然后使用交叉点:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (5,0) coordinate(A) -- ++ (0,3) coordinate (A');
\node[below]at (A){A};
\draw (0,1) coordinate (B) -- (A|-B);
\node[left]at (B){B};
\draw (B) -- ++(10:1)coordinate(B') --(intersection of A--A' and B--B');
\end{tikzpicture}
\end{document}
答案2
具备一点几何知识:
\documentclass[tikz, margin=3mm]{standalone}
\begin{document}
\begin{tikzpicture}
\draw (5,0) coordinate[label=below:A] (A) -- ++ (0,3);
\draw (0,1) coordinate[label= left:B] (B) -- (A|-B);
\draw[red] (B) -- ++(10:{5/cos(10)});
\end{tikzpicture}
\end{document}
其中5
是坐标与坐标上方的线之间的距离A
,用黑色水平线表示。