Найти тему
SamAlex

Tkinter часть 10. Canvas и его методы. Метод «creat_oval» и метод «creat_arc».

Здравствуйте подписчики, и гости моего канала. Продолжаю изучать модуль Tkinter в предыдущих частях разобрали:

Tkinter часть 1 начало;

Tkinter часть 2 Button кнопки;

Tkinter часть 3 Label метка;

Tkinter часть 4 Entry однострочное текстовое поле;

Tkinter часть 5 Упаковщик pack();

Tkinter часть 6 Метод grid();

Tkinter часть 7 Метод place();

Tkinter часть 8 Canvas и метод creat_line();

Tkinter часть 9 Canvas и методы. Метод creat_polygon и метод creat_rectangle.

Python Tkinter GUI
Python Tkinter GUI

Сегодня хочу рассмотреть методы «creat_oval» и «creat_arc». Первый служит для создания эллипсов. А второй более сложных фигур: сектор, сегмент, дуга.

create_oval() –данный метод позволяет рисовать эллипсы и круги. В него передаются координаты точек предполагаемого прямоугольника, описывающего эллипс. Пары координат можно передавать через запятую (50, 50, 250, 150) или для удобства пары координат можно заключать в скобки ((150, 150), (300, 300)).

Нарисовали эллипс и круг
Нарисовали эллипс и круг

В первом случае нарисовали эллипс, а во втором круг.

Метод кроме координат, так же как и ранее рассмотренные методы может принимать дополнительные параметры:

width – ширина линии (установим 7 пикселей);

fill – цвет фигуры (установим blue);

activefill – цвет фигуры при наведении курсора мыши (установим red);

outline – цвет контура фигуры (установим green);

activeoutline – цвет контура фигуры при наведении курсора мыши (установим black)

Наш круг получился синего цвета с зеленым контуром шириной 7 пикселей, при наведении на него курсором мышки цвет заливки меняется на красный цвет, а контур на черный цвет.

Навели курсор мышки на круг
Навели курсор мышки на круг

create_arc() – применяется для создания секторов, сегментов и дуг. Метод принимает две пары координат. А так же параметры «style», «start» и «extent». В зависимости от значения параметра «style» получается один из вышеперечисленных объектов. По умолчанию это сектор, при значении «CHORD» это сегмент, а при значении «ARC» дуга. Так же как и в методе «create_oval» по координатам рисуется эллипс или круг, вписанный в предполагаемый прямоугольник. Параметр «start» отвечает за градус начала фигуры. Начало 00 находится на 3-х часах и увеличиваются против часовой стрелки. Параметр «extent» определяет угол поворота, может принимать отрицательное значение.

Градусная сетка
Градусная сетка

Метод «create_arc» так же как и «create_oval» может принимать параметры визуального отображения, они абсолютно такие же, как и в предыдущем примере.

Для примера создадим окружность и в ней нарисуем три сектора. Первый из 0 – го градуса и +30 градусов, закрасим его синим цветом. Второй из 180 – го градуса и – 60 градусов, закрасим его зеленым цветом. И третий сектор из 270 – го градуса и + 10 градусов и закрасим его красный.

Нарисовали сектора
Нарисовали сектора

Удалим наши сектора и за место них создадим три сегмента. Для этого дополнительно передадим параметр «style» со значение «CHORD». Первый из 0 – го градуса и +60 градусов, закрасим его синим цветом. Второй из 180 – го градуса и – 110 градусов, закрасим его зеленым цветом. И третий сегмент из 270 – го градуса и + 10 градусов и закрасим его красный.

Нарисовали сегменты
Нарисовали сегменты

Удалим сегменты и создадим дуги. Для этого передадим в параметр «style» значение «ARC». Первую из 0 – го градуса и +60 градусов, синего цвета. Вторую из 180 – го градуса и – 110 градусов, зеленого цвета. И третью дугу из 270 – го градуса и + 10 градусов, красного цвета.

Нарисовали дуги
Нарисовали дуги

А на этом все.

Спасибо за внимание.

Продолжение следует.

Всегда актуальное МЕНЮ моего канала находится ТУТ!!!