也许我试图获得我想要的图形的方法非常幼稚和简单 - 但我对 Tikz 很陌生,不能做太多其他事情。我需要获得一个类似于左侧的图形(最终目标是获得右侧的图形)。
我目前确实得到了以下内容,但不知道如何摆脱不必要的行。
\documentclass[a4paper]{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0)--(4,5) -- (1,0)--(0,0) ;
\begin{scope}[shift={(-0.5,0)}]
\draw (1,0)--(4,5) -- (2,0)--(1,0) ;
\end{scope}
\begin{scope}[shift={(-1.5,0)}]
\draw (2,0)--(4,5) -- (3,0)--(2,0) ;
\begin{scope}[shift={(-0.5,0)}]
\draw (3,0)--(4,5) -- (4,0)--(3,0) ;
\end{scope}
\end{scope}
\end{tikzpicture}
\end{document}
任何帮助都非常感谢!如果有人能帮助完成最后一部分那就太棒了 :)
答案1
像这样?
首先定义用于确定交点的路径,然后在给定的坐标和计算出的交点之间画线。
\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{intersections}
\begin{document}
\begin{tikzpicture}
\path[name path=A] (0,0)--(4,5) -- (1,0);
\path[name path=B] (0.5,0)--(4.5,5) -- (1.5,0);
\draw[name intersections={of=A and B, by={s1}}]
(0,0) -- (4,5) -- (s1) -- (4.5,5) -- (1.5,0) -- cycle;
%
\path[name path=C] (0.5,0)--(2.5,5) -- (1.5,0);
\path[name path=D] (1.0,0)--(2.0,5) -- (2.0,0);
\draw[name intersections={of=C and D, by={s2,s3,s4}},red]
(0.5,0) -- (s2) -- (2,5) -- (s3) -- (2.5,5) -- (s4) -- (2.0,0) -- cycle;
\end{tikzpicture}
\end{document}