Linie przycinania Tikz na przecięciu
Staram się wymyślić sposób na narysowanie „parametrycznych” trójkątów prostokątnych, czyli zmieniam długość przeciwprostokątnej \hypo
i jeden z kątów wewnętrznych \alfa
i powinien on narysować za mnie trójkąt. Do tej pory to zrobiłem
\documentclass[border=1mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc, angles, intersections}
\begin{document}
\begin{tikzpicture}
\def\alfa{55}
\def\hypo{3}
\draw[name path= A-C] (0,0) node[below left] (A) {A} -- (90-\alfa:3);
\draw (0,0) -- (\hypo,0) node[below right] (B) {B} -- ++ (180-\alfa:3);
\path[name path= B-C] (\hypo,0) -- ++ (180-\alfa:3);
\node [name intersections={of= A-C and B-C}, above] at (intersection-1) {C};
\end{tikzpicture}
\end{document}
Nie wiem, jak przyciąć dwie catheti na ich przecięciu.
Co więcej, nie sądzę, żeby dobrze było zakodować ich długość (tutaj 3 jednostki). Zrobiłem to, ponieważ jeśli są za krótkie, to się nie przecinają, a Tikz nie może znaleźć skrzyżowania. Byłoby lepiej, gdyby LaTeX (lub Tikz) obliczył właściwą długość, aby dostać się do skrzyżowania i go nie minąć. Próbowałem poszukać rozwiązania w instrukcji i online, ale nie mogę znaleźć nic naprawdę pomocnego. Masz jakiś pomysł, jak to zrobić?
Odpowiedzi
Możesz użyć overlay
do wykluczenia współrzędnych pomocniczych z obwiedni. BTW, nie potrzebujesz intersections
biblioteki do obliczenia przecięcia między prostymi.
\documentclass[border=1mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
\def\alfa{55}
\def\hypo{3}
\path[overlay] (0,0) coordinate (A) ++ (90-\alfa:1) coordinate (C')
(\hypo,0) coordinate (B) ++ (180-\alfa:1) coordinate (C'')
(intersection of A--C' and B--C'') coordinate (C);
%or
%(intersection cs:first line={(A)--(C')},second line={(B)--(C'')}) coordinate (C);
\draw (A) node[below left] {$A$} -- (B) node[below right] {$B$}
-- (C) node[above]{$C$} -- cycle;
\end{tikzpicture}
\end{document}

Oczywiście współrzędne C można obliczyć analitycznie, patrz np. Ten wątek .