Ambiente picture

Origem: Tex-Br, a enciclopédia livre.

Conteúdo

Desenhando Figuras com o LaTeX

É possível inserir figuras simples compostas de linhas, círculos e texto diretamente num documento LaTeX utilizando o ambiente picture.

Esse ambiente é iniciado dessa forma:

\begin{picture}(tam_x,tam_y)(orig_x,orig_y)

O primeiro argumento especifica o tamanho da figura. Ele só controla o espaço em branco que é reservado para a figura, é válido desenhar fora dessa área. O segundo argumento é opcional, e, se presente, especifica as coordenadas do canto inferior esquerdo. Se ele não for especificado, por padrão elas são (0, 0). As coordenadas são cartesianas, os valores para x e y aumentam para a direita e para a cima, respectivamente.

O tamanho e a posição nesses argumentos, e também nos comandos dentro do ambiente picture são informados sem unidades. A unidade que é usada é especificada pelo comprimento \unitlength, que por padrão é 1pt (1 ponto). Caso se deseje trocar isso, deve-se fazê-lo fora do ambiente picture, dessa forma:

\setlength{\unitlength}{1cm}

Assim, as posições e tamanhos serão especificadas em centímetros.

Elementos Básicos para Figuras

Todos os elementos abaixo são desenhados com um comando da forma

\put(x,y){elemento}

x e y são as coordenadas do ponto de referência para o objeto, esse ponto varia de objeto para objeto. Em elemento, vai o comando para desenhar o elemento, ou o texto no caso de simples inserção de texto. Por exemplo, para desenhar um círculo usa-se:

\put(10,10){\circle{5}}


Texto
O ponto de referência é na linha base do texto, à esquerda. Apenas informe o texto desejado, dessa forma:

\put(0, 0){Algum texto}


Linhas
O comando para desenhar linhas é

\line(Δx,Δy){comprimento}

Os parâmetros Δx e Δy especificam a inclinação da linha. Eles são o aumento nas direções x e y para cada aumento de uma unidade do comprimento. O ângulo da linha com relação ao eixo x é \alpha = \arctan y/x\,. O ponto de referência é o ponto onde a linha inicia.

Δx e Δy devem ser números inteiros relativamente primos entre -6 e 6.

O parâmetro comprimento especifica o comprimento da projeção sobre o eixo x da linha, exceto para linhas verticais, quando especifica o comprimento da linha.


Vetores
Vetores são como linhas, mas têm uma seta na extremidade final. (Não no ponto de referência.) Elas são desenhadas com o comando

\vector(Δx,Δy){comprimento}

Os parâmetros são como no caso de linhas, mas Δx e Δy devem ser entre -4 e 4.


Círculos
Círculos são desenhados especificando-se o raio. O ponto de referência é o centro do círculo. Apenas círculos de alguns tamanhos podem ser desenhados; o círculo será ajustado para o tamanho possível mais próximo. Os comandos são

\circle{raio}

e

\circle*{raio}

para um círculo preenchido.


Retângulos com cantos arredondados (ou fragmentos)
Retângulos com cantos arredondados (ou apenas parte deles) podem ser desenhados. O ponto de referência é o centro do retângulo. O comando é

\oval[opt]{largura_total,altura_total}

O segundo argumento especifica o tamanho do retângulo. O argumento opt (se presente) especifica o que desenhar, e consiste de uma ou duas letras dentre t (top), b (bottom), l (left) e r (right). Uma letra desenha metade do retângulo, duas letras desenham só um quarto dele. Se não for especificado, o retângulo inteiro é desenhado.


Texto de várias linhas
Para mostrar várias linhas de texto, use o comando textstack. As linhas são separadas com \\.

\textstack[pos]{texto}

O argumento pos, se presente, controla o alinhamento do texto, e pode ser l para alinhá-lo a esquerda ou r para alinhá-lo à direita. Se não for especificado, o texto é centralizado.


Curvas

\qbezier(x1,y1)(x2,y2)(x3,y3)

Desenha uma curva bezier de (x1,y1) a (x3,y3), usando (x2,y2) como um ponto auxiliar.


Repetindo Elementos

\multiput(x,y)(Δx,Δy){n}{elemento}

Desenha o elemento n vezes, primeiro em (x, y), depois em (x+Δx, y+Δy), (x+2Δx, y+2Δy), etc.


Caixas

Caixas agrupam elementos, e têm largura, altura e alinhamento fixos. O ponto de referência para caixas é o canto inferior esquerdo.

\makebox(largura,altura)[pos]{elementos}
\framebox(largura,altura)[pos]{elementos}

O argumento pos controla o alinhamento dos objetos na caixa; o padrão é centralizá-los horizontal e verticalmente. Ele pode ser uma ou duas letras dentre t (top), b (bottom), l (left) e r (right).

No framebox, não há espaço entre a caixa e os objetos.

\dashbox{tam_traço}(largura,altura)[pos]{elementos}

Desenha uma caixa com um tracejado em volta; os traços têm por tamanho tam_traço. Para melhores resultados, a largura e a altura da caixa devem ser múltiplos do tamanho do traço.

\savebox{\nome}(largura,altura)[pos]{elementos}
\usebox{\nome}

Cria uma caixa com o nome especificado, que depois pode ser usada várias vezes. Os argumentos são os mesmos que em makebox.

Personal tools