Está en la página 1de 23

T HC Tik Z CN BN

Phng Gia Lun


07.June.2014

Mc lc
1 Nhng iu c bn
1.1 Hnh v cho sinh vin ca thy Karl . . . . . . . . . .
1.1.1 Vn cn gii quyt . . . . . . . . . . . . . .
1.1.2 Ci t mi trng Tik Z trong LATEX . . . . .
1.1.3 V ng thng . . . . . . . . . . . . . . . . .
1.1.4 V ng cong . . . . . . . . . . . . . . . . .
1.1.5 V ng trn v elip . . . . . . . . . . . . . .
1.1.6 V hnh ch nht . . . . . . . . . . . . . . . .
1.1.7 V hnh li . . . . . . . . . . . . . . . . . . .
1.1.8 S dng Style qun l cc thng s iu chnh
1.1.9 Cc thng s ty chn v . . . . . . . . . . .
1.1.10 V cung . . . . . . . . . . . . . . . . . . . . .
1.1.11 Biu din mt phn ca hnh v . . . . . . . .
1.1.12 V parabol, ng cong sin v cosin . . . . . .
1.1.13 T mu v v lin nt . . . . . . . . . . . . . .
1.1.14 To hiu ng shading . . . . . . . . . . . . . .
1.1.15 Xc nh to . . . . . . . . . . . . . . . . .
1.1.16 V cc ng giao nhau . . . . . . . . . . . .
1.1.17 V mi tn . . . . . . . . . . . . . . . . . . . .
1.1.18 Mi trng Scope . . . . . . . . . . . . . . . .
1.1.19 S thay i v tr . . . . . . . . . . . . . . . .
1.1.20 Vng lp . . . . . . . . . . . . . . . . . . . . .
1.1.21 Thm ch trong hnh v . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

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

Li ni u
v hnh, ngi dng LATEX c th s dng PSTrick, MetaPost . . . nhng t khi gi PGF
c vit bi Till Tantau (2006), mt phn ln chuyn sang dng Tik Z v qu trnh g
nhanh chng vi c php lnh n gin. Trong qu trnh t hc, ti bin son ti liu ny
t pgfmanual, v dng kin thc va hc v mt s hnh lin quan n cng vic. Do
, ti liu ny c th s hu ch vi nhng ai mi tm hiu Tik Z, hc theo cch Learning
by doing, hoc hc qua vic phn tch m lnh. Khi quen, chng ta tm hiu Tik Z s d
dng v nhanh chng hn.
Mi kin ng gp v ti liu ny vui lng gi v a ch email: gialuannb@gmail.com.
Xin trn trng cm n s gp ca bn!
No, mnh cng chi vi Tik Z. . .

Chng 1
Nhng iu c bn
Phn ny cp n nhng iu c bn nht, khng i su vo chi tit, ch yu l cc hng
dn cch v mt hnh cho trc thng qua cc d n n gin. Qua cc d n ny, chng
ta s quen dn v t v c nhng hnh v u tin vi Tik Z.

1.1
1.1.1

Hnh v cho sinh vin ca thy Karl


Vn cn gii quyt

Karl mun c mt hnh v trong bi tp cho sinh vin nh sau:


y
Gc l 30 trong v d (/6
nu n v o l radian). Gi tr
sin l:

sin = 1/2.
1
2

tan =

sin

cos

12

sin
cos
x

21

Theo nh l Pitago, ta c
cos2 + sin2 = 1. Do
di ca ng mu xanh l gi
tr ca cosin , phi l
p

cos = 1 1/4 = 12 3.
iu ny cho ta di ng
mu cam tan c gi tr l

tan =

1.1.2

Ci t mi trng Tik Z trong LATEX

Karl dng LATEX to mt file .tex c ni dung nh sau:

sin
= 1/ 3.
cos

\documentclass{article}
\usepackage{tikz}
\begin{document}
We are working on
\begin{tikzpicture}
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\end{tikzpicture}
\end{document}
Khi bin dch bi pdflatex hay latex, ta s c kt qu nh sau:

We are working on
Tt nhin y cha phi l hnh v m Karl cn nhng chng ta v c hai ng thng
vung gc vi nhau cn thit to h trc ta .
Nghin cu chi tit hn v code. Trc ht, gi tikz c loaded. Sau l hai lnh v \draw
nhm v mt ng thng t ta (-1.5,0) ti ta (1.5,0) v v mt ng thng khc
t ta (0,-1.5) ti ta (0,1.5). Kt thc mi lnh lun l du chm phy (;)

1.1.3

V ng thng

Yu t c bn trong mi hnh nh c v bi Tik Z l ng. ng y c hiu l


ng thng hoc ng cong. Bn bt u mt ng ti mt im c ch ra bi ta
ca n. V d (0,0).
Theo sau ta l cc k hiu ch loi ng. Tip sau k hiu ch loi ng l mt ta
khc ch im cui ca ng . v ng thng chng ta dng k hiu - C php lnh v ng thng:
\draw (ta 1) - - (ta 2);
Mt v d n gin khc v v ng thng:

