Seite 1 von 1
Tikz Kreisbogen durch drei Punkte
Verfasst: Mi 17. Jul 2019, 13:40
von AlgGeo
\begin{tikzpicture}
\coordinate (q) at (4,-3) {};
\coordinate (t) at (-3,3) {};
\coordinate (p) at (-5,0) {};
\coordinate (r) at (3,4) {};
\draw[-] (p) -- (r);
\draw[-] (p) -- (q);
\draw[-] (q) -- (r);
\draw (0,0) circle [radius=5] {};
\node at (-5.5, 0) { $p$ };
\node at (3.3, 4.2) { $r$ };
\node at (4.3, -3.2) { $q$ };
\node at (-3.3, 3.2) { $t$ };
\node[circle, fill=black, inner sep = 2pt] at (p) {};
\node[circle, fill=black, inner sep = 2pt] at (q) {};
\node[circle, fill=black, inner sep = 2pt] at (r) {};
\node[circle, fill=black, inner sep = 2pt] at (t) {};
\draw[dashed] (p) -- (t) -- (r)
pic [draw, "$\alpha$",angle radius=.6cm,angle eccentricity=.5, dashed] {angle=p--t--r};
\end{tikzpicture}
Ich möchte einen Kreisbogen von p über t nach r ziehen. Kann mir jemand sagen wie ich das möglichst einfach hinbekomme?
Verfasst: Mi 17. Jul 2019, 17:53
von Bartman
Dein Beispiel ist unvollständig.
\documentclass[tikz, border=5pt]{standalone}
\usetikzlibrary{quotes, angles, calc, through}
\newcommand{\arcThroughThreePoints}[4][]{
\coordinate (middle1) at ($(#2)!.5!(#3)$);
\coordinate (middle2) at ($(#3)!.5!(#4)$);
\coordinate (aux1) at ($(middle1)!1!90:(#3)$);
\coordinate (aux2) at ($(middle2)!1!90:(#4)$);
\coordinate (center) at ($(intersection of middle1--aux1 and middle2--aux2)$);
\draw[#1]
let \p1=($(#2)-(center)$),
\p2=($(#4)-(center)$),
\n0={veclen(\p1)},% Radius
\n1={atan2(\y1,\x1)},% angles
\n2={atan2(\y2,\x2)},
\n3={\n2>\n1?\n2:\n2+360}
in (#2) arc(\n1:\n3:\n0)
;
}
\begin{document}
\begin{tikzpicture}
\coordinate [label=below right:$q$] (q) at (4,-3);
\coordinate [label=above left:$t$] (t) at (-3,3);
\coordinate [label=below left:$p$] (p) at (-5,0);
\coordinate [label=above right:$r$] (r) at (3,4);
\foreach \point in {q,t,p,r}{
\fill (\point) circle (3pt);
}
\draw (p) -- (r) -- (q) -- cycle;
\node [draw, circle through={(p)}] {};
\draw[dashed] (p) -- (t) -- (r)
pic [draw, "$\alpha$",angle radius=.6cm,angle eccentricity=.5, dashed] {angle=p--t--r}
;
\arcThroughThreePoints[red]{r}{t}{p};
\end{tikzpicture}
\end{document}
Quelle:
Antwort von JLDiaz