在下面的範例中,當我使用--
(also to
) 沿路徑連接點時,我得到了正確的行為,但當我使用 時卻沒有 得到正確的行為edge
。我想用它edge
來更好地控制各個部分的外觀。
\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\tikz\path[draw] (0,0) -- ++(90:0.5) -- ++(30:0.5) --
++(330:0.5) -- ++(270:0.5) -- ++(210:0.5) -- cycle;\qquad
\tikz\path[draw] (0,0) edge ++(90:0.5) edge ++(30:0.5) edge
++(330:0.5) edge ++(270:0.5) edge ++(210:0.5) edge cycle;
\end{document}
答案1
也許這樣是一種方式?
正如 Zarko 指出的,edge
s 並不是要替代操作to
(例如--
),而是用於在節點之間繪製圖形。
引用手冊:
如果連續有多個邊操作,它們的起始座標都是相同的因為它們的目標座標畢竟不是主路徑的一部分。
然而,這項規則有一個例外:如果邊緣操作是直接在節點操作之前,那麼這個剛剛聲明的節點就是起始座標[對於下一個
edge
]
因此,另一種方法是在路徑的每個步驟中插入一個節點,以便為每個步驟提供新的開始edge
。缺點是節點預設佔用空間。
輸出
程式碼
\documentclass[12pt,tikz]{standalone}
\begin{document}
\begin{tikzpicture}[scale=5]
% place the useful coordinates
\path (0,0) coordinate (a--1)
foreach \x in {0,...,5}
{
-- ++(90-\x*60:.5) coordinate (a-\x)
};
% actually draw using edges, repeating last node each time
\draw [blue,very thick]
foreach \x [evaluate=\x as \lastX using \x-1] in {0,...,5}
{
(a-\lastX) edge [bend right=20] (a-\x)
};
\end{tikzpicture}
\end{document}