\tikz \draw (-1.5,0) -- (1.5,0) -- (0,-1.5) -- (0,1.5);

1.1.4

V ng cong

Tik Z cung cp mt c php lnh c bit v ng cong: mt hoc hai "control point"
(im iu chnh s cong) cn phi c xc nh ng cong . Thut ton n gin
v ng cong: gi s bn bt u im x v im iu chnh control point y u tin.
3

iu ny c ngha tip tuyn ca ng cong ti x s i qua im y. Tip theo, gi s ng


cong kt thc ti im z vi im iu chnh control point w. Khi , tip tuyn ca ng
cong ti im z s i qua w.
Di y l mt v d trong im iu chnh control point c thm vo minh ha
r hn:

\begin{tikzpicture}
\filldraw [gray] (0,0) circle (2pt)
(1,1) circle (2pt)
(2,1) circle (2pt)
(2,0) circle (2pt);
\draw (0,0) .. controls (1,1) and (2,1) .. (2,0);
\end{tikzpicture}
C php lnh v ng cong:
\draw (ta u) .. controls (control point1) and (control point2) ..(ta cui);
Lu : c th b phn: and (control point2) trong cu trc lnh nu control point1
chnh l control point2.
Karl c th v na vng trn bng lnh v ng cong vo h trc ta nh sau:

\begin{tikzpicture}
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (-1,0) .. controls (-1,0.555) and (-0.555,1) .. (0,1)
.. controls (0.555,1) and (1,0.555) .. (1,0);
\end{tikzpicture}
Kt qu c th lm Karl hi lng nhng v ng trn theo cch ny tng i di dng.
C cch khc ngn gn hn l dng lnh v ng trn ring.

1.1.5

V ng trn v elip

Mt ng trn xc nh khi ta bit ta tm (x,y) v bn knh r, do vy c php lnh


v ng trn nh sau:
\draw (x,y) circle (r);
Vi x, y, r l cc s, sau s r c th trng hoc thm n v ca r nh cm, pt . . .
V d:

\begin{tikzpicture}
\draw (0,0) circle (30pt);
\end{tikzpicture}
Tng t ng trn, v mt hnh elip ta cn bit ta tm (x,y) v hai bn knh a, b.
Do vy c php lnh v elip l:
4

\draw (x,y) ellipse (a and b);


V d:

\begin{tikzpicture}
\draw (0,0) ellipse (30pt and 10pt);
\end{tikzpicture}
v mt hnh elip lch mt gc so vi trc ta , ta dng thm ty chn rotate nh sau:

\begin{tikzpicture}
\draw[rotate=30] (0,0) ellipse (30pt and 15pt);
\end{tikzpicture}
Quay tr li vi hnh v ca Karl, ta dng lnh v ng trn c bn knh 1cm thay v dng
lnh v ng cong. M lnh Tik Z l:

\begin{tikzpicture}
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\end{tikzpicture}
c hnh v cui cng vi ln ph hp, Karl cn dng thm mt tham s ty chn
n gin nhng chng ta s khng s dng y nhm trnh by hnh v cng vi m Tik Z
ngn gn, hp vi kh giy hn.

1.1.6

V hnh ch nht

C mt vi cch v hnh li nn trong hnh v ca Karl. Theo cch nhn n gin hnh
li nn l tp hp nhiu hnh ch nht. Hnh ch nht l mt trong nhng hnh ph bin
trong hnh hc s cp nn c mt lnh ring. Lnh ny bt u t v tr gc 1 c ta
(x1,y1) ca hnh ch nht v v tr gc c ta (x2,y2) i din vi gc 1.
C php lnh v hnh ch nht l:
\draw (x1,y1) rectangle (x2,y2);
V d:

\begin{tikzpicture}
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\draw (0,0) rectangle (0.5, 0.5);
\draw (-0.5,-0.5) rectangle (-1,-1.4);
\end{tikzpicture}
Trong nhiu trng hp lnh v hnh ch nht rt hu dng, nhng khng nn dng lnh
5

ny v hnh li nn trong hnh v ca Karl v phi v mt s lng ln hnh ch nht


v hn na mt s hnh ch nht cn thiu mt cnh hoc cnh b h. Gii php tt hn l
dng lnh grid sau y v hnh li.

1.1.7

V hnh li

Lnh grid l lnh v hnh li. C th dng lnh ny v mt hnh ch nht li theo cch
bt u t ta mt gc v gc cn li ca hnh ch nht li c xc nh theo c php
ca lnh grid.
V d:

\tikz \draw[step=20pt] (0,0) grid (100pt,100pt);

C php lnh v hnh li l:


\draw[xstep=x, ystep=y, c, w] (x1,y1) grid (a,b);
Trong :
x l s ch chiu di ca c s hnh li theo trc honh.
y l s ch chiu cao ca c s hnh li theo trc tung. Sau x, y c th b trng (mc
nh n v l cm) hoc c n v (cm, pt . . . ). Nu x=y th ch cn dng ty chn step
ging nh v d trn.
c: (color) mu sc ca ng k (gray, blue, lightgray, red, . . . ).
w : (width) ty chn rng ca ng k gm: ultra thin (0,1pt), very thin (0,2pt), thin
(0,4pt), semithick (0,6pt), thick (0,8pt), very thick(1.2pt), ultra thick (1.6pt). Nu khng s
dng ty chn ny, w s t mc nh l thin (0.4pt) ging v d trn.
(x1,y1): im gc ban u ca li.
(a,b): im gc cui ca li.
Lnh grid to hnh li bng cch v cc ng thng (ngang v dc) trong im gc
u tin ca hnh ch nht u tin to bi cc ng , l im c xc nh bi cp s
(x1,y1).
V d:

\draw[xstep=10pt, ystep=20pt, gray, thick] (0,0) grid (100pt,100pt);

Vi hnh v ca Karl, ta thm hnh li v lm m hnh li bng ty chn w l very


thin nh sau:
\begin{tikzpicture}
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\end{tikzpicture}

1.1.8

S dng Style qun l cc thng s iu chnh

Thay v s dng cc ty chn iu chnh trong lnh \draw phn 1.1.7 nh: xstep, ystep,
step, color, width vi cc ty chn nh gray, very thin . . . , chng ta c th t tt c cc
iu chnh ny vo mt Style. Mt Style l mt tp hp nhng ty chn iu chnh c s
dng quy nh chi tit cch v trc khi chng ta v hnh.
V d: m lnh vi Styles help lines:
\begin{tikzpicture}
% Styles
[help lines/.style={step=0.5cm,color=blue,very thin}]
\draw[help lines] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\end{tikzpicture}
Vic s dng Style c tc dng lm cho m lnh v ca bn ngn gn, linh hot. Hn na,
t vic chnh sa thng s trong Style c th to ra s thay i ng lot vi cc lnh v c
s dng Style . Thng thng, cc Style c t phn u ca mi hnh v nhng nu
bn mun tt c mi hnh v trong vn bn ca bn s dng chung mt Style th cn t
lnh \tikzset phn u ca vn bn tng t nh v d sau:
\begin{document}
\tikzset{help lines/ .style={step=0.5cm,color=blue,very thin}}
\begin{tikzpicture}
\draw[help lines] (0,0) - - (2,2);
\draw[help lines] (0,0) circle (1cm)
\end{tikzpicture}
\begin{tikzpicture}
\draw[help lines] (0,0) rectangle (1,2);
\draw[help lines] (0,0) grid (10pt,10pt)
\end{tikzpicture}
\end{document}
mc cao hn na, bn c th to h thng cc Style. Cc Style sau c th bao gm cc
Style trc.

