LaTeX2e - Gráficos e Figuras

download LaTeX2e - Gráficos e Figuras

of 182

Transcript of LaTeX2e - Gráficos e Figuras

Grcos e Figuras

Grcos e FigurasGeovane [email protected] Verso 11.0

A LT

AX 2 LE X2 T E

14 de Fevereiro de 2006

Prefcio

A A idia de escrever LTEX 2 - Grcos e Figuras, surgiu devido ao fato de que muitos pacotes que so utilizados para a construo de grcos e guras, no modo PDFLaTeX no so compilados, tendo assim,

que utilizar o modo LaTeX para gerar DVI depois DVIPS e por ltimo PS2PDF, e para manter o padro nasA conguraes que estava usando no outro manual (LTEX 2 - Uma Introduo[?]), decidi escrever este manual

separado, alm do que, o outro manual estava cando muito grande o qual foi mais um dos motivos que me levou a partir em dois manuais.A Estas notas destinam-se a usurios que j tenham uma certa experincia com LTEX, pois os comandos

utilizados na construo de guras, muitas vezes so, de um certo modo, complicados de se utilizar, por esseA motivo se faz necessrio o conhecimento de como funciona o LTEX e ter experincia em interpretar os erros gerados no momento da compilao do arquivo, para conseguir assim, solucionar os erros gerados que so

freqentes quando se esta trabalhando na construo de guras.

Florianpolis, 20 de Maio de 2007

Geovane Krger

i

Observaes

Verso 11.0 novo captulo incluindo o uso do pacote pst-poly para a construo de polgonos.Verso 10.0 possui um captulo sobre o pacote pst-gr3d, usado para criar grades 3D. Na Verso 9.0 foi adicionado o uso do pacote pst-light3d o qual serve para obter efeitos tridimensionais nos objetos. Verso 8.0. Est nova verso traz o uso do pacote pst-node para a criao de nodos. Este pacote muito til, principalmente para diagramas matemticos. Verso 7.0 contm o captulo sobre o pacote pst-blur usado para modicar o estilo das sombras. Verso 6.0 adicionado o uso do pacote pst-slpe que tambm faz preenchimentos em gradientes. Verso 5.0. Pacote pst-grad usado para preenchimentos em gradientes. Verso 4.0 produzido o captulo sobre a segunda da parte do pacote pstricks-add, que traz macros adicionais ao pacote pst-plot. Na Verso 3.0 temos um captulos para falarmos do pacote pst-plot. Com este pacote, ns podemos plotar grcos a partir de uma lista dados ou plotar o grco de funes usando os cdigos de PostScript. Verso 2.0 contm um captulo novo tratando da primeira das quatro partes em que falaremos do pacote pstricks-add, o qual um pacote experimental e traz macros complementares para o pacote pstricks. Verso 1.0 foi feito uma diviso especial no documento para tratar do conjunto de pacotes PSTricks, e aps essa diviso comeamos pelo captulo que fala a respeito do pacote pstricks. Com esse pacote podemos fazer muitas construes geomtricas de uma maneira simples atravs de seus comandos. A Verso 0.0 contm um captulo sobre a utilizao do pacote multido, o qual serve para fazer, retas e eixos numerados espaados igualmentes, entre outras funcionalidades interessantes.

Assim que tiver alguns detalhes novos na parte textual, ou alguma correo, disponibilizarei a verso atualizada e especicarei neste captulo de observaes quais foram as alteraes feitas. Gostaria de pedir tambm para os leitores que qualquer erro de digitao encontrado ou alguma parte que cou mal explicada, que enviassem-me um email noticando.

ii

Sumrio

iii

IntroduoA Neste manual ns descreveremos tcnicas e truques extendidos de LTEX para a composio de grA cos e guras. Mostraremos como desenhar com o LTEX e como conseguir efeitos especiais com pequenos

fragmentos de PostScript embutidos.A Este manual serve para pessoas que j tenham um conhecimento de LTEX, pois para quem no tenha A conhecimento algum de LTEX no adiantar em nada ler este manual, pois com certeza no entender nada e

no conseguir tirar proveito algum. Ns descreveremos muitos pacotes e opes que extendero ou modicaro as possibilidades bsicasA do LTEX. Para mostrar as aes delas ns temos que carregar todas elas ao mesmo tempo, o que por muitas

razes porm, isto no prtico, se no impossvel, pois muitos pacotes usam muitas variveis internas para asA quais, o LTEX tem limites xos implementados.

Observamos ainda, que muitos dos pacotes e programas descritos aqui so distribudos livrementes em arquivos de softwares pblicos, muitos em domnios pblicos, enquanto outros so protegidos por direito autorais. Lembramos que muitos pacotes aqui mencionados, no esto inclusos na distribuio do MiKTeX, mas que podem ser obtidos facilmente no site da CTAN1. isso a, e faam bom proveito!

1

www.ctan.org

iv

Captulo

1

O Pacote MultidoEste macro originou-se para auxiliar no desenho de guras, quadros, retas entre outras coisas mais, e foi desenvolvido originalmente para o pacote PSTricks, o qual veremos mais adiante, mas o pacote multido pode ser usado muito bem para qualquer outro propsito a qualquer momento. Uma caracterstica especial o suporte para adio de ponto-xo. Por exemplo, PSTricks usa o \multido para enumerar eixos. Para usarmos este pacote, devemos adicionar no prembulo o seguinte pacote \usepackage{multido} e a sua utilizao no decorrer do documento se d atravs do seguinte comando: \multido{variveis}{repetio}{ao} ao alguma coisa que voc quer que repita, ou seja, todos detalhes que devem se repetir ao longo do objeto que se est editando. repetio o nmero de vezes que ao repetido. variveis uma lista de vrias declaraes separadas por um vrgula1 . Cada declarao das variveis da forma: varivel = valor inicial + incremento varivel uma seqencia de comando que pode ser usado dentro da ao. Inicialmente estabelece-se o valor inicial, e este incrementado a cada repetio pelo valor do incremento. A primeira letra do nome da varivel determina o tipo de varivel. Existem quatro tipos de variveis: Dimenso (d ou D): O valor inicial e o incremento devem ser dimenses (comprimentos, em linguagemA LTEX). O texto de substituio uma dimenso, com sp unidades. Por exemplo \dx=4cm+5pt.1

No use vrgulas para demarcar nmero decimal dentro do argumento variveis, elas causaro confuso para os delimitadores

1

Cap. 1 O Pacote Multido

Nmero (n ou N): O valor inicial e o incremento devem ser inteiros ou nmeros com o mesmo nmero de dgitos direita do decimal. Uma excesso que, para o valor inicial, sempre bom ser um inteiro. Pode haver no mximo 8 dgitos em cada lado do decimal. O texto de substituio um nmero, com ponto-xo. Por exemplo, \n=3+7.05,\Nx=5.30+-1.25. Inteiro (i ou I): O valor inicial e incremento devem ser inteiros. Isto d o mesmo resultado do que a varivel nmero, mas mais rpido. Por exemplo, \i=2+-1. Real (r ou R): O valor inicial e incremento devem ser inteiros ou nmeros com no mximo 4 dgitos em cada lado do decimal. A o texto de substituio um nmero, mas com adio de ponto utuante e pequenos erros ocasionais. Isto da um resultado menos satisfatrio do que usando a varivel nmero, mas rpido. Por exemplo \ry=4.2+1.05. Exemplo 1 Aqui esto alguns exemplos que ilustram o texto substitudo:1

\multido{}{8}{\LaTeXe \ \ }

A A A A A A A A LTEX 2 LTEX 2 LTEX 2 LTEX 2 LTEX 2 LTEX 2 LTEX 2 LTEX 21

\multido{\d=2cm+3cm}{5}{\d , }

3729359sp, 9323398sp, 14917437sp, 20511476sp, 26105515sp,1

\multido{\n=2+3}{10}{\n, }

2, 5, 8, 11, 14, 17, 20, 23, 26, 29,1

\multido{\i=2+-3}{13}{\i, }

2, -1, -4, -7, -10, -13, -16, -19, -22, -25, -28, -31, -34,1

\multido{\r=2+3.05}{6}{\r, }

2.0, 5.05, 8.1, 11.15001, 14.20001, 17.25002,

Mais alguns detalhes: Os comandos do \multido podem ser aninhados. Espaos depois de um comando \multido so ignorados. Isto faz o \multido mais hospitaleiro para os desenhos. Espaos entre as vrias partes de argumentos das variveis so ignorados. .................................................................................................... 2

by Geovane Krger

Cap. 1 O Pacote Multido

Exemplo 2 Neste exemplo temos o pacote multido usado em conjunto com o pacote picture:1 2 3 4

\setlength{\unitlength}{1cm} \begin{picture}(8,1)(-0.5,-.5) \put(0,0){\vector(1,0){8}} \multido{\i=0+1,\n=0+0.25}{8}{

-

%5 6

0

0.25 0.50 0.75 1.00 1.25 1.50 1.75

\put(\i,-.1){\line(0,1){.2}} \put(\i,-.2){\makebox(0,0)[t ]{\n}}} \end{picture}

7

by Geovane Krger

.................................................................................................... 3

***

**** * * ** ** ******** * *

* * ** * * * *

* ** * * * *

***** *** *

********

* **** *

*******

****** ** *** *

******* ** * ***

* ***** *

**

* ** * * *

* * * * * * * * * * * **** **** * * ***

* * * * ** **** *** *

* * * **** * * * * *

* *********** * * *

**************

******

***

**

********

** ** ** *

***** ***

*****

** **

* **

***

** *

***

***

**

**********

* ** ** * * * * * * * * *

**********

*********

*********

******** *********

*

**

**

* **** * * * * *

**

**

** ** * * * * * *

*

**

**

******

**

*

**

***

**

**

**

* ** * * **

**

* **

*****

**

*

**

**

**

**

*********

**

***** * * ***

*

* **

**

**

**

**

* * ****

* ** *****

**

**

**

* * *** *

* ***

* **

** **

**

*

*

*

** **

*****

***

** * * * * * **

* ***

**

* ** * * * * * * * *

*********

**

* * ** * * * * * *

* ***** * * * * **** ****

***

***

**

* ***

***** *

* *

****

********

** **

****

* * **

**

************

* ***

**

* ** ** **

****

* ** ****

**

**

** *

*

***************

* * ** * ** * * * ** *

*

**

* * * * ** **

*

**

*

* *** * *

*

**

**

*

*

* * * **

* **** *

*

** ** * ** * ** * *

** *

****** * * ******

**** *

* ** *

*****

**

*

* *

******

*

*

*

*

*

* *

**

*

* *

* * ****

* * * * * ** * * * * ** * * * ** * * * * * * * * * * * * ************ ** * * ** * ** ** *** ** ****

* * * * **** * * * * * * * * * ** * * * * * *

**

* * * * ** ** ** * ** * * * * * * * * ** * * * * * *** * ***** ** *

* * * * * ** * * * * * * ** * * * * * * * ** * *

* ** ** ** ** *

* ** ** *

** ** * * *********

*

*

***** *** *

**** ****

*********

*

*********** ** **

*

* *

* * * * *** * ** * *

* ** *

*****

**

* * ******* *****

***

* * * * *** *** *** *** * ** ***** *

**

* ** * * * * * *

**** **

* **************

** ***

***

**

* ** * * *

** *

** *

******** * * ** *

****

**

**** **** *

**

* ********

********

**

* ** * * * *

* * * * ** *

***** * ******

***** * ******

***** * * *

***** * * *

**

******* ** *** *

*** ***

** * * ** *

**

**** * *

*** **

* *** *

*

**

***

** **

*

**

***

**

*** *

**************

* ** ** *

**************

*************

* ****

* **

* **

***

* ** ***

**

**

**

* * * * * *****

**

* **** *** **

* * * ******

********

*

* ****

**

***

**

* ** **

*

***

***

**

***

**

Captulo

2

O Pacote pstricksOs melhores editores de guras, desenhos e grcos so os que usam a linguagem PostScript podendo resultar assim, em um sistema muito poderoso. Enquanto muitos pacotes de macro usam apenas algumas partes do PostScript, o macro mais completo para este propsito indiscutivelmente o PSTricks. PSTricks um conjunto de pacotes muito poderoso com inmeras ferramentas e combinaes de ferramentas que podem ser utilizadas, do qual traremos apenas alguns exemplos e algumas demonstraes neste material, algo bem bsico sobre alguns pacotes pois se fosse para falar de tudo teria que ser feito um manual em vrios volumes, outro motivo de ser algo bsico por que no fcil de manipular a linguagem destes pacotes,A seria necessrio ter um maior conhecimento do LTEX, de programao e computao em geral. Para quem quiser obter maiores informaes sobre cada pacote descrito aqui, poder consultar a bibliograa indicada.

