Класс Canvas

Исходный код

Наследует классу Widget.

Реализует виджет холста.

Методы:

__init__

Сигнатура:

__init__(self,
         bg_color: tuple[int ,int, int] = (255, 255, 255),
         outline_color: tuple[int, int, int] = (255, 255, 255),
         name: str = ''
        )

Аргументы:

  • bg_color - цвет фона холста;
  • outline_color - цвет обводки холста;
  • name - имя виджета.

delete

Сигнатура:

delete(self, obj: int)

Удаляет указаный объект.

Аргументы:

  • obj - ID объекта, подлежащего удалению.

draw_circle

Сигнатура:

draw_circle(self, x: int, y: int, radius: int,
            color: tuple[int, int, int] = (0, 0, 0)) -> int

Добавляет круг.

Аргументы:

  • x - координата x круга;
  • y - координата y круга;
  • radius - радиус круга;
  • color - цвет круга.

Возвращает:

ID нового объекта.


draw_image

Сигнатура:

draw_image(self, file_name: str, x: int, y: int) -> int

Добавляет изображение.

Аргументы:

  • file_name - имя файла изображения;
  • x - координата x изображения;
  • y - координата y изображения.

Возвращает:

ID нового объекта.


draw_line

Сигнатура:

draw_line(self, x1: int, y1: int, x2: int, y2: int,
          color: tuple[int, int, int] = (0, 0, 0),
          width: int = 1
         ) -> int

Добавляет линию.

Аргументы:

  • x1 - координата x начала линии;
  • y1 - координата y начала линии;
  • x2 - координата x конца линии;
  • y2 - координата y конца линии;
  • color - цвет линии;
  • width - толщина линии.

Возвращает:

ID нового объекта.


draw_point

Сигнатура:

draw_point(self, x: int, y: int,
           color: tuple[int, int, int] = (0, 0, 0)) -> int

Добавляет точку.

Аргументы:

  • x - координата x точки;
  • y - координата y точки;
  • color - цвет точки.

Возвращает:

ID нового объекта.


draw_polygon

Сигнатура:

draw_polygon(self, coordinates: collections.abc.Sequence[tuple[int, int]],
             color: tuple[int, int, int] = (0, 0, 0)) -> int

Добавляет многоугольник.

Аргументы:

  • coordinates - последовательность кортежей с координатами вершин многоугольника;
  • color - цвет многоугольника.

Возвращает:

ID нового объекта.


draw_rect

Сигнатура:

draw_rect(self, x: int, y: int, width: int, height: int,
          color: tuple[int, int, int] = (0, 0, 0)) -> int

Добавляет прямоугольник.

Аргументы:

  • x - координата x прямоугольника;
  • y - координата y прямоугольника;
  • width - ширина прямоугольника;
  • height - высота прямоугольника;
  • color - цвет прямоугольника.

Возвращает:

ID нового объекта.


draw_text

Сигнатура:

draw_text(self, text: str, x: int, y: int, font_size: int,
          color: tuple[int, int, int] = (0, 0, 0),
          font: str | None = None
         ) -> int

Добавляет текст.

Аргументы:

  • text - надпись;
  • x - координата x текста;
  • y - координата y текста;
  • font_size - размер шрифта текста;
  • color - цвет прямоугольника;
  • font - имя файла со шрифтом.

Возвращает:

ID нового объекта.


move

Сигнатура:

move(self, obj: int, x: int, y: int)

Двигает указанный объект.

Аргументы:

  • obj - ID объекта;
  • x - растояние передвижения по x;
  • y - растояние передвижения по y.

save_to_file

Сигнатура:

save_to_file(self, file_name: str)

Сохраняет холст в файл.

Аргументы:

  • file_name - имя файла для сохранения.