Dicas para jogar golfe no TikZ

13

O TikZ é um pacote de látex usado para desenhar imagens precisas em documentos de látex. Ele possui uma especificação massiva e uma grande quantidade de recursos que podem ser úteis para questões de estilo de .

Que dicas as pessoas têm para jogar golfe no TikZ? Como sempre, as dicas devem ser específicas para o TikZ (por exemplo, "Remover comentários" não são uma resposta) e seguir uma única dica por resposta.

Post Rock Garf Hunter
fonte
Alguém joga golfe em Tikz?
Pavel
@ Pavel eu faço.
Post Rock Garf Hunter
4
@Serg Há várias dicas sobre questões de conteúdo semelhante no site principal. Estes são geralmente considerados tópicos.
Post Rock Garf Hunter
2
Para os interessados, existe um manual tikz / pgf (é onde encontrei as informações para minhas respostas). Versão 3.0.1a , versão 2.10
0
1
@ShreevatsaR Acho que talvez deva ser feita uma nova pergunta para o TeX / LaTeX, todas as dicas aqui são atualmente específicas para o Tikz e posso ver algum benefício em mantê-las separadas.
Post Rock Garf Hunter

Respostas:

5

Usar \documentclass[tikz]{standalone}

Por acaso, encontrei o seguinte no manual da standaloneembalagem:

Para imagens desenhadas com o TikZ, tikzé fornecida uma opção dedicada que carrega o tikzpacote e também configura o tikzpictureambiente para criar uma única página cortada.

Assim, em vez de

\documentclass{standalone}\input tikz\begin{document} ...

alguém pode escrever

\documentclass[tikz]{standalone}\begin{document} ...

para salvar 5 bytes.

Laikoni
fonte
Bom achado! Cada byte que podemos retirar da placa da caldeira é ótimo!
Post Rock Garf Hunter
4

Usar \def

\defé uma ferramenta incrivelmente poderosa quando se trata de golfe. \defpermite atribuir algo a uma variável.

Isso pode ser usado simplesmente com o botão para salvar um número que você pode usar várias vezes, por exemplo

\def\x{1456}

Definirá 1456como \xpara uso futuro, como salvar uma variável em uma linguagem de programação.

No entanto, \defé muito mais poderoso que isso, porque \defnão define uma variável, define um trecho de código a ser substituído no programa sempre que for chamado.

Por exemplo, digamos que você queira desenhar alguns retângulos usando \draw o código a seguir:

\draw(0,0)rectangle(3,4)rectangle(8,0);\draw(2,2)rectangle(3,3);

Usar \defisso pode ser escrito como:

\def\x{)rectangle(}\draw(0,0\x3,4\x8,0);\draw(2,2\x3,3);
Post Rock Garf Hunter
fonte
4

Use em \tikzvez do tikzpictureambiente

Em vez de criar um tikzpictureambiente (36 bytes), você pode usar o \tikzcomando (7 bytes)

As opções globais podem ser definidas entre colchetes usando o comando tikz como tal \tikz[options...]{...}. Se o código tikz tiver uma linha, as chaves podem ser omitidas, economizando mais dois bytes.

Exemplo:

Ambos os programas a seguir exibem a imagem na parte inferior

\documentclass{standalone}\input tikz\begin{document}\tikz{\draw[thick,rounded corners=8pt](0,0)--(0,2)--(1,3.25)--(2,2)--(2,0)--(0,2)--(2,2)--(0,0)--(2,0);\draw(-1.5,0)--(0,1.5);}\end{document}

\documentclass{standalone}\input tikz\begin{document}\begin{tikzpicture}\draw[thick,rounded corners=8pt](0,0)--(0,2)--(1,3.25)--(2,2)--(2,0)--(0,2)--(2,2)--(0,0)--(2,0);\draw(-1.5,0)--(0,1.5);\end{tikzpicture}\end{document}

Exemplo

Agradecemos ao WheatWizard por calcular o uso multilinha de \tikz

0 '
fonte