Friday, October 10, 2025
HomeLanguagesWand wave() function – Python

Wand wave() function – Python

The wave() function is an inbuilt function in the Python Wand ImageMagick library which is used to alter an image along with a sine wave. It creates a ripple effect.
 

Syntax: 
 

wave(amplitude, wave_length, method)

Parameters: This function accepts three parameters as mentioned above and defined below: 
 

  • Amplitude: This parameter stores the value of the amplitude of the sine wave.
  • Wave_length: This parameter stores the value of the wavelength of the sine wave.
  • method: This parameter is used to specify the value of method which takes pixel interpolation method as ‘undefined’, ‘average’, ‘average9’, ‘average16’, ‘background’, ‘bilinear’, ‘blend’, ‘catrom’, ‘integer’, ‘mesh’, ‘nearest’, ‘spline’

Return Value: This function returns the Wand ImageMagick object.

Original Image: 
 

Example 1: 
 

Python3




# Import library from Image
from wand.image import Image
 
# Import the image
with Image(filename ='../neveropen.png') as image:
    # Clone the image in order to process
    with image.clone() as wave:
        # Invoke wave function with amplitude as 12, wavelength as 15
        # method as 'bilinear'
        wave.wave(12, 15, 'bilinear')
        # Save the image
        wave.save(filename ='wave1.jpg')


Output: 
 

Example 2: 
 

Python3




# Import libraries from the wand 
from wand.image import Image
from wand.drawing import Drawing
from wand.color import Color
 
with Drawing() as draw:
    # Set Stroke color the circle to black
    draw.stroke_color = Color('black')
    # Set Width of the circle to 2
    draw.stroke_width = 1
    # Set the fill color to 'White (# FFFFFF)'
    draw.fill_color = Color('white')
 
    # Invoke Circle function with center at 50, 50 and radius 25
    draw.circle((200, 200), # Center point
                (100, 100)) # Perimeter point
    # Set the font style
    draw.font = '../Helvetica.ttf'
    # Set the font size
    draw.font_size = 30
     
    with Image(width = 400, height = 400, background = Color('# 45ff33')) as pic:
        # Set the text and its location
        draw.text(int(pic.width / 3), int(pic.height / 2), 'GeeksForGeeks !')
        # Draw the picture
        draw(pic)
        # Invoke wave() function with amplitude as 10, wavelength as 10
        # method as 'blend'
        pic.wave(10, 10, 'blend')
        # Save the image
        pic.save(filename ='wave2.jpg')


Output: 
 

 

Dominic
Dominichttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Dominic
32349 POSTS0 COMMENTS
Milvus
87 POSTS0 COMMENTS
Nango Kala
6717 POSTS0 COMMENTS
Nicole Veronica
11880 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11941 POSTS0 COMMENTS
Shaida Kate Naidoo
6838 POSTS0 COMMENTS
Ted Musemwa
7097 POSTS0 COMMENTS
Thapelo Manthata
6792 POSTS0 COMMENTS
Umr Jansen
6792 POSTS0 COMMENTS