Como j havamos mencionado, estes pacotes no tem habilidades especiais com drivers PDF, portantoA quando gerar o documento produzido pelo LTEX, devemos primeiramente criar o arquivo .dvi passar para .ps e

depois para .pdf. Com PSTricks ns podemos: desenhar linhas, polgonos, crculos e curvas;A Situar e manipular textos do LTEX;

desenhar nodos e conectores (inclusive rvores); fazer linhas coloridas e preencher objetos; denir novos comandos grcos. Para o uso dos objetos descritos a seguir e para o uso dos outros pacotes do conjunto PSTricks devemos sempre adicionar no prembulo o pacote \usepackage{pstricks} 5

Cap. 2 O Pacote pstricks

2.1 Conceitos Bsicos de PSTricks

e os demais pacotes que sero visto no decorrer deste captulo devero ser adicionados logo abaixo este comando. Argumentos e Delimitadores A seguir temos alguns argumentos e delimitadores que so muito importantes e bom ns conhecermos e termos eles em mente. Chaves (para argumentos mandatrios) {argumento} Colchetes (para argumentos opcionais) [argumento] Parnteses e vrgulas para coordenadas (x,y) = e vrgulas para parmetros parte1=valor1,. . . espaos e vrgulas tambm podem ser usados como delimitadores dentro de argumentos. Nunca devemos usar vrgula como ponto decimal, para que o PSTricks no confunda a vrgula com um delimitador. As confuses mais comum de se fazer com macros PSTricks com os delimitadores. Portanto delimitadores so geralmente a primeira coisa para se checar quando ns cometemos algum erro com um macro PSTricks. Considerando que macros de PSTricks podem conter muitos comandos, til saber que ns podemos deixar um espao ou linha em branco entre qualquer argumento, exceto entre argumentos que esto inseridos dentro de chaves {}. Se precisarmos inserir uma nova linha entre argumentos que esto entre um par de chaves, podemos colocar um caractere de comentrio % no m da linha.

2.1 Conceitos Bsicos de PSTricks2.1.1 O Ambiente pspictureOs objetos podem ser mixados junto com comandos normais, ou podem ser usados dentro de um ambiente de gura para a construo dos mesmos. O ambiente especial para isso : \begin{pspicture}[parmetros](x0 , y0 )(x1 , y1 ) . . . Comandos . . . \end{pspicture}

by Geovane Krger

.................................................................................................... 6

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

onde os objetos so postos em uma caixa cujo canto inferior esquerdo (x0 , y0 ) (padro (0,0)) e o canto superior direito (x1 , y1 ). Normalmente, as guras podem estender-se para fora dos limites da folha, porm, se ns incluirmos o *, qualquer coisa fora dos limites cortado (pspicture*). Temos um parmetro para ser usado junto com o ambiente pspicture: shift=dimenso com este parmetro ns podemos proporcionar um deslocamento vertical do objeto em relao a linha de base (baseline). O seu valor padro 0. A seguir temos um exemplo simples que foi posto dentro de uma grade para visualizar o sistema de coordenadas. Exemplo 32 1 0 0 1 21 2 3

\begin{pspicture}(0,0)(-1.8,2) \psgrid[subgriddiv=1,griddots=10](0,0)(2,2) \psline[linewidth=1pt,linecolor=gray]{}(0.5,0) (0,1)(1,1.5)(1.5,1)(.5,.5) \end{pspicture}

4

2.2 Estabelecendo Parmetros GrcosPSTricks usa um sistema de valor-chave de parmetros grcos para customizar macros que geram guras (por exemplo, linhas e crculos), ou guras combinadas com texto (por exemplo, caixas com molduras). Para alterarmos os valores padro dos parmetros, usamos o comando \psset, cuja sintaxe : \psset{parmetro1=valor1, parmetro2=valor2, . . . } espaos extras so aceitos somente aps a vrgula que separa parmetro=valor, portanto no devemos colocar espaos extras como em parmetro =valor, ou parmetro= valor, pois isso ir gerar erro. Praticamente todos os macros que fazem uso de parmetros grcos permitem que faamos mudanas em um primeiro argumento opcional, o qual ca delimitado por colchetes, por exemplo os argumentos opcionais do comando \psline[linecolor=green,linestyle=dotted](8,7), iro desenhar uma linha verde pontilhada.

2.2.1 Dimenso, Coordenadas e ngulosToda vez que o macro de um PSTricks for uma dimenso, a unidade opcional. Por padro, o sistema de coordenadas tem unidade de 1cm tanto na direo x quanto na y. Mas isto fcil de ser alterado em qualquerby Geovane Krger

.................................................................................................... 7

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

momento. Para alterarmos todo o sistema ao mesmo tempo, podemos usar o seguinte comando: \psset{unit=dimenso} por exemplo, usando o valor padro de medida que 1cm, ento os seguintes macros so equivalentes \psset{linewidth=.5cm} e \psset{linewidth=.5}, ou seja, s precisamos especicar a unidade de medida quando quisermos outra unidade.A Pares de coordenadas tem a forma (x, y). A origem do sistema de coordenadas no LTEX o ponto

atual, ou seja onde estamos. O comando \SpecialCoor nos deixa usarmos coordenadas polares, da forma (r; a), onde r o raio e a o ngulo. Podemos usar tambm coordenadas cartesianas que da forma (x, y). O parmetro unit na verdade xa trs parmetros, xunit, yunit e runit, onde todos tem como unidade padro 1cm. Em um sistema de coordenadas cartesianas, podemos escalar a dimenso de x e y separadamente usando o comando \psset{xunit=dimenso, yunit=dimenso} observe que no necessrio denir os dois, podemos denir apenas um dos comandos, e o outro ca com a unidade padro, caso no denido. Exemplo 42

1 2

\begin{pspicture}(0,0)(-2,5) \psset{yunit=1in} \psgrid[subgriddiv=1,griddots=10](0,0)(2,2) \psline[linewidth=1pt,linecolor=gray]{}(0.5,0) (0,1)(1,1.5)(1.5,1)(.5,.5) \end{pspicture}

1

3 4

5

0 0 1 2

ngulos, em coordenadas polares ou em outros parmetros, deve ser um nmero que representa o ngulo em graus, que o padro. Mas ns tambm podemos alterar as unidades usadas para ngulos com o comando \degrees[partes] .................................................................................................... 8

by Geovane Krger

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

onde partes nmero de unidades em um crculo, ou seja, em quantas partes dividido o crculo. Por padro que em graus, \degrees[360]. O comando \radians um atalho para \degrees[6.28319]. Podemos especicar ngulos de outros modos com o comando \SpecialCoor. Veja a seguir alguns exemplos: Exemplo 51 0 -1 -1 0 11 2 3 4 5

\begin{pspicture}(0,-1)(-2,1) \psgrid[subgriddiv=1,griddots=10](-1,-1)(1,1) \SpecialCoor \multido{\iAngle=0+12}{30}{\psdot(1;\iAngle)} \end{pspicture}

Exemplo 64 3 2 1 0 0 1 2 3 41 2 3 4 5 6

\begin{pspicture}(-2,4) \SpecialCoor \psset{runit=1} \psgrid[subgriddiv=1,griddots=10](0,0)(4,4) \psline(0;0)(4;60)(4;0)(0;0) \end{pspicture}

2.2.2 Comandos de CorDetalhes importantes sobre comandos de cor: Os comandos de cor podem ser usados dentro e fora do modo matemtico; Os comandos de cor afetam tudo que estiver em seu alcance no somente caracteres, por exemplo linhas; O alcance dos comandos de cores no se extendem ao longo das pginas; Algumas cores pr-denidas em PSTricks so: a escala de cinza, black (Preto), darkgray (Cinza Escuro), gray (Cinza), lightgray (Cinza Claro) e white (Branco); e as cores, red (Vermelho), green (Verde), blue (Azul), cyan (Ciano), magenta (Magenta) e yellow (Amarelo). Portanto estes nomes podem ser usados com os objetos de grcos que sero vistos adiante. Ns tambm podemos denir ou redenir cores adicionais e escalas de cinza com o comandoby Geovane Krger

.................................................................................................... 9

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

\denecolor{nome da cor}{modelo}{parmetros} onde em cada caso parmetros so nmeros entre 0 e 1 separados por vrgula dependendo do modelo de cor usado. A seguir temos alguns modelos: gray com este modelo podemos especicar uma nova escala de cinza, onde 0 preto e 1 branco, nesse caso usado s um nmero em parmetros. sistema rgb de cores signica: red-green-blue, portanto podemos misturar essas cores para formar novas cores (trs nmeros em parmetros). sistema hsb de cores signica: hue-saturation-brightness (matriz-saturao-brilho), (trs nmeros em parmetros). sistema cmyk de cores signica: cyan-magenta-yellow-(k)black (quatro nmeros em parmetros). Exemplo 71 2 3 4 5 6 7 8 9 10 11 12

\begin{pspicture}(0,-3)(-4,3) \psset{unit=3} \multido{\nHue=0.01+0.01}{100}{ \definecolor{MyColor}{hsb}{\nHue,1,1} \pscircle[linewidth=0.01,linecolor=MyColor]{\nHue}} \end{pspicture} \begin{pspicture}(-5,-3)(-9,3) \psset{unit=3} \multido{\nHue=0.01+0.01}{100}{ \definecolor{MyColor}{rgb}{\nHue,\nHue,0} \pscircle[linewidth=0.01,linecolor=MyColor]{\nHue}} \end{pspicture}

by Geovane Krger

.................................................................................................... 10

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

2.2.3 Parmetros BsicosA largura e cor das linhas dado pelos seguintes parmetros: linewidth=dimenso linecolor=cor onde os valores padro so: linewidth=0.8pt e linecolor=black.

2.2.4 Estilos de LinhaOs seguintes parmetros grcos (em adio com linewidth e linecolor) determinam como as linhas so desenhadas. linestyle=estilo Os estilos disponveis so: none (nenhum), solid (slido), dashed (tracejado) e dotted (pontilhado). Padro solid. dash=dimenso1 dimenso2 O tracejado Preto-e-Branco padro para o estilo de linha dashed : dash=5pt 3pt. Exemplo 81 2 3

\begin{pspicture}(0,0)(-1,2) \psellipse[linestyle=dashed,dash=3pt 2pt](2,1)(2,1) \end{pspicture}

Podemos usar uma variao do parmetro dash da seguinte maneira: dash=dimenso1 dimenso2 dimenso3 dimenso4 usando desta maneira, podemos fazer com que uma linha no seja somente tracejada ou pontilhada, e sim tracejada e pontilhada ao mesmo tempo, veja: Exemplo 91 2

\begin{pspicture}(0,0)(-1,0.7) \psline[linestyle=dashed,dash=4pt 2pt 1pt 2pt ]{|->>}(5,0.5) \end{pspicture}

3

by Geovane Krger

.................................................................................................... 11

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

dotsep=dimenso a distncia entre pontos para o estilo de linha dotted. Padro : dotsep=3pt. Exemplo 101 2 3

\begin{pspicture}(0,0)(-1,0.7) \psline[linestyle=dotted,dotsep=2pt]{|->>}(5,0.5) \end{pspicture}

border=dimenso bordercolor=cor Com estes dois parmetros ns podemos desenhar uma borda com largura dimenso e cor cor em cada lateral da curva. Isto til para quando uma linha passa por cima da outra. Os valores padro so: border=0pt e bordercolor=white. Exemplo 111 2 3 4

\begin{pspicture}(0,0)(-1,1.5) \psline{}(0,1.5)(3,0) \end{pspicture}

doubleline=true/false Quando true (verdadeiro), desenhada uma linha dupla, separada por um espao que da largura especicada em doublesep e com a cor especicada em doublecolor. Com este comando algumas setas podem parecer estranhas. Padro false. doublesep=dimenso padro : doublesep=1.25\pslinewidth. doublecolor=cor padro : doublecolor=white.

by Geovane Krger

.................................................................................................... 12

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 121 2 3 4

\begin{pspicture}(0,0)(-2,1) \psline[doubleline=true,doublesep=1.5pt]{->}(6,0)(11,1)(12,0) \psline[doubleline=true,doublesep=1.5pt,doublecolor=yellow]{->}(6,0)(1,1)(0,0) \end{pspicture}

