Графикалық операторлар
Графикалық операторлар

#1 слайд
Графикалық операторлар
Информатика және есептеуіш
техника негіздері
8 сынып
1 слайд
Графикалық операторлар Информатика және есептеуіш техника негіздері 8 сынып
#2 слайд
Координаталар жүйесі
(0,0
)
(x,y
)
X
Y
x
y
2 слайд
Координаталар жүйесі (0,0 ) (x,y ) X Y x y
#3 слайд
Түстерді басқару
Cызықтың түсі мен қалыңдығы, нүктелердің түсі:
Pen ( 1, 255, 0, 0 );
Бояудың түсі мен стилі:
Brush ( 1, 0, 255, 0 );
Мәтін түсі:
TextColor ( 0, 0, 255 );
сызықтың
қалыңдығ
ы
R(red)
0..25
5
G(green
)
0..255
B(blue)
0..255
0 – өшіру
1 - қосу
R G B
R G B
3 слайд
Түстерді басқару Cызықтың түсі мен қалыңдығы, нүктелердің түсі: Pen ( 1, 255, 0, 0 ); Бояудың түсі мен стилі: Brush ( 1, 0, 255, 0 ); Мәтін түсі: TextColor ( 0, 0, 255 ); сызықтың қалыңдығ ы R(red) 0..25 5 G(green ) 0..255 B(blue) 0..255 0 – өшіру 1 - қосу R G B R G B
#4 слайд
Нүктелер, кесінділер және қисық
сызықтар
(x
1
,
y
1
)
(x
2
,
y
2
)
Pen (1, 0, 255, 0);
Line (x1, y1, x2, y2) ;
(x, y) Pen (1, 0, 0, 255);
Point (x, y);
(x
1
,
y
1
)
(x
2
,
y
2
)
(x
3
,
y
3
)
(x
4
,
y
4
)
(x
5
,
y
5
)
Pen (1, 255, 0, 0);
MoveTo (x1, y1);
LineTo (x2, y2);
LineTo (x3, y3);
LineTo (x4, y4);
LineTo (x5, y5);
4 слайд
Нүктелер, кесінділер және қисық сызықтар (x 1 , y 1 ) (x 2 , y 2 ) Pen (1, 0, 255, 0); Line (x1, y1, x2, y2) ; (x, y) Pen (1, 0, 0, 255); Point (x, y); (x 1 , y 1 ) (x 2 , y 2 ) (x 3 , y 3 ) (x 4 , y 4 ) (x 5 , y 5 ) Pen (1, 255, 0, 0); MoveTo (x1, y1); LineTo (x2, y2); LineTo (x3, y3); LineTo (x4, y4); LineTo (x5, y5);
#5 слайд
Фигуралардың ішін бояу
(x
1
,
y
1
)
(x
2
,
y
2
)
Pen (1, 0, 0, 255);
Brush (1, 255, 255, 0);
Rectangle (x1, y1, x2, y2);
(x
1
,
y
1
)
(x
2
,
y
2
)
Pen (1, 255, 0, 0);
Brush (1, 0, 255, 0);
Ellipse (x1, y1, x2, y2);
Brush (1, 100, 200, 255);
Fill (x, y);
(x,
y)
5 слайд
Фигуралардың ішін бояу (x 1 , y 1 ) (x 2 , y 2 ) Pen (1, 0, 0, 255); Brush (1, 255, 255, 0); Rectangle (x1, y1, x2, y2); (x 1 , y 1 ) (x 2 , y 2 ) Pen (1, 255, 0, 0); Brush (1, 0, 255, 0); Ellipse (x1, y1, x2, y2); Brush (1, 100, 200, 255); Fill (x, y); (x, y)
#6 слайд
Мәтін
TextColor (0, 0, 255);
Brush (1, 255, 255, 0);
Font (20, 30, 600);
MoveTo (x, y);
writeln (‘Салем!');
Сәлем!
(x,
y)
өлшемі
20
пиксель
айналу
бұрышы
қанықтылық:
400 – қалыпты
600 – қалың
30
о
6 слайд
Мәтін TextColor (0, 0, 255); Brush (1, 255, 255, 0); Font (20, 30, 600); MoveTo (x, y); writeln (‘Салем!'); Сәлем! (x, y) өлшемі 20 пиксель айналу бұрышы қанықтылық: 400 – қалыпты 600 – қалың 30 о
#7 слайд
Мысал
(200, 50)
(100,
100)
(300,
200)
program qq;
begin
Pen(2, 255, 0, 255);
Brush(1, 0, 0, 255);
Rectangle(100, 100, 300, 200);
MoveTo(100, 100);
LineTo(200, 50);
LineTo(300, 100);
Brush(1, 255, 255, 0);
Fill(200, 75);
Pen(2, 255, 255, 255);
Brush(1, 0, 255, 0);
Ellipse(150, 100, 250, 200);
end.
7 слайд
Мысал (200, 50) (100, 100) (300, 200) program qq; begin Pen(2, 255, 0, 255); Brush(1, 0, 0, 255); Rectangle(100, 100, 300, 200); MoveTo(100, 100); LineTo(200, 50); LineTo(300, 100); Brush(1, 255, 255, 0); Fill(200, 75); Pen(2, 255, 255, 255); Brush(1, 0, 255, 0); Ellipse(150, 100, 250, 200); end.
#8 слайд
Rectangle (x1, y1, x2, y2);
Line( x1+h, y1, x1+h, y2) ;
Line( x1+2*h, y1, x1+2*h, y2) ;
Line( x1+3*h, y1, x1+3*h, y2) ;
...
Штрихтер салу
(x
1
,
y
1
)
(x
2
,
y
2
)
N сызық (N=5)
h
1
12
N
xx
h
h := (x2 – x1) / (N + 1);
Rectangle (x1, y1, x2, y2);
x := x1 + h;
for i:=1 to N do begin
Line( round(x), y1, round(x), y2) ;
x := x + h;
end;
var x, h: real;
x
жақын орналасқан
бүтін санға дейін
дөңгелектеу
x
8 слайд
Rectangle (x1, y1, x2, y2); Line( x1+h, y1, x1+h, y2) ; Line( x1+2*h, y1, x1+2*h, y2) ; Line( x1+3*h, y1, x1+3*h, y2) ; ... Штрихтер салу (x 1 , y 1 ) (x 2 , y 2 ) N сызық (N=5) h 1 12 N xx h h := (x2 – x1) / (N + 1); Rectangle (x1, y1, x2, y2); x := x1 + h; for i:=1 to N do begin Line( round(x), y1, round(x), y2) ; x := x + h; end; var x, h: real; x жақын орналасқан бүтін санға дейін дөңгелектеу x
#9 слайд
Түсті қалай өзгертуге болады?
(x
1
,
y
1
)
(x
2
,
y
2
)
Brush ( 1, c, c, c );
Fill ( ???, ??? );
сұр: R = G = B
Өзгеру қадамы c:
1
255
N
h
c
x
(x-1,
y
1
+1)
var c, hc: integer;
hc := 255 div (N + 1);
c := 0;
for i:=1 to N+1 do begin
Line (round(x), y1, round(x), y2) ;
Brush (1, c, c, c);
Fill (round(x)-1, y1+1);
x := x + h; c := c + hc;
end;
9 слайд
Түсті қалай өзгертуге болады? (x 1 , y 1 ) (x 2 , y 2 ) Brush ( 1, c, c, c ); Fill ( ???, ??? ); сұр: R = G = B Өзгеру қадамы c: 1 255 N h c x (x-1, y 1 +1) var c, hc: integer; hc := 255 div (N + 1); c := 0; for i:=1 to N+1 do begin Line (round(x), y1, round(x), y2) ; Brush (1, c, c, c); Fill (round(x)-1, y1+1); x := x + h; c := c + hc; end;
#10 слайд
Штрихтер салу
(x
1
,
y
1
)
(x
2
,
y
2
)
(x
3
,
y
2
)
a
h
1
23
N
xx
h
21xxa
(x
3
+a,
y
1
)
Line( x1+h, y1, x1+h-a, y2) ;
Line( x1+2*h, y1, x1+2*h-a, y2) ;
Line( x1+3*h, y1, x1+3*h-a, y2) ;
...
h := (x3 – x2) / (N + 1);
a := x1 – x2;
x := x1 + h;
for i:=1 to N do begin
Line( round(x), y1, round(x-a), y2) ;
x := x + h;
end;
x x-a
10 слайд
Штрихтер салу (x 1 , y 1 ) (x 2 , y 2 ) (x 3 , y 2 ) a h 1 23 N xx h 21xxa (x 3 +a, y 1 ) Line( x1+h, y1, x1+h-a, y2) ; Line( x1+2*h, y1, x1+2*h-a, y2) ; Line( x1+3*h, y1, x1+3*h-a, y2) ; ... h := (x3 – x2) / (N + 1); a := x1 – x2; x := x1 + h; for i:=1 to N do begin Line( round(x), y1, round(x-a), y2) ; x := x + h; end; x x-a
#11 слайд
(x
1
,
y
1
)
(x
2
,
y
2
)
h
x
h
y
y x y
Line( x1, y1+hy, x1+hx,
y1+hy) ;
Line( x1, y1+2*hy, x1+2*hx,
y1+2*hy);
Line( x1, y1+3*hy, x1+3*hx,
y1+3*hy);
...
1
12
N
xx
h
x
1
12
N
yy
h
y
hx := (x2 – x1) / (N + 1);
hy := (y2 – y1) / (N + 1);
x := x1 + hx; y := y1 + hy;
for i:=1 to N do begin
Line( x1, round(y), round(x), round(y)) ;
x := x + hx; y := y + hy;
end;
11 слайд
(x 1 , y 1 ) (x 2 , y 2 ) h x h y y x y Line( x1, y1+hy, x1+hx, y1+hy) ; Line( x1, y1+2*hy, x1+2*hx, y1+2*hy); Line( x1, y1+3*hy, x1+3*hx, y1+3*hy); ... 1 12 N xx h x 1 12 N yy h y hx := (x2 – x1) / (N + 1); hy := (y2 – y1) / (N + 1); x := x1 + hx; y := y1 + hy; for i:=1 to N do begin Line( x1, round(y), round(x), round(y)) ; x := x + hx; y := y + hy; end;
#12 слайд
Функция графиктерін құру
Есеп:
0 мен 2π интервалы арасындағы y = 3 sin(x) функциясының
графигін құру.
Анализ:
x = π/2 болғанда максималды мән y
max
= 3
x = 3π/2 болғанда минималды мән y
min
= -3
Мәселе: функция координалардың
математикалық жүйесінде көрсетілген, ал
графикті координаталарын пиксельдермен
көрсете отырып компьютер экранында
шығару керек.
12 слайд
Функция графиктерін құру Есеп: 0 мен 2π интервалы арасындағы y = 3 sin(x) функциясының графигін құру. Анализ: x = π/2 болғанда максималды мән y max = 3 x = 3π/2 болғанда минималды мән y min = -3 Мәселе: функция координалардың математикалық жүйесінде көрсетілген, ал графикті координаталарын пиксельдермен көрсете отырып компьютер экранында шығару керек.
#13 слайд
Координаталардың түрленуі
Координаталардың математикалық
жүйесі
(x,y
)
X
Y
x
y
(0,0)
k – масштаб (экрандағы
жекелеген кесінді кескінінің
ұзындығы)
13 слайд
Координаталардың түрленуі Координаталардың математикалық жүйесі (x,y ) X Y x y (0,0) k – масштаб (экрандағы жекелеген кесінді кескінінің ұзындығы)
#14 слайд
Координаталардың экрандық
жүйесі (пиксельдер )
(x
э
,y
э
)
x
э
y
э
(0,0)
a
b
x
э
= a + kx
y
э
= b - ky
14 слайд
Координаталардың экрандық жүйесі (пиксельдер ) (x э ,y э ) x э y э (0,0) a b x э = a + kx y э = b - ky
#15 слайд
Программа
2π
h – x-тің өзгеру
қадамы
w – ОХ осінің
ұзындығы(пиксельд
ер саны)
экранда
координаталар
осі
графиктің
құрылу
циклі
program qq;
const a = 50; b = 200; k = 50;
xmin = 0; xmax = 6.2832;
var x, y, h: real;
xe, ye, w: integer;
begin
w := round((xmax - xmin)*k);
Line(a-10, b, a+w, b);
Line(a, 0, a, 2*b);
x := xmin; h := 0.05;
while x <= xmax do begin
y := 3*sin(x);
xe := a + round(k*x);
ye := b - round(k*y);
Point (xe, ye);
x := x + h;
end;
end. Кемшілігі ??
15 слайд
Программа 2π h – x-тің өзгеру қадамы w – ОХ осінің ұзындығы(пиксельд ер саны) экранда координаталар осі графиктің құрылу циклі program qq; const a = 50; b = 200; k = 50; xmin = 0; xmax = 6.2832; var x, y, h: real; xe, ye, w: integer; begin w := round((xmax - xmin)*k); Line(a-10, b, a+w, b); Line(a, 0, a, 2*b); x := xmin; h := 0.05; while x <= xmax do begin y := 3*sin(x); xe := a + round(k*x); ye := b - round(k*y); Point (xe, ye); x := x + h; end; end. Кемшілігі ??
#16 слайд
Нүктелерді қалай біріктіруге
болады?
Алгоритм:
Егер бірінші нүкте болса
(x
э
,y
э
) нүктесіне өту
әйтпесе
(x
э
,y
э
) нүктесіне кесінді
16 слайд
Нүктелерді қалай біріктіруге болады? Алгоритм: Егер бірінші нүкте болса (x э ,y э ) нүктесіне өту әйтпесе (x э ,y э ) нүктесіне кесінді
#17 слайд
Программа:
бастапқы мәнбастапқы мән
әрекеттерд
ің нұсқасын
таңдау
әрекеттерд
ің нұсқасын
таңдау
логикалық
айнымалы
логикалық
айнымалы
var first: boolean;
...
begin
...
first := True;
while x <= xmax do begin
...
if first then begin
MoveTo(xe, ye);
first := False;
end
else LineTo(xe, ye);
...
end;
end.
17 слайд
Программа: бастапқы мәнбастапқы мән әрекеттерд ің нұсқасын таңдау әрекеттерд ің нұсқасын таңдау логикалық айнымалы логикалық айнымалы var first: boolean; ... begin ... first := True; while x <= xmax do begin ... if first then begin MoveTo(xe, ye); first := False; end else LineTo(xe, ye); ... end; end.
шағым қалдыра аласыз













