相對於圓的位置弧

相對於圓的位置弧

可能的重複:
指定圓心時在 tikz 中繪製圓弧

一個非常微不足道的問題,但我做不到!抱歉,但我發現座標令人困惑。

我想圍繞一個圓畫一條弧;兩者應具有相同的旋轉中心。我想相對於圓定位圓弧。

這是要更正的 MWE:

\documentclass{article}
\usepackage{tikz}
\usepackage{graphicx}

\tikzset{state/.style={circle,draw=black, very thick,minimum size=4em}}

\begin{document}
\begin{tikzpicture}
\node[state, fill=black!20] (sh1) at (1,3) {Circle};
\draw[thick] (sh1) arc (0:300:2cm);
\end{tikzpicture}
\end{document}

如何使兩個形狀具有相同的中心以及圓弧的相對定位?有什麼簡單又絕妙的主意嗎?

答案1

問題是arc您指定圓弧的起點,而不是圓的中心。您可以像這樣定義自訂命令:

程式碼

\documentclass{article}
\usepackage{tikz}


\tikzset{state/.style={circle,draw=black, very thick,minimum size=4em}}

\def\centerarc[#1] (#2) (#3:#4:#5)% [draw options] (center) (initial angle:final angle:radius)
{ \draw[#1] (#2) ++(#3:#5) arc (#3:#4:#5);
}

\begin{document}
\begin{tikzpicture}
\node[state, fill=black!20] (sh1) at (1,3) {Circle};
\centerarc[thick] (sh1) (0:300:2cm)
\end{tikzpicture}
\end{document}

特別感謝保羅·加博里特傑克為了簡化這個。

結果

在此輸入影像描述

答案2

好吧,我沒有一個絕妙的主意......但請注意,它arc總是從給定的坐標開始 - 在你的情況下是在圓的中心sh1,並且它的中心移動了最後一個參數中指定的量arc- 在你的情況下2公分。因此,如果您arc以適當的方向和數量移動開始,您將得到您想要的東西(如果我正確理解您的問題)。

在你的情況下嘗試:

\documentclass{article}
\usepackage{tikz}
\usepackage{graphicx}

\tikzset{state/.style={circle,draw=black, very thick,minimum size=4em}}

\begin{document}
\begin{tikzpicture}
\draw[help lines] (-3,-3) grid + (9,9);
\node[state, fill=black!20] (sh1) at (1,3) {Circle};
\draw[thick] ([xshift=20mm] sh1.center) arc (0:300:2cm);
\end{tikzpicture}
\end{document}

相關內容