2.2.5 Estilos de PreenchimentoPodemos preencher as regies delimitadas por curvas abertas e fechadas, usando os seguintes parmetros: llstyle=estilo Os estilos vlidos para serem usados so: none (Padro), solid, vlines, vlines*, hlines, hlines*, crosshatch, crosshatch*, eoll e boxll. Os parmetros vlines, hlines e crosshatch esboam um padro de linhas de acordo com quatro parmetros que sero listados a seguir. As verses com *, tambm preenchem o fundo como no estilo solid. O estilo eoll como o estilo solid, mas a diferena que caso alguma gura tenha uma sobreposio de imagem, a imagem que vai por cima do restante no preenchida. O estilo boxll, necessita do pacote \usepackage{pst-fill}, permitindo preencher a rea com um padro denido usando o macro \psboxfill (ver o captulo ??). llcolor=cor a cor de fundo nos estilos: solid, vlines*, hlines* e crosshatch*. hatchwidth=dimenso largura das linhas (padro 0.8pt). hatchsep=dimenso largura do espao entre as linhas (padro 4pt). hatchcolor=cor cor das linhas (padro black).by Geovane Krger

.................................................................................................... 13

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

hatchangle=rotao rotao das linhas, em graus (padro 45). hatchsepinc=dimenso incremento adicional de espao entre duas linhas (Padro 0pt). hatchwidthinc=dimenso valor para incrementar uma linha de largura em cada linha (Padro 0pt). addllstyle=estilo isto permite usar dois estilos diferentes para a mesma rea. Isso especialmente til quando o estilo boxll usado. Exemplo 131 2

\begin{pspicture}(0,0)(-1,3) \pspolygon[fillstyle=vlines*,fillcolor=yellow](0,0) (0,3)(4,0) \pspolygon[fillstyle=hlines,hatchcolor=blue](0,0) (4,3)(4,0) \pspolygon[fillstyle=crosshatch*,fillcolor=black, hatchcolor=white,hatchwidth=1.2pt,hatchsep=1.8 pt,hatchangle=0](0,3)(2,1.5)(4,3) \end{pspicture}

3

4

5

Exemplo 141 2

\begin{pspicture}(\linewidth,3) \psframe[fillstyle=vlines,hatchangle=0,hatchsep=.5pt,hatchwidth=1pt,hatchwidthinc =0.25pt](\linewidth,3) \end{pspicture}

3

by Geovane Krger

.................................................................................................... 14

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 151 2

\begin{pspicture}(\linewidth,3) \psframe[fillstyle=hlines,hatchangle=0,hatchwidth=1pt,hatchsep=0.5pt,hatchsepinc=0.1 pt,hatchcolor=Orange](\linewidth,3) \end{pspicture}

3

Exemplo 161 2

\begin{pspicture}(\linewidth,3) \psframe[fillstyle=crosshatch,hatchangle=-90,hatchwidth=1pt,hatchsep=0.5pt, hatchsepinc=0.1pt,hatchcolor=blue](\linewidth,3) \end{pspicture}

3

