Curvas No Tikz
February 4, 2023 | Author: Anonymous | Category: N/A
Short Description
Download Curvas No Tikz...
Description
Curvas no TikZ Neste t´opico opico falaremos sobre os diversos tipos de curvas feitos pelo TikZ, sendo eles os operadores: to, bend, smooth e Bezier. Nota: Use o KtikZ o KtikZ para para fazer seus testes, por oferecer um preview em tempo real real.. Para isso, basta \begin{tikzpicture} icture} e \end{tikzpicture} \end{tikzpicture} e come¸car digitar \begin{tikzp car seu desenho.
Rounded corners Antes de iniciarmos nosso tutorial sobre curvas vejamos uma op¸cc˜ ao a˜o muito util: u ´til: rounded corners. Esta op¸cc˜ao ˜ao permite p ermite que os cantos da figura sejam arredondados a partir de um valor num´ num´erico. erico.
Figura 1: Exemplo do uso de rounded corners. \ begin { t i k z p i c t u r e } \ d ra ra w ( 0 , ,0 0 ) - - + +( +( 5 , ,0 0 ) - - + +( +( - 2 , ,2 2) -- ++ +( (-3, ,0 0 ) - - c yc y c le le ; \ d r aw aw [ r o u n nd ded cor rn ner rs s] (6, ,0 0 ) - - + +( +( 5 , 0 0) ) -- ++(-2,2 2) ) - - + +( +( - 3 , 0 0) ) -- cyc cl le; \ d r aw aw [ r o u n nd ded cor rn ner rs s = 5 m m ] ( 1 2 , 0 ) - - + +( +( 5 , 0 0) ) - - + +( +( - 2 , 2 2) ) - - + +( +( - 3 , 0 0) ) -- cyc cl le; \ en d { t i k z p i c t u r e }
Figura 2: rounded corners em trˆes es raios diferentes. \ begin { t i k z p i c t u r e } \ d r aw aw ( 0 , 0 0) ) rec ct tan ng gle ++( (2 2,2); \ d r a w [ r o u n de de d c o r n e er rs] (3,0) rectangle ++(2,2); \ d r a w [ r o u n de de d c o r n e er rs=1cm] (6,0) rectan ng gle ++( (2 2,2); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
1
\begin{tikzpicture} \draw \dr aw (5, (5,-4) -4) -- (5, (5,4); 4); \draw[roun \draw [rounded ded corne corners=5 rs=5mm] mm] (5,-4 (5,-4) ) -- (4,-4 (4,-4) ) -(4,4) (4, 4) -- (5, (5,4); 4); \draw[roun \draw [rounded ded corne corners=1 rs=1cm] cm] (4,-3 (4,-3) ) -- (1,-3 (1,-3) ) -(1,-1) (1, -1) -- (-1 (-1,-1 ,-1) ) -- (-1 (-1,1) ,1) -- (1, (1,1) 1) -- (1, (1,3) 3) -- (4,3) (4,3); ; \draw[roun \draw [rounded ded corne corners=1 rs=1cm] cm] (4,-1 (4,-1) ) -- (2,-1 (2,-1) ) -(2,1) (2, 1) -- (4, (4,1); 1); \draw[roun \draw [rounded ded corne corners=1 rs=1cm] cm] (5,-3 (5,-3) ) -- (7,-3 (7,-3) ) -(7,-1) (7,-1 ) -- (5,-1 (5,-1); ); \draw[roun \draw [rounded ded corne corners=1 rs=1cm] cm] (5,1) -- (7,1) -- (7,3) -- (5,3) (5,3); ; \draw (0,0) circle (.5) (.5); ; \draw (6,-2) circle (.5); \draw (6,2) circle (.5) (.5); ; %linhas %linh as guia \draw[red, \draw [red,dashe dashed] d] (0,-1 (0,-1.5) .5) -- ++(0, ++(0,3) 3) (-1. (-1.5,0) 5,0) -++(3,0); \draw[red, \draw [red,dashe dashed] d] (6,-3 (6,-3.5) .5) -- ++(0, ++(0,3) 3) (4.5 (4.5,-2) ,-2) -++(3,0); \draw[red, \draw [red,dashe dashed] d] (6,0. (6,0.5) 5) -- ++(0, ++(0,3) 3) (4.5, (4.5,2) 2) -++(3,0); %cotas \draw[, \draw [,red,r red,rotate otate=45] =45] (-.5 (-.5,0) ,0) -- ++(1, ++(1,0) 0) node[right] {$1\,cm$}; \draw[| \draw [||,red |,red] ] (-2,(-2,-1) 1) -node[rotate=90,above] node[rotate=90,abo ve] {$2\,cm$} (-2,1); \draw[red, \draw [red,dashe dashed] d] (-2,(-2,-1) 1) -- (-.5, (-.5,-1); -1); \draw[red, \draw [red,dashe dashed] d] (-2,1 (-2,1) ) -- (-.5, (-.5,1); 1); \draw[| \draw [||,red |,red] ] (7.5, (7.5,-2) -2) -node[rotate=90,above] node[rotate=90,abo ve] {$4\,cm$} (7.5,2); \draw[| \draw [||,red |,red] ] (9,-4 (9,-4) ) -node[rotate=90,above] node[rotate=90,abo ve] {$8\,cm$} (9,4); \draw[red, \draw [red,dashe dashed] d] (5.5, (5.5,-4) -4) -- (9,-4 (9,-4); ); \draw[red, \draw [red,dashe dashed] d] (5.5, (5.5,4) 4) -- (9,4) (9,4); ; \end{tikzpicture}
R´egis 2011
http://latexbr.blogspot.com/
2
To O operador To ´e usado para adicio adicionar nar um camin caminho ho da coordenada coordenada anterior anterior para a coordenada coordenada (A) to (B) (B), uma linha ´ seguinte. Quando vocˆe escr escreve eve (A) e adicionada de A para B, exatamente exatamente como se vocˆe tivesse escrito (A)--(B). to[out=9 ut=90,in= 0,in=180] 180] (B) uma curva ´e adicionada ao caminho, No entanto, se vocˆe escrever (A) to[o saindo do ponto A com um ˆangulo angulo de 90o e chegando no ponto B com um ˆangulo angulo de 180o (levando em considera¸ cc˜ ao a˜o que o angulo ˆangulo 0 inicia-se do lado direito de um ponto fixo e percorre no sentido anti´ claro (0,0) 0) to[o to[out=90 ut=90,in= ,in=180] 180] (2,3 (2,3) ). Os pontos A e B s˜ hor´ ario). ario). E que podemos digitar (0, ao ao pontos nomeados que s˜ao ao usados a partir do comando \coordinate. Na terceira figura temos um exemplo saindo do ponto A a 45 o e chegando em B a 135o . 135
180
◦
B
B
90 A
A
◦
B
◦
45
◦
A
Figura 3: Exemplos do operador to. Veja o c´odigo: odigo: \ begin { t i k z p i c t u r e } \tikzset{>=latex} \ t i k z s t y l e { p o n t o } = [fill [ fill =blue, circl circle e , scale =.25] \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:A] (A) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:B] (B) at (2,3); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:A] (C) at (3,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:B] (D) at (5,3); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:A] (E) at (6,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:B] (F) at (8,3); % to \ d ra ra w ( A ) t o ( B ) ); ; \ d r aw aw [ - > ] ( C ) t o [ o ou ut=9 90 0,in=18 80 0] (D); \ d r aw aw [ - > ] ( E ) t o [ o ou ut=4 45 5,in=13 35 5] (F); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
3
Veja a seguir um desenho um pouco mais elaborado: G
F
H
J
E I
A
D
B
C
K
Figura 4: Mais um exemplo do operador to. E o c´odigo: odigo: \ begin { t i k z p i c t u r e } \ t i k z s t y l e { p o n t o } = [fill [ fill =blue, circl circle e , scale =.25] \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:A] (A) at (0,1); \c co oo or rd di in n at at at te e[ [p po on nt t to o, ,l la ab be el l= =b be el lo o ow w: :C B] ] ( (C B) ) a at t ( (3 1, ,0 0) ); ; \ a to o ow w \ c o o r d i n at at e [ p o n t to o ,label=righ ht t:D] (D) at (4,1); \ c o o r d i n at at e [ p o n t to o ,label=righ ht t:E] (E) at (4,3); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:F] (F) at (3,4); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:G] (G) at (1,4); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:H] (H) at (0,3); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:I] (I) at (6,2); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:J] (J) at (8,3); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:K] (K) at (8,0); % to \ d r aw aw ( A ) t o [ o ou ut=-9 90 0,in=1 18 80] (B); \ d r aw aw ( C ) t o [ o ou ut= =0 0,in=-9 90 0] (D); \ d r aw aw ( E ) t o [ o ou ut=9 90 0,in=0 0] ] (F); \ d r aw aw ( G ) t o [ o ou ut=1 18 80,in=9 90 0] (H); \ dr d r aw aw [ d da a sh s h ed ed ] ( B) B ) - - ( C ) ( D) D ) - - ( E ) ( F) F ) - - ( G ) ( H) H) - - ( A ) ); ; \ en d r daw aw )pt [u o ou ur t 45 5,in=22 25 5] (J) to[o ou ut=4 45 5,in=0 0] ] (K) to[o ou ut=1 18 80,in=2 22 25] (I); \ {t( iI kz io ct e= }4
R´egis 2011
http://latexbr.blogspot.com/
4
Veja mais um exemplo com uma figura conhecida: arcos g´oticos. oticos.
Figura 5: Arcos g´oticos. oticos. \ begin { t i k z p i c t u r e } \ d r a w [ b l ue ue ] ( 0 , 0 ) t o [ o u t = 9 90 0,in=225] (1,2) to[out=-45,in=90 0] ] (2,0); \ d r a w [ b r o wn wn ] ( 3 , 0 ) t o [ o u t = 9 0 , i n = - 9 0 0] ] (4,2) to[out=-90,in=90 0] ] (5,0); \ en d { t i k z p i c t u r e }
Veja tamb´ t amb´em em os exemplo exem ploss Clusters of atoms atoms e e Beamer arrows.
Bend Existem dois operadores: bend left e bend right. Ambos s˜ao ao usados como op¸cc˜ ao a˜o para o operador to. O bend left funciona da seguinte bend left left=45 =45, o resultado ser´ segui nte forma: se vocˆe digitar digi tar bend a equivalente a angulo>, ngulo>,in=1 in=180 80 - ngulo>. O bend right right funciona de forma a out=45,in=135. Ou sej seja, a, out= ] ( G ) t o [ b be e nd n d l ef ef t ] ( H ) ; \ d r aw aw [ - > ] ( I ) t o [ b be e nd nd r i g gh ht=60 0] ] (J); \ a be e n e tt ]]( ( LN )) ;; \d dr r aw aw aw w[ [-> >] ] ( (K M) ) t to o[ [b b be e nd nd nd d l r ef i fg gh h \ node at at ( 4 , 4 ) { $ 4 5 5^ ^\circ$}; at ( 7 , 4 ) { $ 9 0 0^ ^\circ$}; \ node at \ node [ l e ft ft ] a t ( - . 5 , ,1 1) {ben nd d l ef ef t } ; \ node a t ( 1. 1. 5 , 1 1) ) {ben nd d rig gh ht}; \ node a t ( 4. 4. 5 , 1 1) ) {ben nd d lef ft t}; 1) ) {ben nd d rig gh ht}; \ node a t ( 9 , 1 \ en d { t i k z p i c t u r e }
Veja mais um exemplo: fios de postes.
Figura 7: Fios do poste feito com bend. \ begin { t i k z p i c t u r e } \ d r aw aw ( - 1 , ,0 0) -- (5,0); %postes \ fill ( 0 , 0) 0) - - + +( +( 0 , ,2 2 ) - - + +( +( - . .1 1,0 0) ) - - + +( +( 0 , ,. . 1) 1) - - + +( +( .4 .4 , 0 0) ) - - + +( +( 0 , -. . 1) 1) - + +( +( - . 1 , 0 0) ) - - + +( +( 0 , - 2 2) ) - - c yc yc l e ; 0) - - + +( +( 0 , ,2 2 ) - - + +( +( - . .1 1,0 0) ) - - + +( +( 0 , ,. . 1) 1) - - + +( +( .4 .4 , 0 0) ) - - + +( +( 0 , -. . 1) 1) - \ fill ( 2 , 0) + +( +( - . 1 , 0 0) ) - - + +( +( 0 , - 2 2) ) - - c yc yc l e ; \ fill ( 4 , 0) 0) - - + +( +( 0 , ,2 2 ) - - + +( +( - . .1 1,0 0) ) - - + +( +( 0 , ,. . 1) 1) - - + +( +( .4 .4 , 0 0) ) - - + +( +( 0 , -. . 1) 1) - + +( +( - . 1 , 0 0) ) - - + +( +( 0 , - 2 2) ) - - c yc yc l e ; %fios \ d r aw aw [ b l u ue e ] ( .2 .2 5 , 2 2) ) to[b be e n d r ig i g h t ] ( 1. 1. 9 5 , 2 2) ); \ d r aw aw [ b l u ue e ] ( 2 .2 .2 5 , 2 2) ) to[b be e nd nd r i g gh ht] (3. .9 95,2); \ en d { t i k z p i c t u r e }
Veja mais exemplos do uso de bend em EPC em EPC Flow Charts e Charts e Mobile ad-hoc network.
R´egis 2011
http://latexbr.blogspot.com/
6
Smooth Esta op¸cc˜˜aaoo faz com que os pontos de uma curva sejam conectados por uma curva suave. Mas esta op¸cc˜ ao a˜o s´o ´e usada u sada com o operado o peradorr plot e coordinates. Um exemplo simples ´e: e: \draw[smo \dra w[smooth] oth] plot coor coordina dinates tes {(0, {(0,0) 0) (1,1 (1,1) ) (2,0 (2,0) ) (3,1) (3,1)}; };
No caso eu usei 4 pontos, mas pode ser qualquer quantidade a partir de 2 pontos. Temos tamb´em em a op¸c˜ cao a˜o tension, que permite permite um ajuste na curva suav suavizando izando os cantos. cantos. Veja na figura a seguir um exemplo com 4 pontos (esquerda) e um exemplo da mesma curva com v´arias tens˜oes oes diferentes. tension=1.5
B
D
tension=1
F
tension=default tension=0
A
C
E
G
Figura 8: Exemplo de smooth. \ begin { t i k z p i c t u r e } [ > = l a t e x ] circle e , scale =.25] \ t i k z s t y l e { p o n t o } = [fill [ fill =blue, circl \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:A] (A) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:B] (B) at (1,1); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:C] (C) at (2,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:D] (D) at (3,1); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:E] (E) at (4,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:F] (F) at (6,1); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:G] (G) at (8,0); \ d r aw aw [ r e ed d,das sh h ed ed , v e r ry y t hi hi n ] ( A ) - - ( B ) - - ( C ) - - ( D ) ; \ d r aw aw [ r e ed d,dash he ed,ver ry y thi in n] (E) -- (F) -- (G); %smooth \ d r aw aw [ s m o o ot th] plo ot t coor rd din na ate es s {(A) (B) (C) (D)} }; ; \ d r aw aw [ s m o o ot th] plo ot t coor rd din na ate es s {(E) (F) (G)} }; ; \draw[smooth , tension = 1 , bl b l u e ] p lo lo t c o o or rdi in nat te e s { ( E) E) ( F ) ( G ) } }; ; \draw[smooth , tension = 1. 1. 5 , b r o ow w n ] p lo lo t c o o or rdi in nat te e s { ( E) E) ( F ) ( G ) } }; ; %setas \ d r aw aw [ < - ] ( 7 , . .8 8 5) 5 ) - - ( 7. 7. 5 , 2 2) ) node [ r i g h t ] { \ f o o t n o t te e s i z e tension =1.5}; \ d r aw aw [ < - ] ( 7 . .2 2,.65 5) ) -- (8,1 1. . 5) 5 ) node [ r i g h t ] { \ f o o t n o t e es s i z e tension =1}; \ d r aw aw [ < - ] ( 7 . .3 3,.45 5) ) - - ( 8. 8. 5 , 1 1) ) node [ r i g h t ] { \ f o o t n o t e es s i z e tension = d e f a u l t } ; \ d r aw aw [ < - ] ( 7. 7. 4 , . 3 3) ) -- (9,. .5 5 ) node [ r i g h t ] { \ f o o t n o t te e s i z e tension =0}; \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
7
A seguir um outro exemplo com diferentes tens˜ooes es mas desta vez usando a op¸cc˜˜aaoo smooth smooth cycl cycle e. Esta op¸cc˜˜aaoo fecha o ciclo de uma figura aberta transformando-a numa figura fechada. B
A
F
C
E
J
G
I
K
D
H
L
tension=0.2
tension=0.5
tension=1
Figura 9: Exemplo de smooth cycle. \ begin { t i k z p i c t u r e } \ t i k z s t y l e { p o n t o } = [fill [ fill =blue, circl circle e , scale =.25] \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:A] (A) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:B] (B) at (1,1); \ c o o r d i n at at e [ p o n t to o ,label=righ ht t:C] (C) at (2,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:D] (D) at (1, -1); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:E] (E) at (4,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:F] (F) at (5,1); \ c o o r d i n at at e [ p o n t to o ,label=righ ht t:G] (G) at (6,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:H] (H) at (5, -1); \ c o o r d i n at at e [ p o n t to o ,label=lef ft t:I] (I) at (8,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:J] (J) at (9,1); \ c o o r d i n at at e [ p o n t to o ,label=righ ht t:K] (K) at (10,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:L] (L) at (9, -1); % s m o o t h c y c le le \ d r aw aw [ s m o o ot t h c y cl cl e ] p l o ot t [ tension = 0 .2 .2 ] c o o r rd din na ate es s{(A) (B) (C) (D)} }; ; \ d r a w [ s m o ot ot h c y c cl le, yshif ft t= -2. .2 25cm] .5 ] c o o or rdi in nate es s{(E) (F) (G) (H)} }; ; plot[ tension = 0 .5 \ d r a w [ s m o ot ot h c y c cl le, yshif ft t= -4. .5 5cm] plot[ tension = 1] 1] c o o or rdi in nat te es{(I) (J) (K) (L)} }; ; %texto \ node a t ( 1 , -2 2 ) { tension =0.2}; -2 2 ) { tension =0.5}; \ node a t ( 5 , \ node a t ( 9 , -2 2 ) { tension =1}; \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
8
Mais um exemplo: exemplo:
Figura 10: Carro feito com smooth cycle. \ begin { t i k z p i c t u r e } [ x = . 5 , y = . 5 ] \ d r a w [ s m o ot ot h c y c cl l e , tension = . 5 5] 5] p l o t c o o r d i n a t e es s{ ( 2 0 , 4 5) 5) ( 7 0 , 3 6 ) ( 8 0 , 4 0 0) )(85,80)(110,100 0) ) ( 1 5 0 , 1 00 00 ) ( 1 7 0 , 8 0 ) ( 1 7 78 8,60)(185,40)(23 30 0,38)(400,38) ( 4 40 40 , 4 2 ) ( 4 5 5 , 8 0 ) ( 4 7 8 , 1 0 02 2)(514,102)(53 30 0,90) ( 5 42 42 , 7 0 ) ( 5 4 5 , 4 8 ) ( 5 5 55 5,49)(573,60)(577,80 0) ) ( 5 77 77 , 9 5 ) ( 5 6 5 , 1 1 0 ) ( 5 6 3 , 1 5 50 0)(555,170)(48 80 0,217) ( 3 7 0 , 2 22 22 ) ( 2 8 0 , 2 1 5 ) ( 1 7 75 5,157)(40,120)(23,10 00 0) (20,90) }; \ d r a w [ s m o ot ot h c y c cl l e , tension = . 5 5] 5] p l o t c o o r d i n a t e es s{ ( 1 8 5 , 1 45 45 ) ( 4 0 0 , 1 5 5 ) ( 5 1 10 0,165)(465,205 5) )(415,212)(300,210 0) ) }; \ d r aw aw ( 1 3 30 0,50) cir rc c l e ( 42 42 ) ; \ d r aw aw ( 4 9 95 5,50) cir rc c l e ( 42 42 ) ; \ en d { t i k z p i c t u r e }
Veja os videos smooth videos smooth carro 01 e 01 e smooth carro 02 02 no no youtube. Veja um exemplo de smooth em Temperature and rain sparklines.
R´egis 2011
http://latexbr.blogspot.com/
9
Compara¸ c c˜ ˜ a ao o entre out, in, bend e smooth Veja um compara¸c˜ ca˜aoo entre as curvas com o uso de out, in, bend e smooth.
bend right
out,in
smooth
Figura 11: Compara¸c˜ cao a˜o entre out, in, bend e smooth \ begin { t i k z p i c t u r e } \ t i k z s et et { > = l a t e ex x ,inner sep=0p pt t,outer sep=2p pt t} %bend \ d r aw aw [ r e d ] ( 0 , 0 ) t o [ b e n nd d rig gh ht] (2,2 2) ); %out,in \ d r aw aw [ g r e ee en] (0,0 0) ) to [out= =0 0,in=-9 90 0] (2,2 2) ); %smooth \draw[blue ,smooth , tension = . 5] 5] p lo lo t c o o or rdi in nat te e s { (0 (0 , 0 ) ( 1 . .7 75,.2 25 5) (2,2 2) )} x t o s e f l ec % t e xt ec h as as \draw[->] (.5,1.5 5) ) node [ a b ov ov e ] { \ t i in n y b en en d r i g gh ht} t o [ o u t = - 9 0 , i n = 1 3 5 ] ( 1 .3 .3 , . 7 ) ; \ d r a w [ - > ] ( 0 , 1 ) node [ l e ft ft ] { \ t i in n y o ut ut , i n } to [out=0,in=135] (1.2,.4 4) ); gh t ] { \ t i in ny smo oo oth} \draw[->] (2. .5 5 , 1 ) node [ r i gh to [out=180,in=0] (1.9,.5 5) ); as a z u is % b o l i n h as is \ fill [ b l ue ue ] ( 0 , 0) 0) c i r rc cle (1p pt t); ue ] ( 1 .7 .7 5 , . 2 25 5) cir rc cle (1p pt t); \ fill [ b l ue \ fill [ b l ue ue ] ( 2 , 2) 2) c i r rc cle (1p pt t); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
10
B´ e ezie z ier r - cont control rolss pontos de controle controle O operador se chama controls. B´ezier ´e um tipo de curv curvaa definida definida por pontos que determinam sua curvatura sua curvatura.. Podemos definir as curvas B´ ezier ezier de duas maneiras: por coordenadas por coordenadas polares ou polares ou por coordenadas por coordenadas cartesianas.
Coordenadas Polares in´ n´ ıcio e fim da curva, e considere Considere os pontos P1 e P2 da figura a seguir como os pontos de i os pontos C1 e C2 como pontos de controle que definem a curvatura da curva. Suponha uma reta suporte passando por P1 e C1 e outra passando por P2 e C2. Essas retas retas tangenciam tangenciam a curva curva em P1 e P2 definindo assim a curvatura da curva.
ponto de controle
Curva Cu rva B´ezier ezi er
C2 raio ponto de controle
r2
C1
reta tangente a curva em P2
r1
ponto inicial
α
β
P1
P2 reta tangente a curva em P1
ˆangulo angulo ponto final
Figura 12: Curva B´ezier ezier definida por coordenadas polares. p olares. A sintaxe si ntaxe para pa ra gerar ger ar uma curva B´eezier zier usando coord coordenadas enadas polares pola res ´e a seguinte: draw (P (P1) 1) .. cont contro rols ls +(α : r 1 ) and +(β :: r 2 ) .. (P (P2) 2); ; \draw
onde P1 ´e o ponto inicia inicial, l, P2 ´e o po ponto nto final, fina l, α e β s˜aaoo os angulos ˆangulos de inclina¸cc˜ao ˜ao das retas tangentes a P1 e P2, respectivamente; e r1 e r2 ´e o comprimento de cada reta tangente, ou seja, a distˆancia ancia de P1 `a C1 e P2 `a C2, respectivamente.
R´egis 2011
http://latexbr.blogspot.com/
11
Exemplo com coordenadas polares
Veja o c´odigo odigo mais simples para gera¸c˜ cao a˜o da curva B´eezier zier em coordenadas polares. \ begin { t i k z p i c t u r e } \ d r aw aw ( 0 , 0 0) ) .. con nt tro ol ls +(4 45 5:1 1) ) a nd nd + ( 6 60 0:2 2) ) .. (2,0); \ en d { t i k z p i c t u r e }
C2
C1
45
60
◦
P1
◦
P2 resultado final Figura 13: Exemplo de curva B´ eezier zier definida por coordenadas polares.
A seguir um c´oodigo digo mais completo com o uso de coordenadas previamente definidas e estilos para visualiza¸cc˜ao ˜ao dos pontos. Mas lembrando que, o c´odigo odigo anterior ´e suficiente para gerar a curva. \ begin { t i k z p i c t u r e } in i ca % d e f in c a o d e e s ti ti l os os \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P2] (p2) at (2,0); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) at (45:1 1) ); \ c o o rd rd i n na ate (c2) at (60 0: :2); %coor rd d e na n a d a n e ce c e s sa s a r ia i a p a ra ra p o si si c ao ao c o rr rr e ta ta d o p o nt nt o c c 2 p a r a d e se s e n ha ha r a r et et a tangente. % N ao a o e h o b ri r i g at a t o ri ri o . \ c o o r d i n at at e [ c o n t r ro ole ,,label=abov ve e : C 2 , x s h i f t = 4 c m ] ( c c 2 ) a t ( c 2 ) ; % x sh s h if i f t c om om o d o br br o d a p o si si c ao ao d o p o nt nt o . %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1 1) ) (p2 2) ) -- (cc2) ); ; %bezier \ d ra ra w ( p 1 1) ) . . c on o n tr t r ol o l s + (c ( c 1) 1 ) a nd nd + ( c c2 2) .. (p2 2) ); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
12
Coordenadas Cartesianas Atrav´es es de coord coordenadas enadas cartesi cartesianas anas ooss pontos p ontos P1 , P2 , C1 e C2 s˜ao ao definidos pelo par ordenado ( x, y ). pontos de controle y
C1
ponto inicial
C2
Curva Cu rva B´ezier ezi er P1
P2
ponto final x
0
Figura 14: Curva B´ezier ezier definida por coordenadas cartesianas. A sintaxe si ntaxe para pa ra gerar ger ar uma curva B´eezier zier usando coord coordenadas enadas cartesianas cartesi anas ´e a seguinte: draw (P (P1) 1) .. cont contro rols ls (C (C1) 1) an and d (C2 (C2) ) .. \draw
(P2) (P2); ;
onde P1 ´e o ponto inicial, inici al, P2 ´e o po ponto nto final, final , C1 e C2 s˜ao ao os pontos de controle. Exemplo com coordenadas cartesianas
Uma curva cu rva B´ezier ezier pode po de ser definida por um ou dois pontos de controle para cada trecho de curva. Veja o c´odigo odigo mais simples para gera¸c˜ cao a˜o da curva B´eezier zier em coordenadas cartesianas, no caso, com um ponto de controle. \ begin { t i k z p i c t u r e } \ d r aw aw ( 0 , 0 0) ) .. con nt tro ol ls (1,2 2) ) .. (4,0); \ en d { t i k z p i c t u r e }
C1
P1
P2 resultado final Figura 15: Curva B´ezier ezier com um p ponto onto de controle.
A seguir um c´oodigo digo mais completo com o uso de coordenadas previamente definidas e estilos para visualiza¸cc˜ao ˜ao dos pontos.
R´egis 2011
http://latexbr.blogspot.com/
13
\ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,0) grid (4,3); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P2] (p2) at (4,0); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) at (1,2); %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1 1) ) -- (p2 2) ); %bezier \ d ra ra w ( p 1 1) ) . . c on o n tr t r ol ol s ( c 1 1) ) .. (p2 2) ); \ en d { t i k z p i c t u r e }
Se vocˆe quiser as coordenadas co ordenadas sem os estilos basta dar uma simplificada no c´ odigo odigo anterior. \ begin { t i k z p i c t u r e } \ c o o rd rd i n na ate (p1) at (0,0 0) ); \ c o o rd rd i n na ate (p2) at (4,0 0) ); \ c o o rd rd i n na ate (c1) at (1,2 2) ); %bezier \ d ra ra w ( p 1 1) ) . . c on o n tr t r ol ol s ( c 1 1) ) .. (p2 2) ); \ en d { t i k z p i c t u r e }
Curva com dois pontos de controle
A seguir, uma curva com dois pontos de controle. Repare o uso do operador and. \ begin { t i k z p i c t u r e } \ d ra ra w ( 0 , ,0 0 ) . . c on o n tr t r ol ol s ( 1 , ,2 2) an nd d (2, ,2 2) .. (4, ,0 0); \ en d { t i k z p i c t u r e }
C1
P1
C2
P2 resultado final Figura 16: Curva B´eezier zier com dois pontos de controle.
\ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,0) grid (4,3);
R´egis 2011
http://latexbr.blogspot.com/
14
%coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P2] (p2) at \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C2] (c2) %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1 1) ) (p2 2) ) -- (c2);
(0,0); (4,0); at (1,2); at (2,2);
%bezier \ d ra ra w ( p 1 1) ) . . c on o n tr t r ol ol s ( c 1 1) ) a nd nd ( c 2 2) ) .. (p2 2) ); \ en d { t i k z p i c t u r e }
E o c´odigo odigo somente somente com as coorden coordenadas: adas: \ begin { t i k z p i c t u r e } \ c o o rd rd i n na ate (p1) at (0,0 0) ); \ c o o rd rd i n na ate (p2) at (4,0 0) ); \ c o o rd rd i n na ate (c1) at (1,2 2) ); \ c o o rd rd i n na ate (c2) at (2,2 2) ); %bezier \ d ra ra w ( p 1 1) ) . . c on o n tr t r ol ol s ( c 1 1) ) a nd nd ( c 2 2) ) .. (p2 2) ); \ en d { t i k z p i c t u r e }
Exemplo de duas curvas
Daqui pra frente sempre usaremos coordenadas previamente definidas e estilos para visualiza¸cc˜ aao ˜o dos pontos. Para fazer duas curvas basta inserir um novo controls. Assim, teremos: draw (P (P1) 1) .. cont contro rols ls (C (C1) 1) an and d (C2 (C2) ) .. \draw ..
C1
(P2) (P2) (P3) (P3); ;
cont contro rols ls (C (C3) 3) a and nd (C (C4) 4) . .. .
C2 P3
P1
P2 C3
C4
resultado final
Figura 17: Duas curvas B´ezier. ezier. \ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,-2) gri id d (6,2); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w lef ft t:P2] (p 2) at (3,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:P3] (p3) at (6,0);
R´egis 2011
http://latexbr.blogspot.com/
15
\ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) at (1,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C2] (c2) at (2,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=belo ow w:C3] (c3) at (4,-1); \ c o o r d i n at at e [ c o n t r ro ole ,label=belo ow w:C4] (c4) at (5,-1); %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1) (p2) -- (c2) (p2) -- (c3) (p3) -- (c4) ); ; % d u as rv a s b e zi zi e r as c u rv \ dr d r aw aw
( p1 p1 ) . .. . con nt t ro r o ls ls ( c 1 1) ) an nd d (c2 2) ) .. . . c o nt nt ro r o ls l s ( c3 c3) an d ( c 4 4) ) .. \ en d { t i k z p i c t u r e }
( p2 p2 ) ( p3 p 3 ); );
Exemplo Exemp lo de trˆ es es curvas
draw (P (P1) 1) .. cont contro rols ls (C (C1) 1) an and d (C2 (C2) ) .. \draw .. ..
C1 C2
P1
cont contro rols ls ( (C3 C3) ) an and d (C (C4) 4) . .. . cont contro rols ls (C (C5) 5) a and nd (C (C6) 6) . .. .
(P2) (P2) (P3) (P3) (P4) (P4); ;
C5 C6
P2
P3
P4
C3 C4
resultado final Figura Fig ura 18: Trˆ es es curvas B´ezier. ezi er.
\ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,-2) gri id d (9,2); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w lef ft t:P2] (p 2) at (3,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w righ ht t:P3] (p3) at (6,0); \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P4] (p4) at (9,0); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) at (1,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C2] (c2) at (2,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=belo ow w:C3] (c3) at (4,-1); \ c o o r d i n at at e [ c o n t r ro ole ,label=belo ow w:C4] (c4) at (5,-1); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C5] (c5) at (7,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C6] (c6) at (8,1); %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1) (p2) -- (c2 2) ) (p2 2) ) -- (c3 3) ) (p3 3) ) -- (c4 4) ) (p3 3) ) -- (c5) ( p 4) 4) - - ( c 6 ) ; % t r es rv a s b e zi zi e r es c u rv \ dr d r aw aw ( p1 p1 ) . .. . con nt t ro r o ls ls ( c 1 1) ) an nd d (c2 2) ) . . ( p2 p2 ) . . c o nt nt ro r o ls l s ( c3 c3) an d ( c 4 4) ) . . ( p3 p3 ) . . c o nt nt ro r o ls l s ( c5 c5) an d ( c 6 6) ) . . ( p4 p 4 ); ); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
16
Dica para desenha desenhar r curvas B´ e ezier zier
Uma boa dica para desenhar curvas B´eezier zier ´e tra¸cando cando primeiro as retas com os quatro pontos da curva junto com uma grade, a partir da´ı teremos uma no¸cc˜˜aaoo de como ser´a a curva. P2
P2
C2
C2
C1
C1
P1
P1 resultado final Figura 19: Exemplo
\ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,0) grid (2,4); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (1,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:P2] (p2) at (1,4); \ c o o r d i n at at e [ c o n t r ro ole ,label=lef ft t:C1] (c1) at (0,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=lef ft t:C2] (c2) at (0,3); %retas \ d ra ra w [ [r r ed ed , d a s sh h ed ed ] ( p 1 1) ) -- (c1 1) ) -- (c2 2) ) -- (p2 2) ); %bezier \ dr d r aw aw ( p1 p1 ) . .. . c on on tr t r ol ol s ( c 1 1) ) an d ( c c2 2 ) . . ( p2 p 2 ); ); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
17
Vejamos agora mais alguns exemplos de curvas. P3
P3
C4
C4
C3
C3 P2
P2
P1
C2
C2
C1
C1
P1 resultado final Figura 20: Exemplo
\ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (-2,0) gri id d (2,6); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e righ ht t:P2] (p2) at (0,3); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:P3] (p3) at (0,6); \ c o o r d i n at at e [ c o n t r ro ole ,label=righ ht t:C1] (c1) at (1,1); \ c o o r d i n at at e [ c o n t r ro ole ,label=righ ht t:C2] (c2) at (1,2); \ c o o r d i n at at e [ c o n t r ro ole ,label=lef ft t:C3] (c3) at (-1,4); \ c o o r d i n at at e [ c o n t r ro ole ,label=lef ft t:C4] (c4) at (-1,5); %retas \ d ra ra w [ [r r ed ed , d a s sh h ed ed ] ( p 1 1) ) -- (c1) -- (c2) -- (p2) -- (c3) -- (c4) -- (p3); %bezier \ dr d r aw aw ( p1 p1 ) . .. . con nt t ro r o ls ls ( c 1 1) ) an nd d (c2 2) ) . . ( p2 p2 ) . . c o nt nt ro r o ls l s ( c3 c3) an d ( c 4 4) ) . . ( p3 p 3 ); ); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
18
C1
P2 P1
C2
resultado final Figura 21: Exemplo
\ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,-1) gri id d (4,2); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at (0,0); \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:P2] (p2) at (4,0); \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) at (2,2); \ c o o r d i n at at e [ c o n t r ro ole ,label=belo ow w:C2] (c2) at (1,-.5); %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1 1) ) (p2 2) ) -- (c2); %bezier \ dr d r aw aw ( p1 p1 ) . .. . c on on tr t r ol ol s ( c 1 1) ) an d ( c c2 2 ) . . ( p2 p 2 ); ); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
19
P2
C2
C1 P1 resultado final Figura 22: Exemplo \ begin { t i k z p i c t u r e } \tikzset{>=latex, p o n t o / . s t y l e = { d r a w ,fill ,fill =blue, rectangle , scale =.5}, controle/.style={draw,blue,circle , scale =.5} } %grade \draw [color=ligh ht tgra ay y ,dashed] (0,0) grid (2,3); %coordenadas \ c o o r d i n at at e [ p o n t to o ,label=belo ow w:P1] (p1) at \ c o o r d i n at at e [ p o n t to o ,label=abov ve e:P2] (p2) at \ c o o r d i n at at e [ c o n t r ro ole ,label=abov ve e:C1] (c1) \ c o o r d i n at at e [ c o n t r ro ole ,label=belo ow w:C2] (c2) %retas \ d ra ra w [ b bl l ue ue ] ( p 1 1) ) -- (c1 1) ) (p2 2) ) -- (c2); %bezier \ dr d r aw aw ( p1 p1 ) . .. . c on on tr t r ol ol s ( c 1 1) ) an d ( c c2 2) . . \ en d { t i k z p i c t u r e }
R´egis 2011
(0,0); (0,3); at (2,0); at (0,2);
( p2 p 2 ); );
http://latexbr.blogspot.com/
20
Veja tamb´em em uma compara¸c˜ caao ˜o do carro desenhado anteriormente, s´o que agora desenhado com curvas B´ezier, ezier, no caso tivemos que inserir mais pontos de controle.
P1 P1 Figura 23: Carro desenhado com smooth (`a es esquerda) querda) e com c om B´ezier ezier (`a direita). Baixe o c´odigo aqui odigo aqui.. E por fim mais alguns exemplos exemplos de figuras figuras conhe conhecidas. cidas. As vezes torna-se torna-se necess´ ario ario uma altera¸cc˜ aao ˜o na escala do desenho.
Figura 24: Letra B Baixe o c´odigo aqui odigo aqui..
Figura 25: Gota d’´aagua gua \ begin { t i k z p i c t u r e } [scale [ scale =.02] \draw[green ,dashed] (0,250) --(0,175) --(-65,130) --(-65,75) --(-65,20) --(-30,0) --(0,0)--(30,0) --(65,20) --(65,75) --(65,130) --(0,175) --(0,250); \ d r aw aw ( 0 , 2 25 50) .. con nt tro ol ls (0,1 17 7 5) 5 ) a nd nd ( - 6 5 , 1 13 3 0) 0) . . ( - 6 5 , ,7 7 5) 5) .. con nt tro ol ls (-65, ,2 2 0) 0) a nd nd ( - 3 30 0,0) .. (0,0 0) ) .. con nt tro ol l s ( 30 3 0 , 0 ) a nd n d ( 65 65 , 2 0 0) ) ..( (6 65,75 5) ) .. con nt tro ol ls (65,1 13 3 0 ) a nd nd ( 0 , 1 17 7 5) 5) . . ( 0 , 2 25 5 0) 0) - - c y c cl le; \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
21
P1 Figura 26: Garrafa \ begin { t i k z p i c t u r e } [scale [ scale =.5] \ d r aw aw ( - 1 . .7 7,0) .. con nt tro ol ls (-1,-. .2 2 5) 5) a nd nd ( 1 , - . .2 2 5) 5) . . ( 1 . .7 7,0) .. co on nt tr r ol o l s ( 1. 1. 8 , ,0 0) and (2,. .1 1) .. (2,. .3 3) -- (2,9 9) ) .. con nt tro ol ls (2,10 0. . 2 ) a nd nd ( .8 .8 , 1 0 . .5 5) .. (.8,1 11 1.5 5) ) -- (.8,15 5) ) .. con nt tro ol l s ( .5 .5 , 1 5 . .2 2 5 ) a nd nd ( - . 5 , 1 15 5.2 25 5) .. (-.8, ,1 1 5) 5) -- (-.8,11.5 5) ) .. con nt tro ol ls (-.8,1 10 0 .5 . 5 ) a nd nd ( - 2 , 1 0 0. . 2) 2) . . ( - 2 , ,9 9) -- (-2,. .3 3) .. con nt tro ol ls (-2,. .1 1 ) a nd nd ( - 1 . .8 8,0) .. (-1. .7 7,0); \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
22
Figura 27: Ta¸ccaa Nesta figura eu escolhi usar uma reflex˜aaoo com o ambiente scope. \ begin { t i k z p i c t u r e } %grade \ d r a w [ l i g ht ht g r a ay y ,opacity=. .5 5,xstep=.1,ystep=.1 1] ] (0,0) grid (2,9); % e i xo m e t ri ri a xo d e s i me \ d r aw aw [ r e d ] ( 0 , 0 0) ) - - + +( +( 0 , 9 9) ); %taca \ d r aw aw ( 0 , 0 0) ) - - ( 1. 1. 4 , 0 0) ) .. con nt tro ol l s ( 1. 1. 4 , 0 0) ) a nd n d ( 1. 1. 9 , 0 0) ) . . ( 1. 1. 9 , . 2 2) ) .. con nt tro ol ls (1. .9 9 , . 3 ) a nd nd ( 1 . .6 6 , . 2 ) . . ( 1. 1. 5 , . 2 2) ) .. con nt tro ol ls (1. .3 3 , . 2 ) a nd nd ( .2 .2 , . 7 7) ) .. (.2,1 1. .1) -- (.2,3.5 5) ) .. con nt tro ol ls (1,4 4) ) a nd nd ( 2. 2. 3 , 5 . .0 0) .. (1. .5 5,8.3 3) ) -- (0 ,8. .3 3); \ begin { s c o p e } [ x = - 1 c m ]% ] % - 1 p ro r o vo v o ca c a a r ef e f le l e xa x a o d a f ig i g ur u r a e m r el e l ac a c ao a o a o e ix ix o y . \ d r aw aw ( 0 , 0 0) ) - - ( 1. 1. 4 , 0 0) ) .. con nt tro ol l s ( 1. 1. 4 , 0 0) ) a nd n d ( 1. 1. 9 , 0 0) ) . . ( 1. 1. 9 , . 2 2) ) .. con nt tro ol ls (1. .9 9 , . 3 ) a nd nd ( 1 . .6 6 , . 2 ) . . ( 1. 1. 5 , . 2 2) ) .. con nt tro ol ls (1. .3 3 , . 2 ) a nd nd ( .2 .2 , . 7 7) ) .. (.2,1 1. .1) -- (.2,3.5 5) ) .. con nt tro ol ls (1,4 4) ) a nd nd ( 2. 2. 3 , 5 . .0 0) .. (1. .5 5,8.3 3) ) -- (0 ,8. .3 3); \ en d { s c o p e } \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
23
Figura 28: Android \ definecolor { v e r d e } { R G B } { 1 6 4 , 2 0 2 , 5 7 } \ begin { t i k z p i c t u r e } %grade \ d r a w [ l i g ht ht g r a ay y ,dashed] (-5,0) grid (5,11); %eixo \ d r aw aw [ r e d ] ( 0 , 0 0) ) -- (0,1 11 1); %corpo \ fill [ v e rd rd e ] ( - . 5 , ,2 2 .1 . 1 ) - - ( .5 .5 , 2 . 1 1) ) -- (.5, ,. . 5) 5 ) a rc rc ( 1 8 80 0:36 60 0:6 6. .5mm) -- (1. .8 8,2.1 1) ) -- (2. .5 5,2.1 1) ) a rc rc ( 2 7 70 0:3 36 60: :5 5mm) -- (3,7 7. .3) -- (-3,7 7. . 3) 3) - - ( - 3 , 2 2. . 6) 6) a rc rc ( 1 8 80 0:2 27 70: :5 5mm) -- (-1. .8 8,2. .1 1) -- (-1. .8 8,.5 5) ) a rc rc ( 1 8 0 0: :36 60 0:6 6. .5mm) -- cyc cl le; %bracos \ fill [ v e rd rd e , r o u n d de ed corne er rs=6mm] (3.3 35 5,3.2) rectan ng gle ++(1 1. .4,4.2); \ fill [ v e rd rd e , r o u n d de ed corne er rs=6mm] (-3.35,3. .2 2) recta an ngle ++(-1.4,4. .2 2); %cabeca \ fill [ v e rd rd e ] ( - 3 , 7 7. . 5) 5) - - ( 3 , 7 . 5 5) ) a rc rc ( 0 : :1 180 0: :3) -- cyc cl le; %olhos \ fill [ w h it it e ] ( 1 . .4 4,8.8 8) ) cir rc cle (2m mm m); \ fill [ w h it it e ] ( - 1 . .4 4,8. .8 8) cir rc cle (2m mm m); %orelhas \ begin { s c o p e } [ x s h i f t = 1 . 4 c m , y s h i f t = 1 0 . 1 c m ] \ begin {scope}[ rotate =-35] \ fill [ v e rd rd e , r o u n d de ed corne er rs=0.45mm] (0,0) rectan ng gle ++(. .1 1,1); \ en d { s c o p e } \ en d { s c o p e } \ begin { s c o p e } [ x s h i f t = - 1 . 4 c m , y s h i f t = 1 0 . 1 c m ] \ begin {scope}[ rotate =35] \ fill [ v e rd rd e , r o u n d de ed corne er rs=0.45mm] (0,0) rectan ng gle ++(. .1 1,1); \ en d { s c o p e } \ en d { s c o p e } \ en d { t i k z p i c t u r e }
R´egis 2011
http://latexbr.blogspot.com/
24
Figura 29: Baleia Azul \ begin { t i k z p i c t u r e } an ] ( 0 , 0) 0) . . c o n nt tro ol ls (3,0 0) ) a nd nd ( 8 , -5 5 ) . . ( 10 10 , 0 ) \ fill [ c y an .. con nt tro ol ls (9,-. .5 5 ) a nd nd ( 8 . .5 5,.5 5) ) .. (8,0 0) ) .. con nt tro ol ls (8,. .4 4 ) a nd nd ( 9 . .5 5 , . 3 ) . . ( 10 10 , . 2 2) ) .. con nt tro ol ls (8,3 3) ) a nd nd ( 0 , 2 2) ) .. (-1,1 1. . 5) 5) .. con nt tro ol ls (-3,. .7 7 ) a nd nd ( - 2 , 0 0) ) .. ( -4,-1 1) .. con nt tro ol ls (-4,-1 1 ) a nd nd ( - 2 , -2 2) .. (0,0 0) ); \ fill [ c y an an ] ( 0 , 1. 1 . 7) 7) . . c o n nt tro ol ls (-1, ,3 3 ) a nd nd ( - 2 , 3 3. . 5) 5) . . ( - 3 , 3 3. . 5) 5) .. con nt tro ol ls (-2. .5 5 , 3 ) a nd nd ( - 2 . .2 2,2) .. (-1. .5 5,1. .2 2); 8) c i r rc cle (1m mm m); \ fill ( 8 , . 8) \ en d { t i k z p i c t u r e }
Preserve a natureza Figura 30: Folha \ begin { t i k z p i c t u r e } [ x = 2 p t , y = 2 p t ] \ fill [ g r e e n ] ( 4 5 .9 .9 5 , 4 8 . 6 7 ) . . c o n t r o ol ls(45.95,48.67) and (46.4 45 5,13.05) ..(34.32,7.12) .. con nt tro ol ls (22 2. .09,1 1. .15 5) ) a nd nd ( 2 . .7 76,7. .9 9) .. (12 2. .04,2 27 7) .. con nt tro ol ls (18 8. .9,41 1. .13 3) ) a nd nd ( 3 8 8. .33,3 32 2) .. (45 5. .95,4 48 8.6 67 7) -- cyc cl le; \ d r aw aw [ g r e ee en!75 5! !bla ac ck,line wid dt th=2p pt t] (6. .8 82,5. .2 22) .. con nt tro ol ls (9,5 5) ) a nd nd ( 3 5 . 12 12 , 1 4 . 8 5 ) . . ( 4 1 . .9 95,36.7); 20 , 0 ) { \ L a ar rge Pre es ser rv ve a nat tu ure ez za}; \ node a t ( 20 \ en d { t i k z p i c t u r e }
Veja trˆeess videos no youtube: bezier01, bezier01, bezier02 bezier02 e e drawing android in LaTeX with KTikz KTikz.. Veja tamb´em em o t´oopico pico Desenhando no TikZ com imagem de referˆ encia, encia, que ´e uma continua¸ continua¸cc˜ aao ˜o deste t´opico. opico.
R´egis 2011
http://latexbr.blogspot.com/
25
View more...
Comments