Search Header Logo
flyingBall

flyingBall

Assessment

Presentation

Computers

1st Grade

Hard

Created by

Edukoht Edukohter

Used 5+ times

FREE Resource

58 Slides • 0 Questions

1

flyingBall

Slide image

2

Всегда с нами

Slide image

3

Уже умеем

Сегодня мы познакомимся с новым тегом «canvas». Данный тег позволяет нам рисовать и отрисовывать 2d фигуры/картинки.

4

Уже умеем

Создай элемент тег «canvas» в элемент «body».

5

Slide image


6

Цвета

Slide image

7

Уже умеем

Обратись к элементу «body» и укажи у него свойства:

text-align:center;

 padding: 0px;

 margin: 0px;

8

Slide image


9

Уже умеем

Обратись к элементу «canvas» и укажи у него свойства:

 border: 1px solid black;

10

Slide image


11

Самое страшное впереди

Slide image

12

Уже умеем

Создай переменную «canv» и присвой ей выбранный элемент «canvas»

13

Slide image


14

Что-то новое

canv.getContext("2d") - конструкция, которая создаст супер объект, у которого мы сможем вызывать методы для рисования на нашем холсте.

15

Что-то новое

Создай переменную «c» и присвой ей конструкцию: canv.getContext("2d");

16

Slide image


17

Что-то новое

Напиши конструкции:

canv.width = window.innerWidth;

canv.height = window.innerHeight;

18

Как получить или установить ширину/высоту canvas?

Вызов параметра «width» или «height» у переменной, где хранится элемент canvas, обеспечит такую функциональность.


Посмотри на пример на следующем сладе, чтобы лучше понять :)

19

web page not embeddable
widthAndHeightEx - Replit

widthAndHeightEx - Replit

You can open this webpage in a new tab.

20

Как получить ширину/высоту экрана, где находится наш сайт?

Вызов параметра «innerWidth» или «innerHeight» у элемента «window» помогут нам получить высоту или ширину окна.

21

web page not embeddable
widthAndHeightOfTheWindow - Replit

widthAndHeightOfTheWindow - Replit

You can open this webpage in a new tab.

22

Slide image


23

Что-то новое

Создай переменную «circleX» и присвой ей значение больше 50

24

Slide image


25

Что-то новое

Создай переменную «circleY» и присвой ей значение больше 50

26

Slide image


27

Что-то новое

Создай переменную «speedX» и присвой ей значение больше 1

28

Slide image


29

Что-то новое

Создай переменную «speedY» и присвой ей значение больше 1

30

Slide image


31

Что-то новое

Создай переменную «circleRadius» и присвой ей значение от 50

32

Slide image


33

Что-то новое

Создай конструкцию «setInterval» с параметрами: function(){}, 10

34

Slide image


35

Как рисовать прямоугольник в Canvas?

Конструкции: c.fillRect() и c.rect()

Позволяют нам отрисовать прямоугольник.

Посмотри на пример на следующем слайде, чтобы лучше понять данные конструкции.

36

web page not embeddable
rectangleInCanvas - Replit

rectangleInCanvas - Replit

You can open this webpage in a new tab.

37

Что такое c.fillStyle?

Данная конструкция устанавливает цвет заливки элементов.

PS: когда ты установил какой-то цвет заливки, то все элементы после конструкции c.fillStyle будут залиты именно в этот оттенок.

Если ты хочешь сменить цвет, то тебе нужно еще раз вызвать конструкцию «c.fillStyle» и установить цвет.


Посмотри на пример на следующем слайде, чтобы лучше понять данную конструкцию.

38

web page not embeddable
fillStyle - Replit

fillStyle - Replit

You can open this webpage in a new tab.

39

Что-то новое

Внутри функции у конструкции «setInterval» создай конструкции:

c.fillStyle = "rgba(0,0,0,0.04)";

c.fillRect(0,0, canv.width, canv.height);

40

Slide image


41

Что такое c.fill() ?

Данная конструкция заливает элемент, который стоит до нее в цвет, установленный в конструкции «c.fillStyle»

PS: у некоторых элементов просто нет совмещенного метода отрисовки и заливки элемента ( c.fillRect() ). К примеру круг мы не можем создать и залить с помощью конструкции c.fillArc()

Ее просто нет :(

Посмотри на пример на следующем слайде, чтобы лучше понять данную конструкцию.

42

web page not embeddable
fillConstruction - Replit

fillConstruction - Replit

You can open this webpage in a new tab.

43

Что-то новое

Внутри функции у конструкции «setInterval» создай конструкции:

c.fillStyle = "red";

 c.fill();

c.beginPath();

44

Slide image


45

Что-то новое

После этого добавляем:

c.beginPath();

c.arc(circleX, circleY, circleRadius, 0, 2 * Math.PI);

c.stroke();

46

Slide image

47

Что-то новое

Создай if-блок и укажи у него вот такое условие:

circleX+circleRadius > canv.width || circleX-circleRadius < 0

48

Slide image


49

Что-то новое

Если условие верно, то присвой переменной «speedX» значение

-speedX

PS: -speedX. В этой конструкции у нас минус.

50

Slide image


51

Что-то новое

Выйди из if-блока.

Создай еще один if-блок и укажи у него вот такое условие:

circleY+circleRadius > canv.height || circleY-circleRadius < 0

52

Slide image


53

Что-то новое

Если условие верно, то присвой переменной «speedY» значение

-speedY

PS: -speedY. В этой конструкции у нас минус.

54

Slide image


55

Что-то новое

Выйди из if-блока. Создай внутри функции конструкции «setInterval» конструкцию для увеличения переменной «circleX» на переменную «speedX»

56

Slide image


57

Что-то новое

После этого создай конструкцию для увеличения переменной «circleY» на переменную «speedY»

58

Slide image

flyingBall

Slide image

Show answer

Auto Play

Slide 1 / 58

SLIDE