2.2.6 Setas e Outras PontasLinhas e outras regies abertas podem terminar com vrios tipos de cabeas de setas, t-barras ou crculos. Com o parmetro arrows=estilo escolhemos qual tipo ns queremos. Os valores possveis so descritos na tabela a seguir. Ns podemos misturar e igualar as setas, por exemplo: ->, *-), [->. Observe que os parmetros com * fazem com que as linhas mantenham o tamanho original, ou seja, a seta colocada no ir aumentar o tamanho da gura. Em muitos casos, ns podemos incluir as setas usando como um parmetro opcional, dispostos entre chaves, antes de qualquer outro argumento, exceto para argumentos de parmetros opcionais (que esto dentroby Geovane Krger

.................................................................................................... 15

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Valor >-< >>-}(0,0)(6,0)

1

\psline[arrowsize=3mm 5,arrowlength=1,arrowinset=-0.4]{->}(0,0)(6,0)

continuando . . . tbarsize=dimenso nmero a largura de uma T-barra, colchete ou parntese o nmero multiplicado por linewidth mais a dimenso (Isso se o valor opcional nmero includo). Valor padro tbarsize=2pt 5. bracketlength=numero comprimento do colchete quando usado : numero tbarsize. Padro bracketlength=0.15 rbracketlength=numero comprimento do parntese quando usado : numero tbarsize. Padro rbracketlength=0.15.by Geovane Krger

.................................................................................................... 17

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

arrowscale=nmero funciona como escala. Padro : arrowscale=1. Ideal para quando usamos discos ou crculos. Exemplo 181

\psline[tbarsize=1mm 15,bracketlength=1]{[-[}(0,0)(6,0)

1

\psline[tbarsize=1mm 15,rbracketlength=1]{(-(}(0,0)(6,0)

1

\psline[arrowscale=3.5]{o-*}(0,0)(6,0)

Se ns quisermos, tambm podemos colocar pontos nas coordenadas especicadas usando o parmetro showpoints=true/false padro false. Existem outros modos de controlar ou escolher o estilo de pontos, mas isto ser descrito mais adiante. Exemplo 191

\psline[showpoints=true]{->}(0,0)(1,0)(2,0)(3,0)(4,0)(7,0)(8,0)

2.2.7 Linhas e PolgonosAntes de partimos para a descrio dos objetos, descreveremos alguns parmetros que so usados por eles: linearc=dimenso o raio dos arcos formados nos cantos de objetos \psline e objetos grcos \pspolygon. dimenso deve ser positivo (Padro 0pt). framearc=nmero .................................................................................................... 18

by Geovane Krger

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

em \psframe e macros de caixas moldadas, o raio dos cantos arredondados por padro xo, mas com nmero ns podemos multiplicar a largura ou a altura. nmero deve estar entre 0 e 1 (Padro 0). cornersize=relative/absolute se cornersize relative, ento o parmetro framearc determina o raio dos cantos arredondados para \psframe como descrito acima (e conseqentemente o raio depende do tamanho da moldura). Se cornersize absolute, ento o parmetro linearc determina o raio dos cantos arredondados para psframe (e conseqentemente o raio de tamanho constante). (Padro relative). gangle=ngulo este parmetro usado para rotacionar as guras geradas pelos comandos \psdiamond e \pstriangle, o eixo de rotao o centro da gura (valor padro 0). Agora sim vejamos os tipos de linhas e polgonos: \psline[parmetros]{setas}(x0 , y0 )(x1 , y1 ) . . . (xn , yn ) \psline*[parmetros]{setas}(x0 , y0 )(x1 , y1 ) . . . (xn , yn ) Isto desenha uma linha que passa pela lista de coordenadas. necessrio ao menos dois par de coordenadas. Exemplo 202 1 0 0 1 2 3 41 2 3

\begin{pspicture}(0,0)(-1,2) \psgrid[subgriddiv=1,griddots=10](0,0)(4,2) \psline[linewidth=0.05cm,linearc=0.1]{->}(4,2) (0,1)(2,0) \end{pspicture}

4

\qline(x0 , y0 )(x1 , y1 ) Esta uma verso simples de \psline, o qual no tem argumentos, no usa setas e desenha somente uma linha reta. Para alterar a dimenso da linha devemos usar \psset. Exemplo 211 0 0 1 21 2 3 4

\begin{pspicture}(0,0)(-2,1) \psgrid[subgriddiv=1,griddots=10](0,0)(2,1) \qline(0,0)(2,1) \end{pspicture}

by Geovane Krger

.................................................................................................... 19

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

\pspolygon[parmetros](x0 , y0 )(x1 , y1 )(x2 , y2 ) . . . (xn , yn ) \pspolygon*[parmetros](x0 , y0 )(x1 , y1 )(x2 , y2 ) . . . (xn , yn ) Isto semelhante ao \psline, mas desenha um caminho fechado. necessrio ao menos trs pares de coordenadas. Exemplo 221

\begin{pspicture}(0,0)(-.6,3) \psgrid[subgriddiv=1,griddots =10](0,0)(8,3) \pspolygon[linewidth=0.05cm](1,0) (0,1)(0,2)(1,3)(2,3)(3,2)(3,1) (2,0)(1,0) \pspolygon*[linearc=.4,linecolor= Periwinkle](4,0)(4,3)(8,0)(8,3) \end{pspicture}

3 2 1 0 0 1 2 3 4 5 6 7 8

2

3

4

5

\psframe[parmetros](x0 , y0 )(x1 , y1 ) \psframe*[parmetros](x0 , y0 )(x1 , y1 ) \psframe desenha um retngulo com cantos opostos (x0 , y0 ) e (x1 , y1 ) Exemplo 231

\begin{pspicture}(0,0)(-.6,4) \psgrid[subgriddiv=1,griddots=10](0,0)(6,4) \psframe[linewidth=0.1cm,fillstyle=solid, fillcolor=Yellow](6,4) \pspolygon[linewidth=0.05cm,fillstyle=solid, fillcolor=Green] (2.5,0.5)(1.5,1.5)(1.5,2.5)(2.5,3.5)(3.5,3.5) (4.5,2.5)(4.5,1.5)(3.5,0.5)(2.5,0.5) \psframe*[linecolor=white,framearc=.9](2,1) (4,3) \end{pspicture}

4 3

2 3

4

2 1 0 0 1 2 3 4 5 67 5

6

\psdiamond[parmetros](x0 , y0 )(x1 , y1 ) \psdiamond*[parmetros](x0 , y0 )(x1 , y1 )by Geovane Krger

.................................................................................................... 20

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

\psdiamond desenha um losango centrado em (x0 , y0 ) e meia largura e meia altura igual a (x1 , y1 ), respectivamente. Exemplo 2441

\begin{pspicture}(0,0)(-1,4) \psgrid[subgriddiv=1,griddots=10](0,0) (6,4) \psdiamond[linewidth=0.06cm,fillstyle= solid,fillcolor=BrickRed](3,2) (2.5,1.5)

3 2 1

2

3

4

0 0 1 2 3 4 5 6

5

\psdiamond*[linecolor=white](3,2)(0.7,1) \end{pspicture}

\pstriangle[parmetros](x0 , y0 )(x1 , y1 ) \pstriangle*[parmetros](x0 , y0 )(x1 , y1 ) \pstriangle desenha um tringulo issceles com base centrada em (x0 , y0 ), e com largura da base e altura igual a (x1 , y1 ), respectivamente. Exemplo 252 1 0 0 1 2 3 41 2 3

\begin{pspicture}(0,0)(-1,2) \psgrid[subgriddiv=1,griddots=10](0,0)(4,2) \pstriangle[linewidth=.1mm,fillstyle=solid, fillcolor=ProcessBlue,gangle=10](2,.5)(4,1) \end{pspicture}

4

2.2.8 Arcos, Crculos e Elipses\pscircle[parmetros](x0 , y0 ){raio} \pscircle*[parmetros](x0 , y0 ){raio} Isto desenha um crculo cujo centro (x0 , y0 ) e que tem raio igual a raio.

by Geovane Krger

.................................................................................................... 21

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 2611

\begin{pspicture}(0,-1)(-3,1) \psgrid[subgriddiv=1,griddots=10](-1,-1)(1,1) \pscircle[linewidth=1mm](0,0){1} \end{pspicture}

0 -1 -1 0 1

2 3 4

\qdisk(x, y){raio} Esta uma verso simplicada de \pscircle. Possue somente os dois comandos obrigatrios, no possue argumentos opcionais. Para alterarmos a cor devemos usar \psset. \pswedge[parmetros](x0 , y0 ){raio}{ngulo1}{ngulo2} \pswedge*[parmetros](x0 , y0 ){raio}{ngulo1}{ngulo2} Com isto desenhamos uma cunha cujo centro (x0 , y0 ), que tem raio igual raio, e se estende em sentido anti-horrio do ngulo1 para o ngulo2. Os ngulos devem ser especicados em graus. Exemplo 271 2 3 4 5

\begin{pspicture}(0,0)(-4,2) \psgrid[subgriddiv=1,griddots=10](0,0)(8,2) \pswedge*[linecolor=BurntOrange](0,0){2}{0}{35} \pswedge[linewidth=1mm,linecolor=YellowGreen](5,0){2}{10}{140} \end{pspicture}

2 1 0 0 1 2 3 4 5 6 7 8

\psellipse[parmetros](x0 , y0 )(x1 , y1 ) \psellipse*[parmetros](x0 , y0 )(x1 , y1 ) (x0 , y0 ) o centro da elipse, e (x1 , y1 ) so os raios horizontais e verticais, respectivamente.

by Geovane Krger

.................................................................................................... 22

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 2811

\begin{pspicture}(0,-1.5)(-3,1) \psgrid[subgriddiv=1,griddots=10](-2,-1)(2,1) \psellipse[linewidth=1mm,linecolor=gray](0,0)(2,1) \end{pspicture}

0 -1 -2 -1 0 1 2

2 3 4

\psarc[parmetros]{setas}(x, y){raio}{nguloA}{nguloB} \psarc*[parmetros]{setas}(x, y){raio}{nguloA}{nguloB} Isto desenha um arco do ngulo1 para o ngulo2, indo em sentido anti-horrio, para um crculo de raio raio e centrado em (x, y). O argumento de setas no obrigatrio. Exemplo 291 2 3 4 5

\begin{pspicture}(0,0)(-2,2) \psgrid[subgriddiv=1,griddots=10](0,0)(13,2) \psarc[showpoints=true](2,2){1.5}{215}{0} \psarc[showpoints=true]{}(6,0){1.5}{0}{160}

\psarc*[showpoints=true](10,0){1.8}{10}{140} 6 \end{pspicture}

2 1 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13

O parmetro showpoints=true aqui, desenha um linha tracejada do centro at o arco, o que bem til. O macro \psarc ainda contm alguns parmetros que podem ser usados: arcsepA=dimenso Com este parmetro, ns podemos ajustar o arco de maneira que ele comear a partir de uma certa linha (invisvel) em dimenso. Essa linha se estende do centro do arco na direo do nguloA, e a sua largura divide-se meio a meio para cada lado do centro. Para entender melhor esse parmetro, veja o exemplo ?? e analise a gura. arcsepB=dimenso como no arcsepA, mas ajustado em relao ao nguloB.by Geovane Krger

.................................................................................................... 23

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

arcsep=dimenso isto ajusta a ambos. Exemplo 302 1 0 0 1 2 3 41 2 3

\begin{pspicture}(0,0)(-1,2) \psgrid[subgriddiv=1,griddots=3](0,0)(4,2) \psarc[showpoints=true,arcsepA=4cm]{->}(2,0) {1.8}{0}{160} \end{pspicture}

4

Exemplo 312 1 0 0 1 2 3 41 2 3

\begin{pspicture}(0,0)(-1,2) \psgrid[subgriddiv=1,griddots=3](0,0)(4,2) \psarc[showpoints=true,arcsepB=4cm]{->}(2,0) {1.8}{0}{160} \end{pspicture}

4

by Geovane Krger

.................................................................................................... 24

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 321 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

\begin{pspicture}(0,-2.5)(-5,2) \SpecialCoor \psgrid[subgriddiv=2,subgriddots=10,griddots=10](-2,-2)(2,2) \psarc*[linecolor=green,showpoints=true](0,0){2}{0}{180} \psarc*[showpoints=true,arcsepA=1cm](0,0){2}{0}{180} \psarc*[linecolor=red,showpoints=true,arcsepA=2cm](0,0){2}{0}{180} \psarc*[linecolor=blue,showpoints=true,arcsepA=3cm](0,0){2}{0}{180} \psarc*[linecolor=yellow,showpoints=true,arcsepA=4cm](0,0){2}{0}{180} \psarc*[linecolor=green,showpoints=true,arcsepA=5cm](0,0){2}{0}{180} \psarc*[showpoints=true,arcsepA=6cm](0,0){2}{0}{180} \psarc*[linecolor=red,showpoints=true,arcsepA=7cm](0,0){2}{0}{180} \psarc*[linecolor=blue,showpoints=true,arcsepA=8cm](0,0){2}{0}{180} \psarc*[linecolor=yellow,showpoints=true,arcsepA=9cm](0,0){2}{0}{180} \psarc*[linecolor=green,showpoints=true,arcsepA=10cm](0,0){2}{0}{180} \psarc*[showpoints=true,arcsepA=11cm](0,0){2}{0}{180} \psarc*[linecolor=red,showpoints=true,arcsepA=12cm](0,0){2}{0}{180} \psline[linewidth=2cm,linestyle=dashed,linecolor=gray](0,0)(2;0) \psline[linewidth=1cm,linestyle=dashed,linecolor=lightgray](0,0)(2;0) \psline[linecolor=ProcessBlue](2.1;14)(-2,0)(2.2;27.1)(-2,0)(2.4;39.2) \end{pspicture}

2 1 0 -1 -2 -2 -1 0 1 2

Com este parmetro ca fcil desenhar a interseo de duas linhas e indicar com setas o ngulo formado entre elas.

by Geovane Krger

.................................................................................................... 25

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 331 2 3 4 5

\begin{pspicture}(0,0)(-1,3) \SpecialCoor \psline[linewidth=2pt](4;50)(0,0)(4;10) \psarc[showpoints=true,arcsepB=3pt]{->}{3}{10}{50} \end{pspicture}

\psarcn[parmetros]{setas}(x, y){raio}{nguloA}{nguloB} \psarcn*[parmetros]{setas}(x, y){raio}{nguloA}{nguloB} Tem a mesma funcionalidade de \psarc, mas a diferena que com esse comando o arco construdo no sentido horrio. \psellipticarc[parmetros]{setas}(x0 , y0 )(x1 , y1 ){nguloA}{nguloB} \psellipticarc*[parmetros]{setas}(x0 , y0 )(x1 , y1 ){nguloA}{nguloB} Isto desenha um arco elptico do nguloA para o nguloB, indo no sentido anti-horrio, sendo (x0 , y0 ) o centro da elipse e (x1 , y1 ) o raio horizontal e vertical, respectivamente. Exemplo 341 0 -1 -1 0 1 21 2 3

\begin{pspicture}(0,-1)(-2,1) \psgrid[subgriddiv=1,griddots=10](-1,-1)(2,1) \psellipticarc[showpoints=true,arrowscale =2]{->}(.5,0)(1.5,1){215}{0} \end{pspicture}

4

\psellipticarcn[parmetros]{setas}(x0 , y0 )(x1 , y1 ){nguloA}{nguloB} \psellipticarcn*[parmetros]{setas}(x0 , y0 )(x1 , y1 ){nguloA}{nguloB} Tem a mesma funcionalidade de \psellipticarc, mas a diferena que com esse comando o arco construdo no sentido horrio. \psellipticwedge[parmetros]{setas}(x0 , y0 )(x1 , y1 ){nguloA}{nguloB} .................................................................................................... 26

by Geovane Krger

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

\psellipticwedge*[parmetros]{setas}(x0 , y0 )(x1 , y1 ){nguloA}{nguloB} Com isto desenhamos uma cunha elptica cujo centro (x0 , y0 ), e tem os raios horizontais e verticais descritos por (x1 , y1 ), e se estende em sentido anti-horrio do ngulo1 para o ngulo2. Os ngulos devem ser especicados em graus. Exemplo 3521 2

\begin{pspicture}(0,-1)(-3,2) \psgrid[subgriddiv=1,griddots=10,gridlabels=7pt ](-2,-1)(2,2) \psellipticwedge[fillstyle=vlines,linewidth =0.1](0,0)(1.5,1){0}{200} \psellipticwedge[fillstyle=hlines,linecolor=red ](0,0)(0.5,1.5){30}{220} \end{pspicture}

13

04

-1 -2 -1 0 1 25

2.2.9 Curvas\psbezier[parmetros]{setas}(x0 , y0 )(x1 , y1 )(x2 , y2 )(x3 , y3 ) \psbezier*[parmetros]{setas}(x0 , y0 )(x1 , y1 )(x2 , y2 )(x3 , y3 ) Com este comando podemos desenhar uma curva de bezier com os quatro pontos de controle. Esta curva inicia na primeira coordenada, tangenciando a linha que conecta a primeira coordenada a segunda coordenada e termina na ltima coordenada, tangenciando a linha que conecta a terceira coordenada a quarta coordenada. A segunda e a terceira coordenada ainda tem a funo de puxar a curva para elas. Exemplo 36

1 2

\begin{pspicture}(0,0)(-.5,4) \psbezier[linewidth=2pt,showpoints=true ]{->}(0,0)(2,4)(6,1)(8,3.5) \end{pspicture}

3

\parabola[parmetros]{setas}(x0 , y0 )(x1 , y1 ) .................................................................................................... 27

by Geovane Krger

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

\parabola*[parmetros]{setas}(x0 , y0 )(x1 , y1 ) Isto desenha uma parbola que passa por (x0 , y0 ) e cujo mximo ou mnimo (x1 , y1 ). Exemplo 373 2 1 0 -1 -1 0 1 2 31 2 3

\begin{pspicture}(0,-1.5)(-2,3.5) \psgrid[subgriddiv=1,griddots=10](-1,-1)(3,3) \parabola[fillstyle=solid,fillcolor=red,linewidth =2pt,linecolor=darkgray]{}(-1,0)(1,1) \parabola{}(-1,3)(1,-1) \end{pspicture}

4 5

Os prximos trs objetos de grcos interpolam uma curva aberta ou fechada pelos pontos dados. A curva a cada ponto interior perpendicular linha que corta ao meio o ngulo ABC, onde B o ponto interior, e A e C so os pontos de fronteira. Escalando as coordenadas, a curva pode no car escalada proporcionalmente. A curvatura controlada pelo seguinte parmetro: curvature=nmero1 nmero2 nmero3 onde padro : curvature=1 .1 0 Ns temos que jogar as poucos com este parmetro para adquirir o que queremos. Valores individuais fora da gama -1 a 1 ou ignorado ou s para entretenimento. A explicao a seguir diz o que cada nmero faz. A, B e C refere-se a trs pontos consecutivos. Quanto mais baixo o valor de nmero1 mais apertada a curva. Quanto mais baixo o valor de nmero2, a curva apertada onde o ngulo ABC maior que 45 graus e afrouxada em outro lugar. nmero3 determina a declividade a cada ponto. Se nmero3=0, ento a curva perpendicular a B para a bisseo de ABC. Se nmero3=-1, ento a curva em B paralela a linha AC. Com este valor (e somente este valor), escalando as coordenadas causam a curva uma escala proporcional. Porm, valores positivos podem melhorar com coordenadas espaadas irregularmente. Valores menores que -1 ou maior que 2 so convertidos para -1 e 2, respectivamente. Seguindo, temos os trs macros de interpolao de curvas. .................................................................................................... 28

by Geovane Krger

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

\pscurve[parmetros]{setas}(x1 , y1 ) . . . (xn , yn ) \pscurve*[parmetros]{setas}(x1 , y1 ) . . . (xn , yn ) Isto interpola uma curva aberta entre os pontos. Exemplo 382 1 0 0 1 2 3 4 5 64 1 2 3

\begin{pspicture}(0,0)(-.5,2) \psgrid[subgriddiv=1,griddots=10](0,0)(6,2) \pscurve[showpoints=true]{}(0,1.3) (0.7,1.8)(3.3,0.5)(4.3,0.9)(5,0.2)(6,1.2) (5.5,2)(4,1.6)(3.1,0.9)(2.4,1.7)(0.4,0.4) \end{pspicture}

\psecurve[parmetros]{setas}(x1 , y1 ) . . . (xn , yn ) \psecurve*[parmetros]{setas}(x1 , y1 ) . . . (xn , yn ) Isto como \pscurve, mas a curva no estendida ao primeiro e ltimo ponto. Isto til para tentar determinar como a curva deveria unir o primeiro e o ltimo ponto, ou para, como ajustar os pontos intermedirios. Exemplo 394 3 2 1 0 0 1 2 3 4

1 2 3

\begin{pspicture}(0,0)(-1,4) \psgrid[subgriddiv=1,griddots=10](0,0)(4,4) \psecurve[showpoints=true](.125,8)(.25,4)(.5,2) (1,1)(2,.5)(4,.25)(8,.125) \end{pspicture}

4

\psccurve[parmetros]{setas}(x1 , y1 ) . . . (xn , yn ) \psccurve*[parmetros]{setas}(x1 , y1 ) . . . (xn , yn ) Isto interpola uma curva fechada pelos pontos dados.

by Geovane Krger

.................................................................................................... 29

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 401

1 0 0 1 2 3 4

\begin{pspicture}(0,0)(-1,1) \psgrid[subgriddiv=1,griddots=10](0,0)(4,1) \psccurve[showpoints=true](.5,0)(3.5,1)(3.5,0) (.5,1) \end{pspicture}

2 3

4

2.2.10 PontosOs objetos grcos \psdot[parmetros](x1 , y1 ) \psdot*[parmetros](x1 , y1 ) \psdots[parmetros](x1 , y1 )(x2 , y2 ) . . . (xn , yn ) \psdots*[parmetros](x1 , y1 )(x2 , y2 ) . . . (xn , yn ) coloca um ponto em cada coordenada. O ponto que ir aparecer depende do estilo especicado no parmetro dotstyle=estilo lembrando que, para os pontos aparecerem necessrio usar showpoints=true. (Padro : dotstyle=*). Os estilos de pontos disponveis esto descritos na tabela ??. Estilo * x asterisk oplus square diamond triangle pentagon

Exemplo

Estilo o + Basterisk otimes square* diamond* triangle* pentagon*

Exemplo

Estilo Bo

Exemplo

+ + + + +* * * * *

B+ | B| Bsquare Bdiamond Btriangle Bpentagon

+ + + + +| | | | | | | | | |

* * * * *

Tabela 2.1: Estilos de Ponto .................................................................................................... 30

by Geovane Krger

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Com exceo do estilo diamond, o centro dos pontos que contm o centro oco pode ser colorido com llcolor. Temos ainda os seguintes parmetros que podem ser usados para escolher o tamanho e a orientao dos pontos: dotsize=dimenso nmero O dimetro de um crculo ou disco : dimenso mais numero linewidth (isso se o valor nmero for especicado). O tamanho dos outros estilos de pontos similar, exceto para o estilo |, que modicado pelo comando tbarsize descrito na pgina ??. (Padro : dotsize=2pt 2). dotscale=nmero1 nmero2 Os pontos so escalado horizontalmente por nmero1 e verticalmente por nmero2. Se incluirmos somente nmero1, os pontos so escalados em ambas as direes por nmero1. (Padro : dotscale=1). dotangle=ngulo Depois de xar e escalar os pontos, estes so rotacionados por ngulo. (Padro : dotangle=1).

2.2.11 GradesPSTricks tem um macro muito poderoso para fazer grades e papel para grcos, cuja sintaxe : \psgrid[parmetros](x0 , y0 )(x1 , y1 )(x2 , y2 ) Com esse comando desenhamos uma grade com cantos opostos por (x1 , y1 ) e (x2 , y2 ) e so estes que vo descrever o intervalo da numerao dos eixos tambm. Com (x0 , y0 ) ns escolhemos onde que dever aparecer a numerao dos eixos, este parmetro no obrigatrio, e caso no seja especicado, a numerao dos eixos aparecer fora da grade, e o posicionamento depende da ordem das coordenadas (observe os exemplos a seguir). As coordenadas so sempre interpretadas como coordenadas Cartesianas. Exemplo 412 1 0 -1 -1 0 1 2 3 4 5 6

1 2 3

\begin{pspicture}(0,-1)(-2,2) \psgrid(0,0)(-1,-1)(6,2) \end{pspicture}

by Geovane Krger

.................................................................................................... 31

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 421 0 0 1 2 3 41 2 3

\begin{pspicture}(0,0)(-1,1) \psgrid(0,0)(4,1) \end{pspicture}

Exemplo 430 1 2 3 4 1 01 2 3

\begin{pspicture}(0,0)(-1,1) \psgrid(4,1)(0,0) \end{pspicture}

No que segue, temos os parmetros que podemos usar com \psgrid. gridwidth=dimenso a largura das linhas da grade (padro 0.8pt). gridcolor=cor cor das linhas da grade (padro black). griddots=nmero isso dene as linhas da grade como pontilhadas, com nmero pontos por diviso da grade. nmero tem que ser um nmero no-negativo (padro 0). gridlabels=dimenso o tamanho dos nmeros usados para marcar a grade (padro 10pt). gridlabelcolor=cor cor dos nmeros (padro black). subgriddiv=nmero o nmero de subdivises da grade. Deve ser um nmero inteiro (padro 5). subgridwidth=dimensoby Geovane Krger

.................................................................................................... 32

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

largura das linhas da sub-grade (padro 0.4pt). subgridcolor=cor cor das linhas da sub-grade (padro gray). subgriddots=nmero como griddots, mas para as subdivises (padro 0). Exemplo 4411

\begin{pspicture}(0,-1)(-2,1) \psgrid[subgriddiv=1,griddots=10,gridlabels=7pt ](-1,-1)(3,1) \end{pspicture}

0

2

-1 -1 0 1 2 3

3

Observao 2.1 \psgrid s permite o uso de 500 divises e 500 subdivises no mximo.

2.2.12 Mais Parmetros Grcosshadow=true/false quando true (verdadeiro), a sombra desenhada (padro false). A distncia da sombra dada por shadowsize=dimenso (padro : shadowsize=3pt). A direo da sombra dada por shadowangle=ngulo (padro : shadowangle=-45). E a cor da sombra dado por shadowcolor=cor (padro : shadowcolor=darkgray).

by Geovane Krger

.................................................................................................... 33

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 451 2

\begin{pspicture}(0,-1)(-2,1) \pspolygon[linearc=2pt,shadow=true,shadowangle=45, shadowcolor=gray](-1,-.55)(-1,.5)(-.8,.5) (-.8,.65)(-.2,.65)(-.2,.5)(1,.5)(1,-.55) \end{pspicture}

3

Temos mais outro parmetro grco relacionado a linhas, mas isto s pode ser aplicado o objetos grco fechados, como \psframe, \pscircle, \psellipse e \pswedge. dimen=outer/inner/middle isto determina se as dimenses esto se referindo ao interior, exterior ou o meio das fronteiras. A diferena notvel quando o linewidth grande (padro : dimen=outer). Exemplo 463 23 1 2

\begin{pspicture}(0,0)(-1,3) \psgrid[subgriddiv=1,griddots=15,gridcolor=red ](0,0)(4,3) \psset{linewidth=.2cm} \psframe[dimen=inner](0,0)(2,1) \psframe[dimen=middle](0,2)(2,3) \psframe[dimen=outer](3,0)(4,3) \end{pspicture}

1 0 0 1 2 3 4

4 5 6 7

2.2.13 Estilos de CostumeCaso tenha algum macro que usamos bastante e este contenha bastante parmetros opcionais, ns podemos denir este macro como uma verso personalizada e depois us-lo como um comando, em vez de precisar car digitando todos os parmetros toda vez que for usar este macro. Isto possvel com o seguinte comando: \newpsobject{nome}{objeto}{parmetro1=valor1, . . . } por exemplo:

by Geovane Krger

.................................................................................................... 34

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

Exemplo 472 1 2 1 3 0 0 1 2 3 4 4

\begin{pspicture}(0,0)(-1,2) \newpsobject{grade}{psgrid}{subgriddiv=1,griddots =10,gridlabels=6pt} \grade(0,0)(4,2) \end{pspicture}

Alm de congurar um novo objeto, ns tambm podemos congurar somente um novo estilo com o comando: \newpsstyle{nome}{parmetro1=valor1, . . . } por exemplo: Exemplo 481 2

\begin{pspicture}(0,0)(-1,1) \newpsstyle{meuestilo}{linecolor=blue, linestyle=dashed,linewidth=2mm} \psline[style=meuestilo]{}(0,0)(6,1) \end{pspicture}

3 4

2.2.14 Colocando e Rotacionando Coisas e TextosTemos a seguir dois comandos que podemos usar para adicionar textos nas guras, estes comandos podem ser usados em qualquer lugar, no necessrio que estes estejam localizados dentro de um ambiente pspicture. O comando mais bsico, que pode ser usado no s para texto : \rput[Referncia]{rotao}(x, y){Materiais} Referncia determina o ponto de referncia dos Materiais, e este ponto transladado para (x, y). Por padro, o ponto de referncia o centro da caixa onde ca os materiais e pode ser mudado incluindo uma ou duas das seguintes letras no argumento opcional Referncia.l Esquerda r Direita t Topo b Base B Linha de Base

Este primeiro como j mencionamos, pode ser usado para colocar objetos, textos, rtulos em qualquer lugar, mas PSTricks tem uma variao do comando anterior, o qual especco para textos e rtulos .................................................................................................... 35

by Geovane Krger

Cap. 2 O Pacote pstrickstl t

2.2 Estabelecendo Parmetros Grcos tr

l

r

Bl _ _ _ _ _ _ _ _ _ _ _ _ _ _ B _ _ _ _ _ _ _ _ _ _ _ _ _ _ Br bl b br

Figura 2.1: Localizao dos Pontos de Referncia e Suas Combinaes \uput{Separao}[ngulo de Referncia]{Rotao}(x, y){Texto} Isto coloca o Texto a uma distncia Separao de (x, y), na direo do ngulo de Referncia (Separao e Rotao so argumentos opcionais, do mesmo modo no comando anterior, Referncia e Rotao so opcionais). Exemplo 491 2

\begin{pspicture}(0,-3)(-3,3) \pswedge[fillstyle=solid,fillcolor=gray ]{2.4}{0}{70} \pswedge[fillstyle=solid,fillcolor=lightgray ]{2.4}{70}{200} \pswedge[fillstyle=solid,fillcolor=darkgray ]{2.4}{200}{360} \SpecialCoor \psset{framesep=1.5pt} \rput(1.4;35){\psframebox*{\small Texto 1}} \uput{2.5}[45](0,0){Texto 4} \rput(1.4;135){\psframebox*{\small Texto 2}} \uput{2.5}[135](0,0){Texto 5} \rput(1.4;280){\psframebox*{\small Texto 3}} \uput{2.5}[280](0,0){Texto 6} \end{pspicture}

3

Texto 5Texto 2 Texto 1

Texto 44

5 6 7

Texto 3

8 9 10

Texto 6

11 12 13

Temos ainda as seguintes abreviaes que podemos usar em ngulo de referncia para simplicar alguns ngulos. Letra r u l d Direo Direita Acima Esquerda Abaixo ngulo 0 90 180 270 Letra ur ul dl dr Direo Canto Direito Superior Canto Esquerdo Superior Canto Esquerdo Inferior Canto Direito Inferior ngulo 45 135 225 315

by Geovane Krger

.................................................................................................... 36

Cap. 2 O Pacote pstricks

2.2 Estabelecendo Parmetros Grcos

2.2.15 RepetiesO macro \multirput[Referncia]{ngulo}(x0 , y0 )(x1 , y1 ){Repeties}{Material} uma variao de \rput que faz um determinado nmero de cpias especicado em Repeties, iniciando em (x0 , y0 ) e avanando de (x1 , y1 ) at completar o nmero de repeties, lembre-se estes pontos so interpretados como coordenadas cartesianas (Referncia, ngulo e a coordenada (x0 , y0 ) so opcionais). Exemplo 501 2 3

\begin{pspicture}(0,0)(-4,1.5) \multirput(.5,0)(.3,.05){25}{*} \end{pspicture}

* **** **** **** **** **** ****

Se estivermos am de querer cpias de grcos puros, o seguinte macro mais eciente para ser usado \multips{ngulo}(x0 , y0 )(x1 , y1 ){Repeties}{Grcos} Grcos podem ser um ou mais de um objetos de grcos puros j descritos anteriormente ou grcos de \pscustom que sero descritos logo a seguir. Ao contrrio de \multirput, as coordenadas podem ser de qualquer tipo. Exemplo 511 2 3 4 5

\begin{pspicture}(0,-1)(-1,1) \def\zigzag{\psline(0,0)(.5,1)(1.5,-1)(2,0)} \psset{unit=.25,linewidth=1.5pt} \multips(0,0)(2,0){8}{\zigzag} \end{pspicture}

by Geovane Krger

.................................................................................................... 37

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Exemplo 520.3 0.4 0.1 0.5 0.0 0.6 1.0 0.7 0.8 0.9 0.21 2 3 4 5 6 7 8 9 10 11

\begin{pspicture}(0,-3)(-4,3) \definecolor{hsb}{hsb}{0,1,1} \psset{fillstyle=solid,fillcolor=hsb} \SpecialCoor \degrees[1.1] \multido{\n=0.0+0.1}{11}{% \definecolor{hsb}{hsb}{\n,1,1}% \psset{fillcolor=hsb}% \rput{\n}{\pswedge{3}{-.05}{.05}} \uput{3.2}[\n](0,0){\small\n}} \end{pspicture}

2.3 Grcos PersonalizadosPSTricks contm uma grande paleta de objetos para grcos, mas s vezes precisamos algo especial, como colorir uma regio entre duas curvas. Isso possvel com o comando \pscustom[parmetros]{comandos} \pscustom*[parmetros]{comandos} Revisemos como PostScript controla grcos. Um caminho uma linha, no sentido matemtico e no no sentido visual. Um caminho pode ter vrios segmentos desconectados e, podem ser abertos ou fechados. PostScript tem vrios operadores para fazer caminhos e o m de um caminho chamado de ponto atual, portanto se no h nenhum caminho no existe nenhum ponto atual. Para transformar o caminho em algo visual, PostScript pode preencher a regio entre os caminhos e pincelar o caminho. No comeo no teremos nenhum caminho, apenas apresentaremos vrios comandos que podem ser usados dentro de \pscustom para desenhar os caminhos. \pscustom preenche e pincela o caminho at o m, e para efeitos especiais, ns podemos preencher e pincelar o caminho usando \fill e \stroke.

2.3.1 ParmetrosPrecisamos guardar em mente a separao entre desenhar, pincelar e preencher os caminhos quando estabelecemos os parmetros grcos. Os parmetros linewidth e linecolor afetam o desenho de setas, mas desde que os comandos de caminho no pincelem ou preencham os caminhos, estes parmetros mais linestyle, llstyle e parmetros relacionados, no tem nenhum outro efeito.by Geovane Krger

.................................................................................................... 38

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Os parmetros shadow, border, doubleline e showpoints so desativados em \pscustom Os estilos de linhas pontilhados e tracejados precisam saber algo sobre os caminhos para ajustar o trao ou o ponto adequadamente. Est informao dada atravs do parmetro linetype=valor os valores que podemos usar so especicados na Tabela ?? (valor padro 0). Se o caminho conter mais que um segmento desconectado, no h nenhum modo apropriado para ajustar o trao ou ponto modelo, nesse caso o melhor deixar o valor padro para linetype. A seguir temos a tabela com os valores para caminhos simples: Valor 0 -1 -2 -3 1 n>1 Tipo de Caminho Curva aberta sem setas Curva aberta com uma seta no incio Curva aberta com uma seta no nal Curva aberta com uma seta em ambos ns Curva fechada com nenhuma simetria particular Curva fechada com n segmentos simtricos Tabela 2.2: Valores para linetype

2.3.2 Objetos GrcosNs podemos usar a maioria dos objetos de grcos dentro de \pscustom. Estes iro desenhar caminhos e fazer setas, mas no iro preencher nem pincelar os caminhos. H trs tipos de objetos de grcos: Especiais Objetos de grcos especiais incluem \psgrid e \psdots. Estes objetos no podem ser usados dentro de \pscustom. Fechados Todos os objetos de grcos fechados podem ser usados dentro de \pscustom, mas o efeito deles imprevisvel. Normalmente usa-se curvas abertas mais \closepath (veja abaixo) para desenhar curvas fechadas. Abertos Os objetos de grcos abertos so os comandos mais teis para desenhar caminhos com \pscustom. Fazendo vrias curvas abertas podemos desenhar caminhos arbitrrios. No restante desta seo s trataremos dos objetos de grcos abertos. Por padro, as curvas abertas desenham um linha reta entre o ponto atual, se existir, e comeo da outra curva, exceto quando a curva comear com uma seta, veja o exemplo.by Geovane Krger

.................................................................................................... 39

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Exemplo 5331

\begin{pspicture}(0,0)(-1,3) \psgrid[subgriddiv=1,griddots=10](0,0)(3,3) \pscustom{ \psarc(0,0){1.5}{5}{85} \psarcn{->}(0,0){3}{85}{5}} \end{pspicture}

2 1 0 0 1 2 3

2 3 4 5 6

As seguintes curvas tambm fazem o uso do ponto atual, se existir, como uma primeira coordenada: psline, pscurve e o comando psbezier se ns incluirmos somente trs coordenadas. Porm, ns podemos controlar como as curvas abertas tratam o ponto atual com o seguinte parmetro: liftpen=valor Se liftpen=0 (padro) temos o comportamento do exemplo abaixo, isto , existe o ponto atual e existe a linha que a une as curvas. Exemplo 543 2 1 0 0 1 2 3 4 51 2 3

\begin{pspicture}(0,0)(-1,3) \psgrid[subgriddiv=1,griddots=10](0,0)(5,3) \pscustom[linewidth=2pt,fillstyle=solid,fillcolor= lightgray]{% \pscurve(0,2)(1,2.5)(2,1.5)(4,3) \pscurve(4,1)(3,0.5)(2,1)(1,0)(0,.5)} \end{pspicture}

4 5 6

Se liftpen=1 as curvas no usam o ponto atual como primeira coordenada (exceto \psbezier, mas podemos evitar isto incluindo explicitamente a primeira coordenada como um argumento. Exemplo 553 2 1 0 0 1 2 3 4 51 2 3

\begin{pspicture}(0,0)(-1,3) \psgrid[subgriddiv=1,griddots=10](0,0)(5,3) \pscustom[linewidth=2pt,fillstyle=solid,fillcolor= lightgray]{% \pscurve(0,2)(1,2.5)(2,1.5)(4,3) \pscurve[liftpen=1](4,1)(3,0.5)(2,1)(1,0)(0,.5)} \end{pspicture}

4 5 6

Se liftpen=2, as curvas no usam o ponto atual como primeira coordenada e tambm no desenhada a linha entre o ponto atual e o incio da curva.by Geovane Krger

.................................................................................................... 40

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Exemplo 563 2 1 0 0 1 2 3 4 51 2 3

\begin{pspicture}(0,0)(-1,3) \psgrid[subgriddiv=1,griddots=10](0,0)(5,3) \pscustom[linewidth=2pt,fillstyle=solid,fillcolor= lightgray]{% \pscurve(0,2)(1,2.5)(2,1.5)(4,3) \pscurve[liftpen=2](4,1)(3,0.5)(2,1)(1,0)(0,.5)} \end{pspicture}

4 5 6

2.3.3 Truques de SeguranaOs comandos descritos a seguir podem ser todos usados dentro do comando \pscustom. \newpath Anula todos os caminhos e o ponto atual anteriores a este comando. Observe o exemplo a seguir, no ir aparecer gura nenhuma. Exemplo 571 2

\begin{pspicture}(0,0)(-1,3) \pscustom[linewidth=2pt,fillstyle=solid,fillcolor= Violet]{ \pscurve[liftpen=2](0,2)(1,2.5)(2,1.5)(4,3) \newpath} \end{pspicture}

3 4 5

\moveto(coordenada) Move o ponto atual para (x, y). \closepath Isto fecha o caminho, unindo o comeo e m de cada pedao (pode haver mais de um pedao se usarmos \moveto).

by Geovane Krger

.................................................................................................... 41

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Exemplo 581

\begin{pspicture}(0,-1)(-1,1) \psgrid[subgriddiv=1,griddots=10](0,-1)(3,1) \pscustom[linewidth=1.5pt,fillstyle=solid, fillcolor=Violet]{ \pscurve(0,0)(0.5,1)(1,-1)(1.5,1)(2,-1)(2.5,1) (3,0) \closepath} \end{pspicture}

1 0

2 3

4

-1 0 1 2 35 6

\stroke[Parmetros] Com isto pincelamos o caminho. \pscustom j pincela automaticamente o caminho, mas com isso podemos pincelar duas vezes ou mais o caminho, por exemplo, adicionar uma borda. Exemplo 591 2 3 4 5 6 7 8 9

\begin{pspicture}(0,0)(-1,3) \pscustom[linecolor=white,linewidth=1pt]{% \psline(0,0)(3,3) \stroke[linewidth=70\pslinewidth,linecolor=black] \stroke[linewidth=40\pslinewidth] \stroke[linewidth=20\pslinewidth,linecolor=black] \stroke[linewidth=10\pslinewidth] \stroke[linewidth=5\pslinewidth,linecolor=black]} \end{pspicture}

\ll[Parmetros] Isto preenche a regio, mas \pscustom preenche a regio muito bem. \gsave & \grestore \gsave salva a condio atual do grco (isto , o caminho, cor, largura da linha, coordenadas, etc.) e \grestore restabelece as condies do grco. Ns sempre devemos usar \gsave e \grestore em pares aninhados corretamente.

by Geovane Krger

.................................................................................................... 42

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Exemplo 601

\begin{pspicture}(0,0)(-1,3) \psgrid[subgriddiv=1,griddots=10](0,0)(4,3) \pscustom[linewidth=1.5pt]{ \psline(0,3)(4,1) \gsave \psline(4,3) \fill[fillstyle=solid,fillcolor=Salmon] \grestore} \end{pspicture}

3 2 1 0 0 1 2 3 4

2 3 4 5 6 7 8 9

Observe que no exemplo acima, a linha que est dentro de \gsave no desenhada, essa uma das grandes utilidades deste comando, podemos preencher grandes regies sem que as linhas que o determinam sejam desenhadas. Observe no exemplo a seguir, que usando o \gsave conseguimos montar a mesma curva usada nos exemplos anteriores sem desenhar uma linha unindo as duas. Exemplo 611 2 3 4 5 6 7 8

\begin{pspicture}(0,0)(-1,3) \pscustom[linewidth=1.5pt]{ \pscurve(0,2)(1,2.5)(2,1.5)(4,3) \gsave \pscurve[liftpen=1](4,1)(3,0.5)(2,1)(1,0)(0,.5) \fill[fillstyle=solid,fillcolor=MidnightBlue] \grestore} \pscurve[linewidth=1.5pt](4,1)(3,0.5)(2,1)(1,0) (0,.5) \end{pspicture}

9

Os prximos comandos so usados para modicar o sistema de coordenadas. \translate(x, y) Translada o sistema de coordenadas para (x, y). Isto troca tudo o que vem depois de (x, y), mas no afeta o que j foi desenhado. \scale{nmero1 nmero2} Se colocarmos somente nmero1, escalamos o sistema de coordenadas em ambas as direes pelo valor dado, ou ento, escala horizontal por nmero1 e vertical por nmero2. \rotate{ngulo}by Geovane Krger

.................................................................................................... 43

Cap. 2 O Pacote pstricks

2.3 Grcos Personalizados

Faz uma rotao do sistema de coordenadas em relao a origem de acordo com o valor ngulo. \swapaxes Troca as coordenadas x e y. A seguir temos alguns truques para sombras: \openshadow[Parmetros] Pincela uma rplica do caminho atual, usando os vrios parmetros de sombras. \closedshadow[Parmetros] Faz uma sombra da regio includa pelo caminho atual como se fosse regies opacas. \movepath(x, y) Desloca o caminho para (x, y). Use \gsave-\grestore se voc no quer perder o caminho original. Exemplo 621 2 3 4 5 4 6 7 3 8 9 2 10 11 1 12 13 0 -2 -1 -1 0 1 2 3 4 14 15 16 17 -2 18

\definecolor{Amarelo}{cmyk}{0,0,0.1,0} \begin{pspicture}(0,-2)(-2,4) \pscustom[linewidth=2pt,linecolor=Dandelion]{ \translate(1,1) \rotate{45} \gsave \psellipse(0,0)(3,2) \fill[fillstyle=solid,fillcolor=Amarelo] \grestore \psellipse(0,0)(3,2)} \pscustom[linewidth=1.5pt,linecolor=Blue]{ \translate(1,1) \rotate{45} \psline(-4,0)(4,0) \psline[liftpen=2](0,-4)(0,4)} \psline[linewidth=1.5pt](-2,0)(4,0) \psline[linewidth=1.5pt](0,-2)(0,4) \psline[linewidth=1.5pt,linecolor=Green](-2,1) (4,1) \psline[linewidth=1.5pt,linecolor=Green](1,-2) (1,4) \psgrid[subgriddiv=1,griddots=5,gridlabels=6pt ](0,0)(-2,-2)(4,4) \end{pspicture}

19

20

21

by Geovane Krger

.................................................................................................... 44

Cap. 2 O Pacote pstricks

2.4 Truques Para Textos

2.4 Truques Para TextosJ mencionamos anteriormente, na seo ??, dois comandos que podemos utilizar para adicionar textos no meio das guras, ou colocar rtulos em guras. Nesta seo, teremos mais alguns comandos muito interessantes para manipularmos os textos nas guras e tambm para manipularmos as guras.

2.4.1 Caixas com MoldurasOs macros para molduras so considerados objetos compostos em vez de objetos de grcos puros. Alm dos parmetros de grcos para \psframe, estes macros usam os seguintes parmetros: framesep=dimenso Distncia entre cada lado da moldura e a caixa includa (Padro 3pt). boxsep=true/false Quando verdadeiro (true, que o padro), a caixa que produzida do tamanho da moldura ou tudo que desenhado ao redor do objeto. Quando falso (false), a caixa que produzida do tamanho de tudo que est dentro, e assim a armao transparente. Este parmetro s aplicado para os macros \psframebox, \pscirclebox e \psovalbox (todos sero descritos a seguir). Temos a seguir o primeiro dos trs macros: \psframebox[parmetros]{Materiais} \psframebox*[parmetros]{Materiais} Uma armao simples (talvez com cantos arredondados) desenhado usando \psframe. A opo * para gerar uma armao de cor slida cuja cor dada pelo parmetro llcolor. Recordando que o valor padro de llcolor branco, causando o efeito de destruir tudo o que estiver atrs da caixa. Exemplo 631 2

\begin{pspicture}(0,0)(-1,2) \pspolygon[fillcolor=gray,fillstyle=crosshatch *](0,0)(2,0)(3,1)(3,2)(2,2) \rput(2,1){\psframebox*[framearc=.5]{Texto}} \end{pspicture}

Texto3 4

\psdblframebox[Parmetros]{Materiais}by Geovane Krger

.................................................................................................... 45

Cap. 2 O Pacote pstricks

2.4 Truques Para Textos

\psdblframebox[Parmetros]{Materiais} Isto desenha uma moldura dupla. como uma variao de \psframebox. Exemplo 64 Uma moldura dupla desenhada com abertura entre linha igual a doublesep4 1 2 3

\begin{pspicture}(0,-1)(-.5,1) \psdblframebox[linewidth=1.5pt]{ \parbox[c]{5cm}{\raggedright Uma moldura dupla desenhada com abertura entre linha igual a \texttt{doublesep}}} \end{pspicture}

\psshadowbox[Parmetros]{Materiais} \psshadowbox*[Parmetros]{Materiais} Isto desenha uma moldura simples com sombra. \pscirclebox[Parmetros]{Materiais} \pscirclebox*[Parmetros]{Materiais} Isto desenha um crculo, com boxsep=true. \cput[Parmetros]{ngulo}(x, y){Materiais} \cput*[Parmetros]{ngulo}(x, y){Materiais} Isto combina as funes de \pscirclebox e \rput. Ao contrrio do comando \rput, este no contm o argumento de ponto de referncia, sempre localizado no centro da caixa. Exemplo 651

\begin{pspicture}(0,0)(-2,1) \cput[doubleline=true](1,.5){\large $\Psi_1$} \end{pspicture}

1

2 3

\psovalbox[Parmetros]{Materiais} .................................................................................................... 46

by Geovane Krger

Cap. 2 O Pacote pstricks

2.4 Truques Para Textos

\psovalbox*[Parmetros]{Materiais} Isto desenha uma ellipse. \psdiabox[Parmetros]{Materiais} \psdiabox*[Parmetros]{Materiais} Desenha um losango. \pstribox[Parmetros]{Materiais} \pstribox*[Parmetros]{Materiais} Isto desenha um tringulo, apontando na direo: trimode=*U/D/R/L se incluirmos *, que opcional, ento desenhado um tringulo equiltero, caso contrrio, desenhado um tringulo issceles de menor rea possvel. Exemplo 661

\psovalbox[linecolor=darkgray]{\Large\textbf{Ex1}}

Ex11

\psdiabox[shadow=true]{\Large\textbf{Ex2}}

Ex21

\pstribox[trimode=R,framesep=5pt]{\Large\textbf{Ex3}}

Ex31

\pstribox[trimode=*U]{\Large\textbf{Ex4}}

Ex4.................................................................................................... 47

by Geovane Krger

Cap. 2 O Pacote pstricks

2.4 Truques Para Textos

2.4.2 Rotao e Escala de CaixasEstes macros so as verses padres para rotao de caixas: \rotateleft{Materiais} \rotateright{Materiais} \rotatedown{Materiais} Exemplo 67

Esquerda

1

\begin{pspicture}(0,0)(-1,2) {\Large\bfseries\rotateleft{Esquerda}\rotatedown{ Abaixo}\rotateright{Direita}} \end{pspicture}

Temos agora dois macros para escala de caixas: \scalebox{nmero1}[nmero2]{Materiais} Se ns utilizarmos os dois nmeros no momento de escalar a caixa, nmero1 usado para escalar horizontalmente e nmero2 usado para escalar verticalmente. Se utilizarmos somente nmero1, a caixa escalada igualmente em ambas as direes. No podemos colocar escala 0, mas nmeros negativos so aceitos, e tem o efeito de girar a caixa ao redor do eixo. Exemplo 68

Direita

2

odnarig2.4.3 RecortandoCom o comando \begin{psclip} {grcos delimitadores} . . . \end{psclip}

grcos delimitadores faz um caminho cortado ou um grco que serve como limite para as demais coisas que aparecero antes de \end{psclip}by Geovane Krger

.................................................................................................... 48

Abaixo

3

1

\scalebox{-2}[2]{girando}

Cap. 2 O Pacote pstricks

2.4 Truques Para Textos

Exemplo 691 2 3 4

\begin{pspicture}(0,0)(-1,2) \parbox{4cm}{% \begin{psclip}{ \psline[linestyle=none](-0.5,0.3)(0.5,-1)(-0.5,-2) (0.5,-3)(1,-4)(2,-3)(3,-4)(4,-2)(3.6,-1) (4.2,0.3)(3,.3)(2.5,-1)(2,.3)(-0.5,0.3)} O que para alguns um problema para outros um exerccio e para alguns outros uma distrao .\\ (Ditado popular) \end{psclip}} \end{pspicture}

O que para alguns um problema para outros um exerccio e para alguns outros uma distrao. (Ditado popular)6 7 5

Se no queremos que aparea o esboo do caminho, devemos incluir linestyle=none na escolha dos parmetros. Tambm podemos incluir mais do que um objeto de grco no argumento, e neste caso o caminho recortado ser a interseo dos caminhos, ou ento obscurecer a regio entre duas curvas, observer o exemplo a seguir. Exemplo 701 2 3

%\usepackage{pst-plot}\begin{pspicture}(0,0)(-1,4) \begin{psclip} {\pscustom[linestyle=none]{ \psplot{.5}{4}{2 x div} \psline(4,4)} \pscustom[linestyle=none]{ \psplot{0}{3}{3 x x mul 3 div sub} \psline(0,0)}} \psframe*[linecolor=gray](0,0)(4,4) \end{psclip} \psplot[linewidth=1.5pt]{.5}{4}{2 x div} \psplot[linewidth=1.5pt]{0}{3}{3 x x mul 3 div sub } \psaxes(4,4) \end{pspicture}

4 3 2 1 0 0 1 2 3 4

4 5 6 7 8 9 10 11 12 13

14 15

Observao 2.2 No exemplo acima, usamos o pacote pst-plot para plotar as curvas, este pacote ser explicado no captulo ??. Observe que, com o uso de psclip e pscustom conseguimos obscurecer apenas a regio que encontra-se entre as duas curvas.

by Geovane Krger

.................................................................................................... 49

Captulo

3

O Pacote pstricks-add Parte 1O pacote pstricks-add so macros adicionais para o pacote pstricks, importante salientar que pstricksadd sempre ser um pacote experimental e dinmico e seu uso de nosso prprio risco. Para usarmos este pacote devemos adicionar no prembulo o seguinte comando: \usepackage{pstricks-add} Foi de minha deciso, quebrar a explicao sobre este pacote em quatro captulos, onde na primeira parte falaremos sobre macros adicionais ao pacote pstricks visto anteriormente, na segunda parte (Captulo ??) iremos tratar de macros adicionais ao pacote pst-plot que ser visto no captulo ??, logo depois deste captulo. Na terceira parte (Captulo ??) trataremos de macros adicionais para o pacote pst-node que encontr-se no captulo ?? e por m, a quarta parte (Captulo ??) traremos novos comandos e novos ambientes para serem usados. Antes de comearmos, necessrio fazer duas observaes importantes: Observao 3.1 importante adicionarmos este pacote no prembulo depois de todos os outros pacotes PSTricks relacionados, caso contrrio muito dos macros trabalharo de um modo inexperado. Observao 3.2 pstricks-add usa a verso extendida do pacote keyval. Portanto, tenha certeza que voc tenha instalado pst-xkey o qual faz parte do pacote xkeyval.

3.1 Funes NumricasTodos os macronomes contm um @ em seus nomes, pois eles so para uso interno, mas ns podemos us-los sem problema nenhum como qualquer outro macro. Tambm podemos deni-los com um outro nome sem @ da seguinte maneira:

50

Cap. 3 O Pacote pstricks-add Parte 1

3.1 Funes Numricas

\makeatletter \let\pstdivide\pst@divide \makeatother ou colocar o macro sempre inserido dentro da seqncia \makeatletter\makeatother.

3.1.1 pst@dividePSTricks tem seu prprio macro de diviso, o qual pode dividir dois comprimentos e salvar o quociente como um nmero de ponto utuante. Este macro denido pela seguinte linha de comando \pst@divide{dividendo}{divisor}{resultado deve ser um macro} Em resultado deve ser um macro signica que o resultado vai ser posto em um comando que ns devemos denir o nome, e para aparecer o resultado basta usar este nome. Exemplo 711

\makeatletter \pst@divide{34pt}{6pt}\quociente \quociente \newline \pst@divide{-6pt}{34pt}\quotient \quotient \makeatother

5.66666 -0.17647

2 3 4 5

observe que o resultado no um comprimento.

3.1.2 pst@modpstricks-add dene uma funo adicional para mdulos: \pst@mod{inteiro}{inteiro}{resultado deve ser um macro} Exemplo 721

\makeatletter \pst@mod{34}{6}\modulo \modulo \newline \pst@mod{25}{-6}\modulo \modulo \makeatother

4 1

2 3 4 5

by Geovane Krger

.................................................................................................... 51

Cap. 3 O Pacote pstricks-add Parte 1

3.1 Funes Numricas

3.1.3 pst@max\pst@max{inteiro}{inteiro}{resultado como um registro de conta} Exemplo 731 2

\newcount\maximo \makeatletter \pst@max{-34}{-6}\maximo \the\maximo \newline \pst@max{0}{11}\maximo \the\maximo \makeatother

-6 11

3 4 5 6

3.1.4 pst@maxdim\pst@maxdim{dimenso}{dimenso}{resultado como um registro de dimenso} Exemplo 741 2

\newdimen\dim \makeatletter \pst@maxdim{34cm}{1234pt}\dim \the\dim \newline \pst@maxdim{34cm}{123pt}\dim \the\dim \makeatother

1234.0pt 967.39369pt

3 4 5 6

3.1.5 pst@abs\pst@abs{inteiro}{resultado como um registro de conta} Exemplo 751 2

\newcount\abs \makeatletter \pst@abs{-34}{\abs} \the\abs \newline \pst@abs{5}{\abs} \the\abs \makeatother

34 5

3 4 5 6

by Geovane Krger

.................................................................................................... 52

Cap. 3 O Pacote pstricks-add Parte 1

3.2 Linhas Tracejadas

3.1.6 pst@absdim\pst@absdim{dimenso}{resultado como um registro de dimenso} Exemplo 761 2

\newdimen\absdim \makeatletter \pst@absdim{-34cm}{\absdim} \the\absdim \newline \pst@absdim{5sp}{\absdim} \the\absdim \makeatother

967.39369pt 0.00008pt

3 4 5 6

3.2 Linhas TracejadasLinhas tracejadas ganharam um aumento na quantidade de argumentos, este agora ilimitado no pacote,A quer dizer o limite a memria do LTEX pstricks-add. Essa caracterstica foi implementada por Tobias Nhring.

dash=dimenso1 dimenso2 dimenso3 . . . Exemplo 7751

\begin{pspicture}(0,0)(-1,5) \psgrid[subgriddiv=1,griddots=10](0,0)(4,5) \psset{linewidth=1pt,linestyle=dashed} \pscurve[dash=4mm 1mm 1mm 1mm 1mm 1mm](0,5)(2,4) (3,3)(4,0) \psline[dash=5mm 1mm 1mm 1mm 3mm 1mm 1mm 1mm, linecolor=blue](0,0)(4,0) \pscurve[dash=4mm 1mm 1mm 2mm 1mm 1mm,linecolor= red](0,0)(1,3)(2,1)(3,5)(4,2) \end{pspicture}

4 3 2 1 0 0 1 2 3 4

2 3 4

5

6

7

3.3 Mltiplos rputPSTricks tem o comando \multirput j visto anteriormente, mas no possvel colocar com uma distncia diferente de um ponto para outro os objetos. Isto possvel com o comando: \rmultiput[parmetros]{Materiais}(x1 , y1 )(x2 , y2 ) . . . (xn , yn )by Geovane Krger

.................................................................................................... 53

Cap. 3 O Pacote pstricks-add Parte 1

3.4 Rotacionando Objetos

Exemplo 78

4 3 2 1 0

1 2 3

\begin{pspicture}(0,0)(-1,4) \psgrid[subgriddiv=1,griddots=10](0,0)(4,4) \rmultiput[rot=45]{\green\psscalebox{2}{\ding {250}}} (0,0)(1,1)(3,2)(1.5,3)(3,3)(3.8,2) \rmultiput[rot=90,ref=lC]{\blue\psscalebox{2}{\ ding{253}}} (0,1)(3,2.5)(2,1)(1,2)(3,3.5)(4,3.7) \end{pspicture}

4 5

6

0

1

2

3

4

7

as setas feitas pelo comando \ding usa o pacote \usepackage{pifont}, o qual vem incluso com o pacote \usepackage{symbol}.

3.4 Rotacionando ObjetosCom \psrotate o centro de rotao pode ser colocado em qualquer lugar, diferente de com \rput. \psrotate[parmetros](x, y){ngulo de rotao}{Objetos} onde (x, y) o centro de rotao. Exemplo 794 3 2 1 0 0 1 2 3 4 51 2 3 4 5

\begin{pspicture}(0,0)(-1,4) \psgrid[subgriddiv=1,griddots=10](0,0)(5,4) \psdots[linecolor=red,dotscale=1](1.5,1.5) \psarc[linecolor=red]{->}(1.5,1.5){3}{0}{60} \pspolygon[linecolor=blue](1.5,1.5)(3,0)(4.5,1.5) (2,3) \psrotate[linecolor=green](1.5,1.5){60}{\pspolygon (1.5,1.5)(3,0)(4.5,1.5)(2,3)} \end{pspicture}

6

7

3.5 BraosCom o macro \[parmetros](A)(B){texto}by Geovane Krger

.................................................................................................... 54

Cap. 3 O Pacote pstricks-add Parte 1

3.5 Braos

podemos colocar braos em qualquer posio. A opo \SpecialCoor carregada automaticamente e, assim todos os tipos de coordenadas podem ser usadas para ligar os braos. No exemplo a seguir, usamos coordenadas cartesianas, mas poderiamos ter usado nodos como coordenadas. Exemplo 804

o xt Te

2

1 2 3

\begin{pspicture}(0,0)(-1,4) \psgrid[subgriddiv=1,griddots=10](0,0)(3,4) \psbrace[linecolor=Orange,ref=lC](0,0)(3,3){Texto 1} \psbrace[linecolor=Yellow,ref=lC](3,4)(0,1){Texto 2} \end{pspicture}

3 2 1

4

o xt Te

0 0 1

5

12 3

3.5.1 OpesOs parmetros mais importantes esto relacionados na tabela a seguir. lgico que os outros parmetros de PSTricks so vlidos tambm. Nome braceWidth bracePos linearc nodesepA nodesepB rot ref Funo Abertura do brao (Padro: 0.35) Posio relativa (Padro: 0.5) valor absoluto do arco (Padro: 2mm) x-separao (Padro: 0pt) y-separao (Padro: 0pt) Rotao adicional para o texto (Padro: 0) Ponto de referncia para o texto (Padro: c) Tabela 3.1: Principais parmetros para braos Por padro, o texto escrito perpendicularmente a linha do brao e pode ser mudado com o parmetro rot. Na linha de comando do macro onde est escrito texto, na verdade pode ser qualquer objeto ou pode ser vazio tambm. O ponto de referncia pode ser a combinao dos valores l (Esquerda) ou r (Direita) com b (base) ou B (Linha de Base) ou C (Centro) ou t (Topo), onde o padro c, que o centro do objeto.

by Geovane Krger

.................................................................................................... 55

Cap. 3 O Pacote pstricks-add Parte 1

3.6 Pontos Aleatrios

Exemplo 811

\begin{pspicture}(0,0)(-1,2.5) \psbrace[ref=lC](0,0)(5,0){\fbox{Texto 1}} \psbrace[bracePos=0.25,rot=90,nodesepB=-5pt](0,1) (5,1){Texto 2} \psbrace[ref=lC,nodesepA=-2.4cm,nodesepB=-10pt,rot =90](0,2.5)(5,2.5){\fbox{Um texto bastante longo}} \end{pspicture}

Um texto bastante longo

2 3

4

Texto 25

Texto 1

Exemplo 821 2 3 4

\begin{pspicture}(0,0)(-1,2) $\begin{pmatrix} \Rnode[vref=2ex]{A}{~1} \\ & \ddots \\ && \Rnode[href=2]{B}{1} \\ &&& \Rnode[vref=2ex]{C}{0} \\ &&&& \ddots \\ &&&&& \Rnode[href=2]{D}{0}~ \\ \end{pmatrix}$ \psbrace[linewidth=0.1pt,rot=-90,nodesep=0.2](B)(A ){\small n times} \psbrace[linewidth=0.1pt,rot=-90,nodesep=0.2](D)(C ){\small n times} \end{pspicture}

1n es tim

..

. 1

5 6 7 8 9 10

0 .. . 0

Neste ltimo exemplo foi feito o uso de nodos, o qual ser visto apenas no captulo ??.

n

es tim

11

12

3.6 Pontos AleatriosEste novo macro contm os seguintes comandos: \psRandom[parmetros]{} \psRandom[parmetros]{Objeto Grco} este primeiro comando pode ser usado sem nada onde diz Objeto Grco, neste caso no existir nenhuma rea para os pontos e ento usado uma rea padro no formato de um quadrado (0, 0)(1, 1). Para aumentar a rea deste quadrado basta aumentar a unidade de medida. Se colocarmos um objeto de grco, este ir formar umaby Geovane Krger

.................................................................................................... 56

Cap. 3 O Pacote pstricks-add Parte 1

3.6 Pontos Aleatrios

rea que ir delimitar os pontos aleatrios, lembrando que se a rea do objeto for maior que a rea do quadrado padro, teremos uma parte em branco, ou seja, sem pontos. \psRandom[parmetros](xmax , ymax ){Objeto Grco} \psRandom[parmetros](xmin , ymin )(xmax , ymax ){Objeto Grco} com o primeiro comando, podemos determinar at qual coordenada os pontos podem alcanar, ou seja a coordenada mxima, e com o segundo comando podemos ter tambm a coordenada minima. Temos mais dois novos parmetros para usar, alm dos outros j vistos para PSTricks: Nome randomPoints color Padro 1000 false Funo Nmero de pontos aleatrios Cor aleatria

Tabela 3.2: Parmetros para pontos aleatrios Exemplo 83

+ + +++ + ++ ++ + + ++++++ + + ++ ++ ++ ++ ++ + ++ + + ++ ++ +++ + +++ ++ + + + + + + +++ + ++ +++ + +++ +++ + + ++ + ++++ + +++ +

1 2 3

\begin{pspicture}(0,0)(-1,2.5) \psset{unit=3cm} \psRandom[randomPoints=100,dotsize=8pt,dotstyle =+]{} \end{pspicture}

4

Exemplo 841 2 3

\begin{pspicture}(0,0)(-1,3) \psset{unit=3cm} \psRandom[randomPoints=100,dotsize=8pt]{\pscircle (.5,.5){.7}} \end{pspicture}

4

Exemplo 851 2 3

\begin{pspicture}(0,0)(-1,3) \psset{unit=3cm} \psRandom[randomPoints=100,dotsize=4pt,color ](.5,.5){\pscircle(.5,.5){.5}} \end{pspicture}

4

by Geovane Krger

.................................................................................................... 57

Cap. 3 O Pacote pstricks-add Parte 1

3.7 Setas

Exemplo 86

1 2 3

\begin{pspicture}(0,-2.5)(-.5,2.5) \psset{unit=2.5cm} \psRandom[dotsize=4pt,dotstyle=o, linecolor=Yellow,fillcolor=Magenta, fillstyle=solid,randomPoints =1000](0,-1)(3,1) {\psplot{0}{3.14}{x 114 mul sin }} \end{pspicture}

4 5

3.7 SetasAlm dos tipos de setas para PSTricks o pacote pstricks-add dene mais alguns modelos: Valor h-h H-H v-v V-V f-f F-F t-t T-T Exemplo Nome Gancho Gancho V para dentro V para fora Seta cheia para dentro Seta cheia para fora Inclinao para dentro Inclinao para fora

3.7.1 Setas MltiplasTemos dois novos parmetros que so vlidos somente para o tipo de seta >. nArrowsA=Quantidade nArrowsB=Quantidade este parmetro determina a quantidade de vezes que a ponta da seta ir aparecer. Quando a ponta da seta for para fora (->>, -}(1,0)(4,0)\newline \psline[nArrowsA=4]{->>}(1,0)(4,0)\newline \psline{}(1,0)(4,0)\ newline \psline[nArrowsA=5,nArrowsB=5]{,ArrowFill=false, ArrowInsideNo=2,ArrowInsideOffset =0.1]{->}(1,0)(4,0)

4

5

by Geovane Krger

.................................................................................................... 61

Cap. 3 O Pacote pstricks-add Parte 1

3.7 Setas

Exemplo 911 2 3

\begin{pspicture}(0,0)(-.2,2) \psset{arrowscale=3,linecolor=BrickRed} \psline[ArrowInside=-*,ArrowInsidePos=0.25, ArrowInsideNo=2]{->}(0,0)(2,1)(3,0)(4,0)(6,2) \end{pspicture}

4

Exemplo 921 2 3

\begin{pspicture}(0,0)(-.2,2) \psset{arrowscale=2,linecolor=BurntOrange} \psline[ArrowInside=-}(0,0)(2,1)(3,0)(4,0)(6,2) \end{pspicture}

4

Exemplo 93

1 2 3

\begin{pspicture}(0,0)(-.2,4) \psset{arrowscale=3,linecolor=Periwinkle} \pspolygon[ArrowInside=->,ArrowInsidePos=20, ArrowFill=False](0,0)(3,0)(3,3)(5,4)(5,0) (7,0)(6,3) \end{pspicture}

4

Exemplo 941 2 3 4

\begin{pspicture}(0,0)(-2,3) \psset{arrowscale=3,linecolor=Gray} \psbezier[linestyle=none,ArrowInside=->,ArrowInsideNo=26]{->}(1,0)(0,4)(12,-1)(9,3) \end{pspicture}

by Geovane Krger

.................................................................................................... 62

Cap. 3 O Pacote pstricks-add Parte 1

3.7 Setas

Exemplo 951 2 3

\begin{pspicture}(0,0)(-2,7) \psset{arrowscale=2,linecolor=OliveGreen} \psbezier[ArrowInsideNo=19,ArrowInside=->,ArrowFill=false,showpoints=true]{->}(0,5) (3,0)(8,7)(13,1) \end{pspicture}

4

Exemplo 961 2 3

\begin{pspicture}(0,0)(-1,3) \psset{arrowscale=2.5,linecolor=blue} \pspolygon[ArrowInside=->](0,0)(3,3)(6,3) (6,1) \psset{linestyle=none,ArrowInside=-*, linecolor=Goldenrod} \pspolygon[ArrowInsidePos=0](0,0)(3,3)(6,3) (6,1) \pspolygon[ArrowInsidePos=1](0,0)(3,3)(6,3) (6,1) \psset{ArrowInside=-o,linecolor=YellowGreen} \pspolygon[ArrowInsidePos=0.25](0,0)(3,3) (6,3)(6,1) \pspolygon[ArrowInsidePos=0.75](0,0)(3,3) (6,3)(6,1) \end{pspicture}

4

5

6

7 8

9

10

by Geovane Krger

.................................................................................................... 63

Cap. 3 O Pacote pstricks-add Parte 1

3.7 Setas

3.7.4 As setas v-V, t-T e f-FTemos mais alguns parmetros para estes tipos especiais de setas. Setas v-V veearrowlenght=dimenso comprimento da seta (Padro: 3mm). veearrowangle=ngulo ngulo de abertura da seta (Padro: 30). veearrowlinewidth=dimenso largura da linha da seta (Padro: 0.35mm). Setas t-T lledveearrowlenght=dimenso comprimento da seta (Padro: 3mm). lledveearr