\draw (20,12) -- ++(2,0) -- ++(0,2) -- ++(-3,0) -- ++(45:3);
Use ++
before each new incremental coordinate to make it relative to the last one and put the pencil there.
Here's a complete example:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\tikz\draw (20,12) -- ++(2,0) -- ++(0,2) -- ++(-3,0) -- ++(30:3) {[rounded corners=10pt]-- ++(5,0) -- ++(0,-6)} -- ++(-7,0) -- cycle;
\end{document}
Of course, combining this with the -| or |- path operators can simplify the code even further; the following two pieces of code produce the same result:
\tikz\draw (20,12) -- ++(2,0) -- ++(0,2) -- ++(3,0) -- ++(0,1) -- ++(1,0) -- ++(0,-3) -- ++(2,0);\par\bigskip
and
\tikz\draw (20,12) -| ++(2,2) -| ++(3,1) -- ++(1,0) |- ++(2,-3);
I don't think that defining commands in this case adds anything; in fact, I think it reduces the functionality of the existing syntax (which is already simple). The example demonstrates that you can use, for example, polar coordinates and modify (up to TikZ limitations) the path attributes midways; even if the current question doesn't require this, it's a good thing to have the possibility to do those kind of modification if they are required.
Best Answer
The externalization process puts the pictures in a separate PDF file, which is then included as image. However annotations are usually lost, when a PDF page is included.
There are only quite complicated workarounds, e.g., project
pax
, which uses a PDF library to extract the annotations from the PDF file to reinsert them later at TeX level.Or reference can be put in a node and its coordinates relative to the bounding box remembered and then the link can be added later on top of the included image (via package
overpic
or again viatikz
).But I think, it might be much easier just to exclude the pictures with the references from the externalization. Section "50.4.3 Remaking Figures or Skipping Figures" from the PGF manual shows some options to disable the export of a figure, e.g.:
or
or