Change language

Python PIL | ImageDraw.Draw.polygon () method

PIL — is a Python image library that provides the Python interpreter with image editing capabilities. The ImageDraw module provides simple 2D graphics for Image objects. You can use this module to create new images, annotate or retouch existing images, and create graphics on the fly for use on the web.

ImageDraw.Draw.polygon () Draws a polygon. 
A polygon outline consists of straight lines between the given coordinates plus a straight line between the last and first coordinates.

Syntax: PIL.ImageDraw.Draw.polygon (xy , fill = None, outline = None)

Parameters:

Parameters:

xy - Sequence of either 2-tuples like [(x, y), (x, y),…] or numeric values ​​like [x, y, x, y,…].

outline - Color to use for the outline.

fill - Color to use for the fill.

Returns: An Image object.

 

  

import math

from PIL import Imag e, ImageDraw

from PIL import ImagePath 

 

side = 8

xy = [

((math.cos (th) + 1 ) * 90 ,

(math.sin (th) + 1 ) * 60 )

for th in [i * ( 2 * math.pi) / side for i in range (side)]

 

 

image = ImagePath.Path (xy) .getbbox () 

size = list ( map ( int , map (math.ceil, image [ 2 :])))

  

img = Image.new ( "RGB" , size, " # f9f9f9 "

img1 = ImageDraw.Draw (img) 

img1.polygon (xy, fill = "# eeeeff" , outline = " blue "

 
img.show ()

Output:

Another example: select other options.

 

 

import math

from PIL import Image, ImageDraw

from PIL import ImagePath 

 

side = 6

xy = [

((math.cos (th) + 1 ) * 90 ,

(math.sin (th) + 1 ) * 60 )

for th in [i * ( 2 * math.pi) / side for i in range (side)]

 

 

image = ImagePath.Path (xy) .getbbox () 

size = list ( map ( int , map (math.ceil, image [ 2 :])))

 

img = Image.new ( "RGB" , size, "# f9f9f9"

img1 = ImageDraw.Draw (img) 

img1.polygon (xy, fill = "# eeeeff" , outline = "blue"

 
img.show ()

Output:

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method