V d:
\tikzset{help lines/.style=very thin}
\tikzset{Karls grid/.style={help lines, color=blue}}
...
\tikz \draw[Karls grid] (0,0) grid (5,5);
Vi s mm do trong vic chnh sa cc thng s nn cc Style rt hu dng. iu ny th
hin ch c th dng Style iu chnh mt thng s trong mt hnh v ring, trong khi
cc hnh v khc vn tun theo mc nh chung ca Style .
V d:
\tikzset{help lines/.style=ultra thick,step=0.5cm}
\tikzset{Karls grid/.style={help lines, color=#1!50}, Karls grid/.default=blue}
\tikz \draw[Karls grid] (0,0) grid (4,2);\hspace{2cm}
\tikz \draw[Karls grid=red] (0,0) grid (4,2);
Trong v d ny, Karl t thng s mu cho hnh li nn l blue vi mi hnh v nhng c
mt hnh v Karl mun mu ca hnh li nn l red do iu chnh thng s mu red
lnh \draw th hai.

1.1.9

Cc thng s ty chn v

Chng ta bit cc ty chn v mu sc (ty chn c), dy ca ng k (ty chn


width: ultra thin (0,1pt), very thin (0,2pt), thin (0,4pt), semithick (0,6pt), thick (0,8pt), very
thick(1.2pt), ultra thick (1.6pt)), ngoi ra cn c mt thng s quan trng na l loi ng
), nt chm
k bao gm: nt lin (ging nh chng ta v), nt t (dashed
(dotted
). Ring vi nt t (dashed) v nt chm (dotted) chng ta cng c hai
ty chn khc l loosely dashed, densely dashed v loosely dotted, densely dotted. Hy so snh
cc kiu ng theo th t: nt lin, nt t (dashed, loosely dashed, densely dashed), nt
chm (dotted, loosely dotted, densely dotted) trong v d sau:

1.1.10

V cung

Mt cung (arc) l mt phn ca ng trn hoc elip. Lnh v cung trn nh sau:
\draw (x,y) arc (a:b:r);

Trong : (x,y) l v tr bt u v; a, b l gi tr cc gc (n v l ); r l bn knh. Lnh


ny c th din gii nh sau: ti v tr (x,y) v mt cung trn c bn knh r t a ti b .
V d:
\begin{tikzpicture}
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\draw (3mm,0mm)arc (0:30:3mm);
\end{tikzpicture}
hnh v ln hn, Karl cn s dng ty chn scale=3. C th s dng ty chn ny cho
mi lnh \draw nhng nu mun tt c u ln gp 3 ln th tt nht l s dng ty chn
ny cho c mi trng tikzpicture.

\begin{tikzpicture}[scale=3]
\draw[step=.5cm,gray,very thin]
(-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\draw (3mm,0mm)arc (0:30:3mm);
\end{tikzpicture}

Tng t cung trn, v cung elip cn hai gi tr bn knh. V d:


\begin{tikzpicture}
\draw (0,0) arc (0:315:1.75cm and 1cm);
\end{tikzpicture}
C php lnh v cung elip nh sau:
\draw (x,y) arc (a:b:r1:r2);

1.1.11

Biu din mt phn ca hnh v

tit kim giy s l tt hn nu chng ta ch tp trung vo mt phn hnh cn v quan


tm. Biu din mt phn hnh v rt n gin vi Tik Z bng cch dng lnh \clip. Lnh
ny tng t nh lnh \draw nhng khc bit ch lnh \clip v mt hnh bao v h thng
s ch hin th nhng g trong hnh bao m thi.
9

V d:
Lnh \clip di y to ra mt hnh bao l hnh ch nht vi gc u tin l (-0,1,-0.2), gc
i din l (1.1, 0.75). Hnh v hin th sau khi bin dch bi LATEX l mt phn c ct
bi hnh bao y.
\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,0.75);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\draw (3mm,0mm) arc (0:30:3mm);
\end{tikzpicture}
iu th v l c th coi clip l thng s ty chn ca lnh draw hoc ngc li. ng thi
c clip v draw u l thng s ty chn ca lnh \path.
V d:
\clip[draw] ...
\draw[clip] ...
\path[clip] ...
\path[draw] ...
\path[clip,draw] ...
Chng ta dng draw lm thng s ty chn cho lnh \clip nh sau:
\begin{tikzpicture}[scale=3]
\clip[draw] (0.5,0.5) circle (0.6cm);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\draw (3mm,0mm) arc (0:30:3mm);
\end{tikzpicture}

1.1.12

V parabol, ng cong sin v cosin

Mc d hnh ca Karl khng cn v ton b ng cong sin, cosin hoc parabol nhng c
th dng lnh v mt phn cc loi ng cong ny.

\draw (0,0) rectangle (1,1) (0,0) parabola (1,1);

Chng ta cng c th v mt phn ng cong ti v tr bt k:

10

\draw[x=1pt,y=1pt] (0,0) parabola bend (4,16) (6,12);


M lnh sin v cos v mt ng cong sin v cos tng ng trong khong (0, /2) t ta
im u ti im kt thc ng cong. Di y l hai v d:
Mt ng cong sin
\draw[x=1ex,y=1ex] (0,0) sin (1.57,1);
v:
\draw[x=1.57ex,y=1ex] (0,0) sin (1,1) cos (2,0) sin (3,-1)
cos (4,0)(0,1) cos (1,0) sin (2,-1) cos (3,0) sin (4,1);

1.1.13

T mu v v lin nt

t mu xanh nht phn gc tm hnh v ca Karl, ta dng lnh \fill thay cho lnh
\draw. M lnh nh sau:

\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,0.75);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\fill[green!20!white] (0,0) -- (3mm,0mm)
arc (0:30:3mm) -- (0,0);
\end{tikzpicture}
Trong green!20!white c ngha 20% green + 80% white. Xem thm cch pha mu gi
xcolor ca Uwe Kern.
Trong m lnh trn, ti dng lnh cui ta s dng |(0,0)| kt thc ng v, s tt
hn nu ta thay th bng |cycle| v |cycle| c tc dng v lin nt khp kn t im u
n im cui. Hy so snh s khc bit sau:
\begin{tikzpicture}[line width=5pt]
\draw (0,0) -- (1,0) -- (1,1) -- (0,0);
\draw (2,0) -- (3,0) -- (3,1) -- cycle;
\useasboundingbox (0,1.5); % make bounding box higher
\end{tikzpicture}
Bn cng c th va v ng va t mu vi ch mt lnh l \filldraw, ban u s v ng
bao sau l t mu. Vi lnh ny chng ta c th dng mu t khc vi mu ca ng
v nh sau:

11

\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,0.75);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\filldraw[fill=green!20!white, draw=green!50!black]
(0,0) -- (3mm,0mm) arc (0:30:3mm) -- cycle;
\end{tikzpicture}

1.1.14

To hiu ng shading

to hiu ng shading (hiu ng bng m) c th dng 1 trong 2 lnh \shade hoc


\shadedraw vi mc nh bng m chuyn t mu gray sang mu white.
\begin{tikzpicture}[scale=1]
\tikz \shade (0,0) rectangle (2,1) (3,0.5) circle (.5cm);
\end{tikzpicture}
Nu mun dng mu khc th s dng tu chn mu:
\begin{tikzpicture}[rounded corners,ultra thick]
\shade[top color=yellow,bottom color=black]
(0,0) rectangle +(2,1);
\shade[left color=yellow,right color=black]
(3,0) rectangle +(2,1);
\shadedraw[inner color=yellow,outer color=black,draw=yellow]
(6,0) rectangle +(2,1);
\shade[ball color=green] (9,.5) circle (.5cm);
\end{tikzpicture}
To hiu ng shading ti phn cung mu xanh trong hnh v ca Karl nh sau:

\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,0.75);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\shadedraw[left color=gray,right color=green, draw=green!50!black]
(0,0) -- (3mm,0mm) arc (0:30:3mm) -- cycle;
\end{tikzpicture}

12

1.1.15

Xc nh to

v thm cc ng biu th sin v cos (2 ng thng mu xanh v ) trong hnh v


ca thy Karl tt nhin phi s dng tu chn color trong thit lp tu chn cho mu ca
ng thng nhng cch tt nht xc nh chnh xc to (v tr) ca ng thng ny
nh th no?
C nhiu cch xc nh v tr chnh xc v ng thng. Cch d nht l dng to
kiu nh (10pt, 2cm). iu ny c ngha 10pt hng x v 2cm hng y. C th b n
v, v d ch cn vit l (1,2) c ngha mt ln gi tr vc t x v 2 ln gi tr vc t y. Gi
tr mc nh ca cc vc t x v y u l 1 cm.
ch ra im c bit trong to cc, s dng k hiu (30:1cm) c ngha v tr ny
cch 1cm vi 30 tnh t phng ngang. iu ny rt hu ch khi ch ra to mt im
(cos 30 , sin 30 ) trn vng trn.
Khi thm du + trc to kiu nh +(1cm,0cm) hoc ++(0cm,2cm) c ngha l v tr
ny cch 1cm v pha trc ti v tr xc nh to v cch 2cm v bn phi ca v tr
to xc nh. V d:
\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,0.75);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\filldraw[fill=green!20,draw=green!50!black]
(0,0) -- (3mm,0mm) arc (0:30:3mm) -- cycle;
\draw[red,very thick] (30:1cm) -- +(0,-0.5);
\end{tikzpicture}
Mt cch xc nh v tr giao ca ng sin vi trc x l s dng c php (30:1cm
|- 0,0). Ngha ca c php (p |- q) l to ca im giao ca ng thng qua p v mt
ng ngang qua q.
v ng cos ta c th dng 1 trong 3 cch sau: cch 1 n gin nht v mt ng
thng t v tr tm hnh trn to (0,0) vi chiu di bng chiu di ca gi tr cos 30 =
0.866; cch 2 l t v tr giao ca ng sin vi trc x, ta v ng thng ni vi tm (0,0)
bng cch s dng c php (30:1cm |- 0,0) - - (0,0); cch 3 l tip tc v t v tr cui ca
ng sin (l v tr giao im trn) theo c php (30:1cm)++(0,-0.5) - - (0,0). Theo cch
th 3, trc tin gi tr (30:1cm) cho php ta a u bt v ti v tr cch 1cm cnh gc
30 sau di chuyn bt v ti v tr c bit (cos 30 ) m khng v g c. Cui cng l t
im cui ca ng sin ny v mt ng thng quay v v tr tm (0,0).

13

