- pygame.draw
-
модуль pygame для рисования фигур
Рисует несколько простых фигур на поверхности. Эти функции будут работать для рендеринга на любой поверхности.
Большинство функций принимают аргумент width для представления размера штриха (толщины) по краю фигуры. Если передано значение width равное 0, фигура будет залита (сплошная).
Все функции рисования учитывают область обрезки для поверхности и будут ограничены этой областью. Функции возвращают прямоугольник, представляющий границу области измененных пикселей. Этот прямоугольник является минимальной ограничивающей рамкой, охватывающей затронутую область.
Все функции рисования принимают аргумент color, который может быть одного из следующих форматов:
объект
pygame.Colorтройка
(RGB)(кортеж/список)четверка
(RGBA)(кортеж/список)целочисленное значение, которое было сопоставлено с форматом пикселей поверхности (см.
pygame.Surface.map_rgb()иpygame.Surface.unmap_rgb())
Значение альфа канала цвета будет записано непосредственно в поверхность (если поверхность содержит альфа каналы пикселей), но функция рисования не будет рисовать прозрачно.
Эти функции временно блокируют поверхность, на которой они работают. Многочисленные последовательные вызовы рисования могут быть ускорены блокировкой и разблокировкой объекта поверхности вокруг вызовов рисования (см.
pygame.Surface.lock()иpygame.Surface.unlock()).Примечание
См. модуль
pygame.gfxdrawдля альтернативных методов рисования.- pygame.draw.rect()
-
рисование прямоугольникаrect(surface, color, rect) -> Rectrect(surface, color, rect, width=0, border_radius=0, border_top_left_radius=-1, border_top_right_radius=-1, border_bottom_left_radius=-1, border_bottom_right_radius=-1) -> Rect
Рисует прямоугольник на заданной поверхности.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или кортеж(int, int, int, [int])) -- цвет для рисования, значение альфа канала необязательно, если используется кортеж
(RGB[A])rect (Rect) -- прямоугольник для рисования, положение и размеры
-
width (int) --
(необязательно) используется для толщины линии или для указания, что прямоугольник должен быть залитым (не путать со значением width параметра
rect)еслиwidth == 0, (по умолчанию) заполнить прямоугольникеслиwidth > 0, используется для толщины линииеслиwidth < 0, ничего не будет нарисованоИзменено в pygame 2.1.1: Рисование прямоугольников с шириной теперь правильно рисует ширину внутри области прямоугольника, а не использует внутренний вызов draw.lines(), у которого половина ширины выходила за пределы области прямоугольника.
border_radius (int) -- (необязательно) используется для рисования прямоугольника с закругленными углами. Поддерживаемый диапазон - [0, min(высота, ширина) / 2], где 0 соответствует прямоугольнику без закругленных углов.
border_top_left_radius (int) -- (необязательно) используется для установки значения левого верхнего угла. Если не задано, будет использовано значение border_radius.
border_top_right_radius (int) -- (необязательно) используется для установки значения правого верхнего угла. Если не задано, будет использовано значение border_radius.
border_bottom_left_radius (int) -- (необязательно) используется для установки значения левого нижнего угла. Если не задано, будет использовано значение border_radius.
-
border_bottom_right_radius (int) --
(необязательно) используется для установки значения правого нижнего угла. Если не задано, будет использовано значение border_radius.
еслиborder_radius < 1будет нарисован прямоугольник без закругленных угловесли любое из радиусов имеет значение< 0будет использовано значение border_radiusЕсли сумма радиусов с одной стороны прямоугольника больше размера прямоугольника,радиусы будут масштабироваться
- Возвращает
-
прямоугольник, ограничивающий измененные пиксели, если ничего не нарисовано, позиция прямоугольника будет позицией указанного
rectпараметра, а его ширина и высота будут 0 - Тип возвращаемого значения
Примечание
Метод
pygame.Surface.fill()так же хорошо подходит для рисования заполненных прямоугольников и может быть ускорен на аппаратном уровне на некоторых платформах.Изменено в pygame 2.0.0: Добавлена поддержка ключевых аргументов.
Изменено в pygame 2.0.0.dev8: Добавлена поддержка радиуса угла.
- pygame.draw.polygon()
-
рисование многоугольникаpolygon(surface, color, points) -> Rectpolygon(surface, color, points, width=0) -> Rect
Рисует многоугольник на заданной поверхности.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или кортеж(int, int, int, [int])) -- цвет для рисования, значение альфа канала необязательно, если используется кортеж
(RGB[A])points (кортеж(координата) или список(координата)) -- последовательность из 3 или более (x, y) координат, образующих вершины многоугольника, каждая координата в последовательности должна быть кортежом/списком/
pygame.math.Vector2из 2 целых/вещественных чисел, например[(x1, y1), (x2, y2), (x3, y3)]-
width (int) --
(необязательно) используется для толщины линии или для указания, что многоугольник должен быть заполнен
если width == 0, (по умолчанию) заполнить многоугольникесли width > 0, используется для толщины линииесли width < 0, ничего не будет нарисованоПримечание
При использовании
widthзначений> 1, линии края будут расширяться за пределы первоначальной границы многоугольника. Более подробную информацию о том, как толщина линий края расширяется, см. в примечаниях к функцииpygame.draw.line().
- Возвращает
-
прямоугольник, ограничивающий измененные пиксели, если ничего не нарисовано, позиция прямоугольника будет позицией первой точки в параметре
points(вещественные значения будут усечены), а его ширина и высота будут 0 - Тип возвращаемого значения
- Возможные исключения
-
ValueError -- если
len(points) < 3(должно быть как минимум 3 точки)TypeError -- если
pointsне является последовательностью илиpointsне содержит пар чисел
Примечание
Для рисования аппроксимированных многоугольников используйте
aalines()сclosed=True.Изменено в pygame 2.0.0: Добавлена поддержка ключевых аргументов.
- pygame.draw.circle()
-
нарисовать окружностьcircle(surface, color, center, radius) -> Rectcircle(surface, color, center, radius, width=0, draw_top_right=None, draw_top_left=None, draw_bottom_left=None, draw_bottom_right=None) -> Rect
Рисует окружность на заданной поверхности.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа необязательно, если используется кортеж
(RGB[A])center (tuple(int или float, int или float) или list(int или float, int или float) или Vector2(int или float, int или float)) -- центральная точка окружности в виде последовательности из 2 целых/вещественных чисел, например
(x, y)radius (int или float) -- радиус окружности, измеряемый от
centerпараметра, ничего не будет нарисовано, еслиradiusменьше 1-
width (int) --
(необязательно) используется для толщины линии или для указания того, что окружность должна быть залита
еслиwidth == 0, (по умолчанию) заполнить окружностьеслиwidth > 0, используется для толщины линииеслиwidth < 0, ничего не будет нарисованоПримечание
При использовании
widthзначений> 1, линии края будут расти только внутрь. draw_top_right (bool) -- (необязательно) если установлено в True, то будет нарисована правая верхняя часть окружности
draw_top_left (bool) -- (необязательно) если установлено в True, то будет нарисована левая верхняя часть окружности
draw_bottom_left (bool) -- (необязательно) если установлено в True, то будет нарисована левая нижняя часть окружности
-
draw_bottom_right (bool) --
(необязательно) если установлено в True, то будет нарисована правая нижняя часть окружности
если любое из значений draw_circle_part равно True, то будут нарисованы все части окружности, имеющие значение True, в противном случае будет нарисована вся окружность.value, otherwise it will draw the entire circle.
- Возвращаемое значение
-
прямоугольник, ограничивающий измененные пиксели, если ничего не нарисовано, положение прямоугольника будет значением параметра
center(вещественные значения будут усечены), а его ширина и высота будут равны 0 - Тип возвращаемого значения
- Исключения
-
TypeError -- если
centerне является последовательностью из двух чиселTypeError -- если
radiusне является числом
Изменено в pygame 2.0.0: Добавлена поддержка именованных аргументов. Ничего не рисуется, когда радиус равен 0 (пиксель в координатах
centerраньше рисовал, когда радиус был равен 0). Для параметраcenterдопускаются вещественные числа и Vector2. Алгоритм рисования был улучшен, чтобы он выглядел более как окружность.Изменено в pygame 2.0.0.dev8: Добавлена поддержка рисования квадрантов окружности.
- pygame.draw.ellipse()
-
нарисовать эллипсellipse(surface, color, rect) -> Rectellipse(surface, color, rect, width=0) -> Rect
Рисует эллипс на заданной поверхности.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа необязательно, если используется кортеж
(RGB[A])rect (Rect) -- прямоугольник для указания положения и размеров эллипса, эллипс будет центрирован внутри прямоугольника и ограничен им
-
width (int) --
(необязательно) используется для толщины линии или для указания того, что эллипс должен быть заполнен (не путать со значением ширины параметра
rect)еслиwidth == 0, (по умолчанию) заполнить эллипсеслиwidth > 0, используется для толщины линииеслиwidth < 0, ничего не будет нарисованоПримечание
При использовании
widthзначений> 1, линии края будут расти только внутрь от исходной границы параметраrect.
- Возвращаемое значение
-
прямоугольник, ограничивающий измененные пиксели, если ничего не нарисовано, положение прямоугольника будет положением данного параметра
rect, а его ширина и высота будут 0 - Тип возвращаемого значения
Изменено в pygame 2.0.0: Добавлена поддержка именованных аргументов.
- pygame.draw.arc()
-
нарисовать дугу эллипсаarc(surface, color, rect, start_angle, stop_angle) -> Rectarc(surface, color, rect, start_angle, stop_angle, width=1) -> Rect
Рисует дугу эллипса на заданной поверхности.
Два аргумента угла задаются в радианах и указывают начальное и конечное положение дуги. Дуга рисуется против часовой стрелки от
start_angleдоstop_angle.- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа необязательно, если используется кортеж
(RGB[A])rect (Rect) -- прямоугольник, определяющий положение и размеры эллипса, на основе которого будет построена дуга, эллипс будет центрирован внутри прямоугольника
start_angle (float) -- начальный угол дуги в радианах
-
stop_angle (float) --
конечный угол дуги в радианах
еслиstart_angle < stop_angle, дуга рисуется против часовой стрелки отstart_angleдоstop_angle.еслиstart_angle > stop_angle, tau (tau == 2 * pi) будет добавлен кstop_angle, если полученное значение конечного угла большеstart_angle, применяется вышеупомянутый случайstart_angle < stop_angle, в противном случае ничего не будет нарисованоеслиstart_angle == stop_angle, ничего не будет нарисовано -
width (int) --
(необязательно) используется для толщины линии (не путать со значением ширины параметра
rect)еслиwidth == 0, ничего не будет нарисованоеслиwidth > 0, (по умолчанию 1) используется для толщины линииеслиwidth < 0, то же, что иwidth == 0.Примечание
При использовании
widthзначений> 1, линии края будут расти только внутрь от исходной границы параметраrect.
- Возвращаемое значение
-
прямоугольник, ограничивающий измененные пиксели, если ничего не нарисовано, положение прямоугольника будет положением данного параметра
rect, а его ширина и высота будут 0 - Тип возвращаемого значения
Изменено в pygame 2.0.0: Добавлена поддержка именованных аргументов.
- pygame.draw.line()
-
нарисовать прямую линиюline(surface, color, start_pos, end_pos) -> Rectline(surface, color, start_pos, end_pos, width=1) -> Rect
Рисует прямую линию на заданной поверхности. Нет концевых элементов. Для толстых линий концы обрезаются.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа является необязательным, если используется кортеж
(RGB[A])start_pos (tuple(int или float, int или float) или list(int или float, int или float) или Vector2(int или float, int или float)) -- начальная позиция линии, (x, y)
end_pos (tuple(int или float, int или float) или list(int или float, int или float) или Vector2(int или float, int или float)) -- конечная позиция линии, (x, y)
-
width (int) --
(необязательно) используется для толщины линии
если width >= 1, используется для толщины линии (по умолчанию 1)если width < 1, ничего не будет нарисованоПримечание
При использовании
widthзначений> 1, линии будут увеличиваться следующим образом.Для нечётных
widthзначений толщина каждой линии увеличивается, при этом исходная линия находится в центре.Для чётных
widthзначений толщина каждой линии увеличивается, при этом исходная линия смещена от центра (так как нет точно нарисованной центральной линии). В результате, линии с наклоном < 1 (горизонтально-ориентированные) будут иметь на 1 пиксель больше толщины ниже исходной линии (в направлении y). Линии с наклоном >= 1 (вертикально-ориентированные) будут иметь на 1 пиксель больше толщины справа от исходной линии (в направлении x).
- Возвращает
-
прямоугольник, ограничивающий изменённые пиксели, если ничего не нарисовано, позиция прямоугольника будет значением параметра
start_pos(значения с плавающей точкой будут усечены), а его ширина и высота будут равны 0 - Тип возвращаемого значения
- Возбуждает
-
TypeError -- если
start_posилиend_posне является последовательностью из двух чисел
Изменено в pygame 2.0.0: Добавлена поддержка именованных аргументов.
- pygame.draw.lines()
-
рисовать несколько смежных отрезков прямых линийlines(surface, color, closed, points) -> Rectlines(surface, color, closed, points, width=1) -> Rect
Рисует последовательность смежных прямых линий на заданной поверхности. Нет концевых элементов или соединений по типу «фальцовка». Для толстых линий концы обрезаются. Рисование толстых линий с острыми углами может привести к нежелательным результатам.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа является необязательным, если используется кортеж
(RGB[A])closed (bool) -- если
Trueдополнительный отрезок линии рисуется между первой и последней точкой вpointsпоследовательностиpoints (tuple(координата) или list(координата)) -- последовательность из 2 или более (x, y) координат, где каждая координата в последовательности должна быть кортежем/списком/
pygame.math.Vector2из 2 целых/вещественных чисел, и соседние координаты будут соединены отрезком прямой, например, для точек[(x1, y1), (x2, y2), (x3, y3)]отрезок прямой будет нарисован от(x1, y1)до(x2, y2)и от(x2, y2)до(x3, y3), в дополнение к этому, если параметрclosedравенTrue, ещё один отрезок прямой будет нарисован от(x3, y3)до(x1, y1)-
width (int) --
(необязательно) используется для толщины линии
если width >= 1, используется для толщины линии (по умолчанию 1)если width < 1, ничего не будет нарисованоПримечание
При использовании
widthзначений> 1обратитесь кwidthпримечаниямline()за подробностями о том, как увеличиваются толстые линии.
- Возвращает
-
прямоугольник, ограничивающий изменённые пиксели, если ничего не нарисовано, позиция прямоугольника будет значением позиции первой точки в параметре
points(значения с плавающей точкой будут усечены), а его ширина и высота будут равны 0 - Тип возвращаемого значения
- Возбуждает
-
ValueError -- если
len(points) < 2(должно содержать как минимум 2 точки)TypeError -- если
pointsне является последовательностью илиpointsне содержит пары чисел
Изменено в pygame 2.0.0: Добавлена поддержка именованных аргументов.
- pygame.draw.aaline()
-
провести прямую линию с антиалиасингомaaline(surface, color, start_pos, end_pos) -> Rectaaline(surface, color, start_pos, end_pos, blend=1) -> Rect
Рисует прямую линию с антиалиасингом на заданной поверхности.
Толщина линии составляет один пиксель, а у каждой точки начала и конца есть высота и ширина по одному пикселю.
- Способ рисования линии и её точек:
-
Если обе точки начала и конца совпадают, рисуется только один пиксель (после округления чисел с плавающей точкой до ближайшего целого).
В противном случае, если линия не крутая (т. е. длина по оси x больше, чем по оси y):
Для каждой точки:
Если
x, координата x точки, является целым числом, найти пиксели, которые она покрывает, и нарисовать их.В противном случае:
Вычислить положение ближайшей точки с целым значением координаты x, когда линия продолжается за пределы точки.
Определить, какие пиксели и насколько будут покрыты этой точкой.
Если точка — левая, умножить покрытие на (1 − дробная часть
x).В противном случае умножить покрытие на дробную часть
x.Затем нарисовать эти пиксели.
- Например:
-
Левая точка линии
((1, 1.3), (5, 3))будет покрывать 70% пикселя(1, 1)и 30% пикселя(1, 2), а правая — 100% пикселя(5, 3).Левая точка линии((1.2, 1.4), (4.6, 3.1))будет покрывать 56% (т. е. 0,8 * 70%) пикселя(1, 1)и 24% (т. е. 0,8 * 30%) пикселя(1, 2), а правая — 42% (т. е. 0,6 * 70%) пикселя(5, 3)и 18% (т. е. 0,6 * 30%) пикселя(5, 4), а правая
Затем для каждой точки между точками, лежащей на линии, у которой координата x является целым числом:
Определить, какие пиксели и насколько будут покрыты этой точкой, и нарисовать их.
- Например:
-
Точки на линии
((1, 1), (4, 2.5))будут(2, 1.5)и(3, 2)и будут покрывать 50% пикселя(2, 1), 50% пикселя(2, 2)и 100% пикселя(3, 2).Точки на линии((1.2, 1.4), (4.6, 3.1))будут(2, 1.8)(покрывая 20% пикселя(2, 1)и 80% пикселя(2, 2)),(3, 2.3)(покрывая 70% пикселя(3, 2)и 30% пикселя(3, 3)) и(4, 2.8)(покрывая 20% пикселя(2, 1)и 80% пикселя(2, 2))
В противном случае выполните то же самое для крутых линий, что и для некрутых линий, но по оси y вместо оси x (используя
yвместоx, верх вместо слева и низ вместо справа).
Примечание
Что касается чисел с плавающей точкой для координат, точка с координатами, состоящими из двух целых чисел, считается расположенной точно посередине соответствующего пикселя (и имеющей высоту и ширину 1 пиксель, следовательно, полностью покрывает его), а точка с координатами, где одно (или оба) числа имеют не нулевую дробную часть, будет частично покрывать два (или четыре, если обе части имеют дробные части) соседних пикселя, например, точка
(1.4, 2)покрывает 60% пикселя(1, 2)и 40% пикселя(2,2).- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа канала необязательно, если используется кортеж
(RGB[A])start_pos (tuple(int или float, int или float) или list(int или float, int или float) или Vector2(int или float, int или float)) -- начальная позиция линии, (x, y)
end_pos (tuple(int или float, int или float) или list(int или float, int или float) или Vector2(int или float, int или float)) -- конечная позиция линии, (x, y)
blend (int) -- (необязательно) (устарело) если отличное от нуля (по умолчанию), линия будет смешана с существующими пикселями поверхности, в противном случае пиксели будут перезаписаны
- Возвращает
-
прямоугольник, ограничивающий изменённые пиксели, если ничего не нарисовано, координаты прямоугольника будут равны значению параметра
start_pos(значения с плавающей точкой будут усечены), а его ширина и высота будут равны 0 - Тип возвращаемого значения
- Исключения
-
TypeError -- если
start_posилиend_posне являются последовательностью из двух чисел
Изменено в pygame 2.0.0: Добавлена поддержка ключевых аргументов.
- pygame.draw.aalines()
-
рисование нескольких непрерывных прямых линий с антиалиасингомaalines(surface, color, closed, points) -> Rectaalines(surface, color, closed, points, blend=1) -> Rect
Рисует последовательность непрерывных прямых линий с антиалиасингом на заданной поверхности.
- Параметры
-
surface (Surface) -- поверхность для рисования
color (Color или int или tuple(int, int, int, [int])) -- цвет для рисования, значение альфа канала необязательно, если используется кортеж
(RGB[A])closed (bool) -- если
Trueрисуется дополнительный сегмент линии между первой и последней точкой вpointsпоследовательностиpoints (tuple(координата) или list(координата)) -- последовательность из 2 или более (x, y) координат, где каждая координата в последовательности должна быть кортежем/списком/
pygame.math.Vector2из 2 целых/чисел с плавающей точкой, и соседние координаты будут соединены отрезком прямой, например, для точек[(x1, y1), (x2, y2), (x3, y3)]отрезок прямой будет нарисован от(x1, y1)до(x2, y2)и от(x2, y2)до(x3, y3), кроме того, если параметрclosedимеет значениеTrue, ещё один отрезок прямой будет нарисован от(x3, y3)до(x1, y1)blend (int) -- (необязательно) (устарело) если отличное от нуля (по умолчанию), каждая линия будет смешана с существующими пикселями поверхности, в противном случае пиксели будут перезаписаны
- Возвращает
-
прямоугольник, ограничивающий изменённые пиксели, если ничего не нарисовано, координаты прямоугольника будут равны позиции первой точки в параметре
points(значения с плавающей точкой будут усечены), а его ширина и высота будут равны 0 - Тип возвращаемого значения
- Исключения
-
ValueError -- если
len(points) < 2(должно содержать как минимум 2 точки)TypeError -- если
pointsне является последовательностью илиpointsне содержит пар чисел
Изменено в pygame 2.0.0: Добавлена поддержка ключевых аргументов.
Пример кода для модуля draw.
import pygame from math import pi # Initialize pygame pygame.init() # Set the height and width of the screen size = [400, 300] screen = pygame.display.set_mode(size) pygame.display.set_caption("Example code for the draw module") # Loop until the user clicks the close button. done = False clock = pygame.time.Clock() while not done: # This limits the while loop to a max of 60 times per second. # Leave this out and we will use all CPU we can. clock.tick(60) for event in pygame.event.get(): # User did something if event.type == pygame.QUIT: # If user clicked close done = True # Flag that we are done so we exit this loop # Clear the screen and set the screen background screen.fill("white") # Draw on the screen a green line from (0, 0) to (50, 30) # 5 pixels wide. Uses (r, g, b) color - medium sea green. pygame.draw.line(screen, (60, 179, 113), [0, 0], [50, 30], 5) # Draw on the screen a green line from (0, 50) to (50, 80) # Because it is an antialiased line, it is 1 pixel wide. # Uses (r, g, b) color - medium sea green. pygame.draw.aaline(screen, (60, 179, 113), [0, 50], [50, 80], True) # Draw on the screen 3 black lines, each 5 pixels wide. # The 'False' means the first and last points are not connected. pygame.draw.lines( screen, "black", False, [[0, 80], [50, 90], [200, 80], [220, 30]], 5 ) # Draw a rectangle outline pygame.draw.rect(screen, "black", [75, 10, 50, 20], 2) # Draw a solid rectangle. Same color as "black" above, specified in a new way pygame.draw.rect(screen, (0, 0, 0), [150, 10, 50, 20]) # Draw a rectangle with rounded corners pygame.draw.rect(screen, "green", [115, 210, 70, 40], 10, border_radius=15) pygame.draw.rect( screen, "red", [135, 260, 50, 30], 0, border_radius=10, border_top_left_radius=0, border_bottom_right_radius=15, ) # Draw an ellipse outline, using a rectangle as the outside boundaries pygame.draw.ellipse(screen, "red", [225, 10, 50, 20], 2) # Draw an solid ellipse, using a rectangle as the outside boundaries pygame.draw.ellipse(screen, "red", [300, 10, 50, 20]) # This draws a triangle using the polygon command pygame.draw.polygon(screen, "black", [[100, 100], [0, 200], [200, 200]], 5) # Draw an arc as part of an ellipse. # Use radians to determine what angle to draw. pygame.draw.arc(screen, "black", [210, 75, 150, 125], 0, pi / 2, 2) pygame.draw.arc(screen, "green", [210, 75, 150, 125], pi / 2, pi, 2) pygame.draw.arc(screen, "blue", [210, 75, 150, 125], pi, 3 * pi / 2, 2) pygame.draw.arc(screen, "red", [210, 75, 150, 125], 3 * pi / 2, 2 * pi, 2) # Draw a circle pygame.draw.circle(screen, "blue", [60, 250], 40) # Draw only one circle quadrant pygame.draw.circle(screen, "blue", [250, 250], 40, 0, draw_top_right=True) pygame.draw.circle(screen, "red", [250, 250], 40, 30, draw_top_left=True) pygame.draw.circle(screen, "green", [250, 250], 40, 20, draw_bottom_left=True) pygame.draw.circle(screen, "black", [250, 250], 40, 10, draw_bottom_right=True) # Go ahead and update the screen with what we've drawn. # This MUST happen after all the other drawing commands. pygame.display.flip() # Be IDLE friendly pygame.quit()
Изменить на GitHub
© Pygame Developers.
Licensed under the GNU LGPL License version 2.1.
https://www.pygame.org/docs/ref/draw.html