Tkz-euclide \tkzInterLC 编译问题

Tkz-euclide \tkzInterLC 编译问题

我在使用 tkz-Euclide 时遇到了一些问题。在 ubuntu 20.04.5 上使用 texlive-2019.20200218-1。我尝试编译以下示例,来自文档 (tkz-Euclide 4.25.c)

我得到一个指向 的错误\tkzInterLC[near]。我还尝试了一些其他示例,有些会出错,有些则不会。在我看来(但这有待证实)一些涉及圆的命令会出错。虽然点 G 是我期望的点,但点 L 被选为大圆的对跖点。

我也尝试在 Overleaf 和 Cocalc 中进行编译,两种情况下的输出都不是预期的(我只测试了 Overleaf 或 Cocalc 下面非常精确的示例,而没有测试文档中的其他示例)。

%% My preamble is slightly modified
\documentclass[border=3pt]{standalone}
\usepackage{amsmath}
\usetikzlibrary{cd}
\usepackage{tkz-euclide}
\usepackage{physics}
\usetikzlibrary{calc}
\usetikzlibrary{matrix}
\usetikzlibrary{shapes}
\tikzset{>=latex} % for LaTeX arrow head
\usepackage{xcolor}
\usepackage{pgfplots}
\definecolor{airforceblue}{rgb}{0.36, 0.54, 0.66}
\definecolor{arsenic}{rgb}{0.23, 0.27, 0.29}
\colorlet{veccol}{green!45!black}
\colorlet{myred}{red!90!black}
\colorlet{myblue}{blue!90!black}
\colorlet{mypurple}{blue!50!red!80!black!80}

\colorlet{input}{red!80!black}
\colorlet{output}{red!70!black}
\colorlet{triangle}{orange!40}
\colorlet{input}{red!80!black}
\colorlet{output}{red!70!black}
\colorlet{triangle}{orange!40}


\tikzstyle{vector}=[->,very thick,veccol]

\usetikzlibrary{arrows.meta}

\tikzstyle{thin arrow}=[dashed,thin,-{Latex[length=4,width=3]}]
\tikzstyle{line} = [thin, arsenic]
\tikzstyle{points} = [color = arsenic]

%% Now the example


\begin{tikzpicture}[scale=1.5]
\tkzDefPoint(0,0){A}
\tkzDefPoint(0.75,0.25){B}
\tkzDefPoint(1,1.5){C}
\tkzDefTriangle[equilateral](A,B) \tkzGetPoint{D}
\tkzInterLC[near](D,B)(B,C) \tkzGetSecondPoint{G}
\tkzInterLC[near](D,A)(D,G) \tkzGetFirstPoint{L}
\tkzDrawCircles(B,C D,G)
\tkzDrawLines[add=0 and 2](D,A D,B)
\tkzDrawSegment(A,B)
\tkzDrawSegments[red](A,L B,C)
\tkzDrawPoints[red](D,L,G)
\tkzDrawPoints[fill=gray](A,B,C)
\tkzLabelPoints[left,red](A)
\tkzLabelPoints[below right,red](L)
\tkzLabelCircle[above](B,C)(20){$\mathcal{(H)}$}
\tkzLabelPoints[above left](D)
\tkzLabelPoints[above](G)
\tkzLabelPoints[above,red](C)
\tkzLabelPoints[right,red](B)
\tkzLabelCircle[below](D,G)(-90){$\mathcal{(K)}$}
\end{tikzpicture}

答案1

您不需要TikZ加载tkz-euclide

我认为如果您使用的是 texlive-2019 版本,tkz-euclide那么您无法编译最新版本的示例tkz-euclide

您可以使用提供多个点的交点:“tkzGetPoints{X}{Y}”,然后选择正确的一个。

交叉口选项是新的,仅适用于 4.25 版本

\documentclass[border=3pt]{standalone}
\usepackage{tkz-euclide}

\begin{document}
  \begin{tikzpicture}[scale=1.5]
  \tkzDefPoint(0,0){A}
  \tkzDefPoint(0.75,0.25){B}
  \tkzDefPoint(1,1.5){C}
  \tkzDefTriangle[equilateral](A,B) \tkzGetPoint{D}
  \tkzInterLC[near](D,B)(B,C) \tkzGetSecondPoint{G}
  \tkzInterLC[near](D,A)(D,G) \tkzGetFirstPoint{L}
  \tkzDrawCircles(B,C D,G)
  \tkzDrawLines[add=0 and 2](D,A D,B)
  \tkzDrawSegment(A,B)
  \tkzDrawSegments[red](A,L B,C)
  \tkzDrawPoints[red](D,L,G)
  \tkzDrawPoints[fill=gray](A,B,C)
  \tkzLabelPoints[left,red](A)
  \tkzLabelPoints[below right,red](L)
  \tkzLabelCircle[above](B,C)(20){$\mathcal{(H)}$}
  \tkzLabelPoints[above left](D)
  \tkzLabelPoints[above](G)
  \tkzLabelPoints[above,red](C)
  \tkzLabelPoints[right,red](B)
  \tkzLabelCircle[below](D,G)(-90){$\mathcal{(K)}$}
  \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容