用 tikz 用兩種顏色繪製圓弧:中心發生偏移

用 tikz 用兩種顏色繪製圓弧:中心發生偏移

我正在嘗試畫一個圓,其中一半的弧線為紅色,另一半為藍色。我的程式碼確實得到了兩個弧,但由於某種原因,第二個弧的中心與第一個弧的中心不同:

\documentclass{article}

\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{amssymb}
\usetikzlibrary{quotes,angles}
\usepackage{tkz-euclide}
\usetikzlibrary{shapes.geometric}

\begin{document}

\begin{tikzpicture}
  \coordinate (B) at (3, 0);
% Draw circle (polar coordinates):
%\draw [red] (0,0) arc [radius=3, start angle=230, end angle=320];
%\draw [blue] (0,0) arc [radius=3, start angle=320, end angle=230];

\draw [blue] (0,0) arc (0:180:3);
\draw [red] (0,0) arc (180:360:3);

\draw[fill=black] (B) circle (.1cm);
\node[label={[label distance=0cm]0:B}] at (B){};

\end{tikzpicture}
\end{document}

結果是這樣的:

在此輸入影像描述

為什麼中心會偏移以及如何在同一中心繪製兩條圓弧?感謝您的幫忙!

答案1

現在還好嗎——

在此輸入影像描述

\begin{tikzpicture}
  \coordinate (B) at (3, 0);
% Draw circle (polar coordinates):
%\draw [red] (0,0) arc [radius=3, start angle=230, end angle=320];
%\draw [blue] (0,0) arc [radius=3, start angle=320, end angle=230];

\draw [blue] (0,0) arc (0:180:3);
\draw [red] (0,0) arc (0:-180:3);

\draw[fill=black] (B) circle (.1cm);
\node[label={[label distance=0cm]0:B}] at (B){};

\end{tikzpicture}

答案2

當你這樣做\draw (0,0) arc (0:180:30);(或現代版本arc[start angle=0, end angle=180,radius=3])時,想像一下放置一個看不見的圓圈,這樣該圓的角度為零的點(即圓的右側)在 處(0,0),然後沿著圓逆時針方向繪製。

想必您想畫一個圓圈B?對於以 為中心、半徑為 3 的圓B,角度為零的點位於 處(6,0),因此您可以將其用作圓弧的起點:\draw [blue] (6,0) arc[start angle=0,end angle=180,radius=3];

(0,0)如果您在需要時啟動電弧arc[start angle=180, delta angle=-180, radius=3]

\documentclass{article}
\usepackage{tikz}
\begin{document}

\begin{tikzpicture}

\coordinate (B) at (3, 0);
  
% Draw circle (polar coordinates):
\draw [red] (0,0)  arc [radius=3, start angle=180, delta angle=-180];
\draw [blue] (0,0) arc [radius=3, start angle=180, delta angle=180];

\draw[fill=black] (B) circle (.1cm) node[right=1mm] {B};
\end{tikzpicture}
\end{document}

相關內容