我正在尝试用 tikz-euclide 制作以下图片(它是在 Geogebra 中制作的)。
两个实心圆相等。为了保证这一点,红色线段的长度应该是 \sqrt{S},其中 S 是这个直角三角形的面积。假设我们知道 A、B 和 C 的所有坐标。如何构造点 D 使得 AD=\sqrt{S}?(S=0.5*AC*BC)除了直接解决相应的构造问题之外,还有其他简单的方法吗?
我是这样开始的:
\documentclass[a4paper, 10pt]{article}
\usepackage{tkz-euclide}
\usetkzobj{all}
\begin{document}
\begin{tikzpicture}[scale=1]
\tkzInit[xmin=-1, xmax=9, ymin=-0.5, ymax=4]
\tkzClip
\tkzDefPoints{0/0/B, 8/0/A, 6/0/h}
\tkzDefMidPoint(A,B) \tkzGetPoint{M} %here we construct a right triangle
\tkzDefLine[orthogonal=through h](B,A) \tkzGetPoint{h1}
\tkzInterLC(h,h1)(M,A)\tkzGetPoints{C}{w}
%Here we have got point C as an intersection of the circle with
%diameter AB and a perpendicular to Ab from
%h(6,0) - random point on the hypotenuse
\tkzInCenter(A,B,C)\tkzGetPoint{I}
\tkzDefPointBy[projection=onto B--A](I) \tkzGetPoint{K}
\tkzLabelPoint[above](C){$C$}
\tkzLabelPoint[below right](A){$A$}
\tkzLabelPoint[below left](B){$B$}
\tkzLabelPoint[above right](I){$I$}
\tkzMarkRightAngle[size=0.2](A,C,B)
\tkzDrawPolygon[very thick](A,B,C)
\tkzDrawCircle(I,K)
\tkzDrawPoints(C,A,B,I,K)
\end{tikzpicture}
\end{document}
输出结果一如既往地美丽和可预测(感谢 Alalin Matthes :)
下一步是点D,我卡住了。谢谢大家。
答案1
请注意,这只是一个想法。我完全不确定这里的尺寸处理是否正确……
如果问题是找到圆半径的值,我建立在tikz 中的 `let` 操作并制作了这个:
\documentclass[margin=20pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,positioning,calc}
\begin{document}
\begin{tikzpicture}[
]
\coordinate (A) at (8,0);
\coordinate (B) at (0,0);
\coordinate (C) at (0,6);
\draw (A) -- (B) -- (C) -- cycle;
\draw[red] let \p1 = ($ (B) - (A) $),
\p2 = ($ (B) - (C) $),
\n1 = {sqrt(veclen(\x1,\y1))*sqrt(veclen(\x2,\y2)/2)}
in
(B) circle[radius=\n1];
\end{tikzpicture}
\end{document}
...计算半径的奇怪方法是为了避免dimension too big
处理中的错误。我试过了,但我无法expl3
在这里使用数学......