关于如何用 Ti 绘制这个的任何想法钾Z?我尝试了几种方法,但都不太令人满意。我尝试的是用最简单的方法,即
\begin{tikzpicture}
\draw (point) arc (angle contitions);
\end{tikzpicture}
我需要的是类似如下图像的东西:
我也尝试使用这个代码(来自使用 tikz(例如)绘制双曲几何中的图片)
\begin{document}
\newcommand{\hgline}[2]{
\pgfmathsetmacro{\thetaone}{#1}
\pgfmathsetmacro{\thetatwo}{#2}
\pgfmathsetmacro{\theta}{(\thetaone+\thetatwo)/2}
\pgfmathsetmacro{\phi}{abs(\thetaone-\thetatwo)/2}
\pgfmathsetmacro{\close}{less(abs(\phi-90),0.0001)}
\ifdim \close pt = 1pt
\draw[blue] (\theta+180:1) -- (\theta:1);
\else
\pgfmathsetmacro{\R}{tan(\phi)}
\pgfmathsetmacro{\distance}{sqrt(1+\R^2)}
\draw[blue] (\theta:\distance) circle (\R);
\fi
}
\begin{tikzpicture}
\draw (0,0) circle (1);
\clip (0,0) circle (1);
\hgline{30}{-30}
\hgline{180}{270}
\hgline{30}{120}
\hgline{0}{180}
\end{tikzpicture}
但这允许我绘制嵌入在磁盘上的线条,并且当我尝试删除圆圈时,代码就没用了。
谢谢。
答案1
像这样吗?
\documentclass[tikz,border=3.14mm]{standalone}
\begin{document}
\begin{tikzpicture}[font=\sffamily]
\path (0,0) coordinate (A) (4,1) coordinate (B) (2,-2) coordinate (C);
\draw[thick,path picture={
\foreach \X in {A,B,C}
{\draw[line width=0.4pt] (\X) circle (1);}}] (A) node[left]{$O$} to[bend right=12]
(B) node[above right]{$g_2^{-1}\cdot O$} to[bend right=15]
(C) node[below]{$g_1^{-1}\cdot O$} to[bend right=20] cycle;
\node at (barycentric cs:A=1,B=1,C=1) {$<180^\circ$};
\end{tikzpicture}
\end{document}
编辑:具有明确构造的圆弧。
\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[font=\sffamily]
\path (0,0) coordinate (A) (4,1) coordinate (B) (2,-2) coordinate (C);
\draw[thick,path picture={
\foreach \X in {A,B,C}
{\draw[line width=0.4pt] (\X) circle (1);}}]
let \p1=($(B)-(A)$),\p2=($(C)-(B)$),\p3=($(C)-(A)$),
\n1={atan2(\y1,\x1)},\n2={atan2(\y2,\x2)},\n3={atan2(\y3,\x3)},
\n4={veclen(\y1,\x1)},\n5={veclen(\y2,\x2)},\n6={veclen(\y3,\x3)} in
(A) node[left]{$O$} arc(-90-15+\n1:-90+15+\n1:{\n4/(2*sin(15))})
--(B) node[above right]{$g_2^{-1}\cdot O$}
arc(-90-15+\n2:-90+15+\n2:{\n5/(2*sin(15))})
--(C) node[below]{$g_1^{-1}\cdot O$}
arc(90-15+\n3:90+15+\n3:{\n6/(2*sin(15))}) -- cycle;
\node at (barycentric cs:A=1,B=1,C=1) {$<180^\circ$};
\end{tikzpicture}
\end{document}