
Что-то меня смущает, когда я рисую линию с какой-то надписью посередине.
\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}
\draw (0,0) -- node[below] {a} ++ (4,0);
\end{tikzpicture}
\begin{tikzpicture}
\draw (-2,0) -- node[below] {a} ++ (2,0);
\end{tikzpicture}
\begin{tikzpicture}
\draw (-2,0) -- (2,0);
\end{tikzpicture}
\begin{tikzpicture}
\draw (2,0) -- node[below] {a} ++ (0,0);
\end{tikzpicture}
\end{document}
Вот что я получил. Вот мои вопросы:
- Я могу понять первый вариант: строка длиной 4 с меткой посередине.
- Почему второй всего в два раза короче первого?
- В третьем случае, если я не добавил метку, почему длина такая же, как в первом?
- Почему в последнем нет строчки?
- Последний вопрос: что означают -- и ++?
решение1
Обеспечивает ++
относительную координату относительно последней точки. Таким образом ++(2,0)
, грубо говоря, означает move 2 rightwards and 0 up/down
.
Следовательно, (0,0) ++(2,0)
дает путь из начала в , (2,0)
но (-2,0) ++(2,0)
дает путь из (-2,0)
в начало. Аналогично (43.5,6.78) ++(2,0)
дает путь из (43.5,6.78)
в (45.5,6.78)
.
++(0,0)
, следовательно, означает don't move at all either up/down or right/left
.
Затем также ++
изменяется положение, так что при , например, (-2,0) ++(2,0)
последняя точка теперь находится в .(0,0)
Метка не увеличивает длину пути: ++(4,0)
она просто указывает на 4 to the right of the last point
количество узлов между ними.
--
означает просто линию, проведенную по прямой между точками, которая рисуется, если мы вообще что-то рисуем.
\path (0,0) -- (2,0);
просто движется по прямой линии от начала координат до (2,0)
.
\draw (0,0) -- (2,0);
также проводит эту линию, тогда как
\draw (0,0) (2,0);
просто двигался, не рисуя, несмотря на \draw
и
\draw (0,0) (2,0) -- (4,0);
переместится из начала координат в , (2,0)
а затем проведет прямую линию от (2,0)
в (4,0)
.