\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,0.75);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw (-1.5,0) -- (1.5,0);
\draw (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\filldraw[fill=green!20,draw=green!50!black] (0,0) -- (3mm,0mm)
arc (0:30:3mm) -- cycle;
\draw[red,very thick] (30:1cm) -- +(0,-0.5);
\draw[blue,very thick] (30:1cm) ++(0,-0.5) -- (0,0);
\end{tikzpicture}
Lu s khc bit gia cc k hiu + v ++.
Khi s dng k hiu ++
\begin{tikzpicture}
\def\rectanglepath
{-- ++(1cm,0cm) -- ++(0cm,1cm) -- ++(-1cm,0cm) -- cycle}
\draw (0,0) \rectanglepath;
\draw (1.5,0) \rectanglepath;
\end{tikzpicture}
V s dng k hiu +
\begin{tikzpicture}
\def\rectanglepath
{-- +(1cm,0cm) -- +(1cm,1cm) -- +(0cm,1cm) -- cycle}
\draw (0,0) \rectanglepath;
\draw (1.5,0) \rectanglepath;
\end{tikzpicture}
Hoc m lnh tt hn nn vit nh sau:
\tikz \draw (0,0) rectangle +(1,1) (1.5,0) rectangle +(1,1);

1.1.16

V cc ng giao nhau

v ng mu nu tan bt u ti v tr (1,0) v hng ln trn ti im giao ca n


vi ng thng t trc to qua im (30:1cm) trc ht cn to 2 name path khc nhau
sao cho 2 path ny giao nhau. Khi 2 path c to, ta s dng lnh \draw hoc lnh \fill
vi thng s name intersections nh sau:

14

\path [name path=upward line] (1,0) -- (1,1);


\path [name path=sloped line] (0,0) -- (30:1.5cm);
% di hn mt cht chc chn c im giao
\draw [name intersections={of=upward line and sloped line, by=x}]
[very thick,orange] (1,0) -- (x);

1.1.17

V mi tn

v mi tn hai trc to , ch cn thm tu chn -> trong lnh \draw


\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,1.51);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\draw[->] (-1.5,0) -- (1.5,0);
\draw[->] (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\filldraw[fill=green!20,draw=green!50!black]
(0,0) -- (3mm,0mm) arc (0:30:3mm) -- cycle;
\draw[red,very thick] (30:1cm) -- +(0,-0.5);
\draw[blue,very thick] (30:1cm) ++(0,-0.5) -- (0,0);
\path [name path=upward line] (1,0) -- (1,1);
\path [name path=sloped line] (0,0) -- (30:1.5cm);
\draw [name intersections=
{of=upward line and sloped line, by=x}]
[very thick,orange] (1,0) -- (x);
\end{tikzpicture}
V mi tn vi cc tu chn c th c ->, <- hoc <->. Hn th na, v cc u
mi tn c hnh dng khc nhau, c th s dng tu chn >=right arrow tip kind ca mi
trng tikzpicture. Cc right arrow tip kind l mt trong cc tu chn stealth, to, latex,
space (tham kho thm phn Arrow Tip Library trong pgf manual ). Tuyt vi hn na,
bn c th nh ngha kiu mi tn ca ring mnh.
\begin{tikzpicture}[>=stealth]
\draw [->] (0,0) arc (180:30:10pt);
\draw [<<-,very thick] (1,0) -- (1.5cm,10pt)
-- (2cm,0pt) -- (2.5cm,10pt);
\end{tikzpicture}

1.1.18

Mi trng Scope

Mi trng Scope cho php dng cc tu chn ring ch p dng v cc i tng nm


trong mi trng .

15

\begin{tikzpicture}[ultra thick]
\draw (0,0) -- (0,1);
\begin{scope}[thin]
\draw (1,0) -- (1,1);
\draw (2,0) -- (2,1);
\end{scope}
\draw (3,0) -- (3,1);
\end{tikzpicture}
Mi trng scope cn c tnh cht c bit: tu chn thay i c t bt k ch no trong
mi trng scope. Bi vy thay v vit \draw[thin] (0,0) - - (1,1) c th vit l \draw (0,0)
[thin] - - (1,1) hoc \draw (0,0) - - (1,1) [thin]. Nu dng hai tu chn khc nhau l [thin]
v [thick] th tu chn no ng cui cng s c p dng.

1.1.19

S thay i v tr

C mt s cch thay i v tr ca i tng v trong Tik Z. V d: tu chn xshift cho


php di chuyn tt c i tng v sau mt khong cch cho trc.
\tikz \draw (0,0) -- (0,0.5) [xshift=2pt] (0,0) -- (0,0.5);
Ch rng bn c th thc hin s thay i v tr gia dng lnh nh di y:
\begin{tikzpicture}[even odd rule,rounded corners=2pt,x=10pt,y=10pt]
\filldraw[fill=examplefill] (0,0) rectangle (1,1)
[xshift=5pt,yshift=5pt] (0,0) rectangle (1,1)
[rotate=30] (-1,-1) rectangle (2,2);
\end{tikzpicture}
Hai tu chn xshift v yshift rt hu ch trong vic xc nh s thay i v tr. Tu chn
rotate quay i tng v vi mt gc cho trc. Tu chn scale cho php phng to hay thu
nh i tng, c th thc hin theo hng x hoc y (xscale = -1 s lm i tng ln ngc).
Tu chn xslan, yslan to nghing cho i tng v. Nu cc tu chn ny cha
hiu qu bn hy th vi tu chn cm phc tp (c thm trong PGF manual tu chn cm)
\begin{tikzpicture}
\draw[help lines,step=.5cm,gray,very thin] (0,0) grid (3,2);
\draw (0,0) -- (1,1) -- (1,0);
\draw[cm={1,1,0,1,(0,0)},blue] (0,0) -- (1,1) -- (1,0);
\draw[cm={0,1,1,0,(1cm,1cm)},red] (0,0) -- (1,1) -- (1,0);
\end{tikzpicture}

16

1.1.20

Vng lp

to vng lp, dng lnh \f oreach


x = 1, x = 2, x = 3, \begin{tikzpicture}
\foreach \x in {1,2,3} {$x = \x,\; $ }
\end{tikzpicture}
C php ca lnh \f oreach l:
\f oreach <bin> in {danh sch gi tr} <cc lnh c cha bin>
Khi thc thi vng lp, cc lnh s c truyn danh sch gi tr qua bin. Ch : nu cc
lnh khng bt u bng du ngoc { th tt c nhng g trc du chm phy ; u c
s dng nh l cc lnh.
v cc khong n v trong h trc to hnh v ca Karl ta dng vng lp nh sau:
\begin{tikzpicture}[scale=3]
\clip (-0.1,-0.2) rectangle (1.1,1.51);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\filldraw[fill=green!20,draw=green!50!black]
(0,0) -- (3mm,0mm) arc (0:30:3mm) -- cycle;
\draw[->] (-1.5,0) -- (1.5,0);
\draw[->] (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\foreach \x in {-1cm,-0.5cm,1cm}
\draw (\x,-1pt) -- (\x,1pt);
\foreach \y in {-1cm,-0.5cm,0.5cm,1cm}
\draw (-1pt,\y) -- (1pt,\y);
\end{tikzpicture}
C nhiu m lnh v cc khong n v ti hai trc to . Mt cch khc l:
\foreach \x in {-1,-0.5,1}
\draw[xshift=\x cm] (0pt,-1pt) -- (0pt,1pt);
C th s dng lnh \f oreach theo cch sau khi c danh sch gi tr di:
\foreach \x in {1,...,10}
\draw (\x,0) circle (0.4cm);
Nu bn cung cp hai gi tr u tin, lnh lp ny s phn chia danh sch gi tr theo khong
ca hai gi tr u :
\foreach \x in {-1,-0.5,...,1}
\draw (\x cm,-1pt) -- (\x cm,1pt);

17

S dng lnh to vng lp c th lm c nhiu vic phc tp, v d sau y ch ra


cch s dng vng lp trong vng lp:
1,5

2,5

3,5

4,5

5,5

7,5

8,5

9,5 10,5 11,5 12,5

1,4

2,4

3,4

4,4

5,4

7,4

8,4

9,4 10,4 11,4 12,4

1,3

2,3

3,3

4,3

5,3

7,3

8,3

9,3 10,3 11,3 12,3

1,2

2,2

3,2

4,2

5,2

7,2

8,2

9,2 10,2 11,2 12,2

1,1

2,1

3,1

4,1

5,1

7,1

8,1

9,1 10,1 11,1 12,1

\foreach \x in {1,2,...,5,7,8,...,12}
\foreach \y in {1,...,5}
{
\draw (\x,\y) +(-.5,-.5) rectangle ++(.5,.5);
\draw (\x,\y) node{\x,\y};
}

1.1.21

Thm ch trong hnh v

Dng node thm ch trong hnh v.


Text 2

Text 1

\begin{tikzpicture}
\draw (-2,-2) rectangle (2.5,2.5);
\draw (0.5,0.5)
node [fill=examplefill, below=2pt]
{Text 1} -- (1.5,1.5)
node [fill=blue!20,above=2pt]{Text 2};
\end{tikzpicture}

Tt c cc node u c th dng trong cc lnh nh draw, filled, shared, clipped, . . .


Dng thm cc tu chn cho node nh archor = north, south, south east. Ngoi ra cn c
cc tu chn nh below = x pt; above = x pt xc nh v tr t node mt khong cch
tu chn l x pt.
1
Trong hnh v ca Karl, k t cn hin th l nhng lnh \f oreach ch hiu gi tr l 0.5,
2
1
khng th truyn theo tham tr . gii quyt vn ny, dng thm bin khc (xtext)
2
i km bin x trong lnh \f oreach. Hai bin (x v xtext) cch nhau bi mt gch cho (/).

18

Trong mi vng lp, lnh th nht c thc hin sau n lnh th hai. Nu khng
c lnh th 2 th lnh th nht s c lp li ngay.

1
1
2

12

\begin{tikzpicture}[scale=3]
\clip (-0.6,-0.2) rectangle (0.6,1.51);
\draw[step=.5cm,help lines] (-1.4,-1.4) grid (1.4,1.4);
\filldraw[fill=green!20,draw=green!50!black]
(0,0) -- (3mm,0mm) arc (0:30:3mm) -- cycle;
\draw[->] (-1.5,0) -- (1.5,0); \draw[->] (0,-1.5) -- (0,1.5);
\draw (0,0) circle (1cm);
\foreach \x/\xtext in {-1, -0.5/-\frac{1}{2}, 1}
\draw (\x cm,1pt) -- (\x cm,-1pt) node[anchor=north] {$\xtext$};
\foreach \y/\ytext in {-1, -0.5/-\frac{1}{2}, 0.5/\frac{1}{2}, 1}
\draw (1pt,\y cm) -- (-1pt,\y cm) node[anchor=east] {$\ytext$};
\end{tikzpicture}
1

Do node lun c v trong mt ch nht nn dng tu chn [fill = white] t mu


21 cho node v hnh ch nht mu trng s ln cc ng v trc .
nn trng
t dng text sin gia ca ng thng sin, phi vit node sin ti v tr ngay sau
lnh v - - trc to th 2 thay v ti v tr cui cng ca dng lnh draw. Theo mc nh
1lnh PGF, node sin c t gia ca ng thng sin nhng nu dng thm
ca gi
cc tu chn pos, near start, near end s iu chnh c v tr ca node theo mun.

19

1
1
2

tan =

sin
1

12

cos

sin
cos

12
\begin{tikzpicture}[scale=3]
\clip (-2,-0.2) rectangle (2,0.8);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
1
\filldraw[fill=green!20,draw=green!50!black]
(0,0) -- (3mm,0mm) arc
(0:30:3mm) -- cycle;
\draw[->] (-1.5,0) -- (1.5,0) coordinate (x axis);
\draw[->] (0,-1.5) -- (0,1.5) coordinate (y axis);
\draw (0,0) circle (1cm);
\draw[very thick,red]
(30:1cm) -- node[left=1pt,fill=white] {$\sin \alpha$} (30:1cm |- x axis);
\draw[very thick,blue]
(30:1cm |- x axis) -- node[below=2pt,fill=white] {$\cos \alpha$} (0,0);
\path [name path=upward line] (1,0) -- (1,1);
\path [name path=sloped line] (0,0) -- (30:1.5cm);
\draw [name intersections={of=upward line and sloped line, by=t}]
[very thick,orange] (1,0) -- node [right=1pt,fill=white]
{$\displaystyle \tan \alpha \color{black}=
\frac{{\color{red}\sin \alpha}}{\color{blue}\cos \alpha}$} (t);
\draw (0,0) -- (t);
\foreach \x/\xtext in {-1, -0.5/-\frac{1}{2}, 1}
\draw (\x cm,1pt) -- (\x cm,-1pt) node[anchor=north,fill=white] {$\xtext$};
\foreach \y/\ytext in {-1, -0.5/-\frac{1}{2}, 0.5/\frac{1}{2}, 1}
\draw (1pt,\y cm) -- (-1pt,\y cm) node[anchor=east,fill=white] {$\ytext$};
\end{tikzpicture}
Bn cng c th t v tr cc node text dc theo ng cong v iu chnh cong ca
node vi tu chn sloped, near start, very near end nh v d di y:
midway
near start
very
near
end
\begin{tikzpicture}
\draw (0,0) .. controls (6,1) and (9,1) ..
node[near start,sloped,above] {near start}
node {midway}
node[very near end,sloped,below] {very near end} (12,0);
\end{tikzpicture}
Phn cui cng l v mt node text mu hng bn phi i km hnh v ca Karl.
t c rng cn thit ca node, s dng tu chn text with=6cm. Ton b m lnh s l:
20

\begin{tikzpicture}
[scale=3,line cap=round,
% Styles
axes/.style=,
important line/.style={very thick},
information text/.style={rounded corners,fill=red!10,inner sep=1ex}]
% Local definitions
\def\costhirty{0.8660256}
% Colors
\colorlet{anglecolor}{green!50!black}
\colorlet{sincolor}{red}
\colorlet{tancolor}{orange!80!black}
\colorlet{coscolor}{blue}
% The graphic
\draw[help lines,step=0.5cm] (-1.4,-1.4) grid (1.4,1.4);
\draw (0,0) circle (1cm);
\begin{scope}[axes]
\draw[->] (-1.5,0) -- (1.5,0) node[right] {$x$};
\draw[->] (0,-1.5) -- (0,1.5) node[above] {$y$};
\foreach \x/\xtext in {-1, -.5/-\frac{1}{2}, 1}
\draw[xshift=\x cm] (0pt,1pt) -- (0pt,-1pt) node[below,fill=white] {$\xtext$};
\foreach \y/\ytext in {-1, -.5/-\frac{1}{2}, .5/\frac{1}{2}, 1}
\draw[yshift=\y cm] (1pt,0pt) -- (-1pt,0pt) node[left,fill=white] {$\ytext$};
\end{scope}
\filldraw[fill=green!20,draw=anglecolor] (0,0) -- (3mm,0pt) arc(0:30:3mm);
\draw (15:2mm) node[anglecolor] {$\alpha$};
\draw[important line,sincolor]
(30:1cm) -- node[left=1pt,fill=white] {$\sin \alpha$} +(0,-.5);
\draw[important line,coscolor]
(0,0) -- node[below=2pt,fill=white] {$\cos \alpha$} (\costhirty,0);
\draw[important line,tancolor] (1,0) -node [right=1pt,fill=white]
{
$\displaystyle \tan \alpha \color{black}=
\frac{{\color{sincolor}\sin \alpha}}{\color{coscolor}\cos \alpha}$
} (intersection of 0,0--30:1cm and 1,0--1,1) coordinate (t);
\draw (0,0) -- (t);
\draw[xshift=2cm] node [right,text width=6cm,information text]
{Gc {\color{anglecolor} $\alpha$} l $30^\circ$ trong v d ($\pi/6$ nu n v o l radian).
Gi tr {\color{sincolor}sin $\alpha$} l:
\[{\color{sincolor} \sin \alpha} = 1/2.\]
Theo nh l Pitago, ta c ${\color{coscolor}\cos^2 \alpha} +
{\color{sincolor}\sin^2\alpha} =1$.
Do di ca ng mu xanh l gi tr ca {\color{coscolor}cosin $\alpha$}, phi l
\[{\color{coscolor}\cos\alpha} = \sqrt{1 - 1/4} = \textstyle \frac{1}{2} \sqrt 3. \]%
iu ny cho ta di ng mu cam {\color{tancolor}$\tan \alpha$} c gi tr l
\[{\color{tancolor}\tan\alpha} = \frac{{\color{sincolor}\sin \alpha}}
{\color{coscolor}\cos \alpha} = 1/\sqrt 3.\] };
\end{tikzpicture}

21

También podría gustarte