trying to draw a texture with a special sin function

Hello openGl comunity, I have a question to draw a 2D texture over a image.
Im trying to reproduce the following effect:


Defines the amplitude, frequency, speed, and phase of the wave effect. A raster scroll effect is achieved by using a sinusoidal function to draw the sprite with each line’s horizontal position slightly different from the last.

wave_amp is the wave amplitude and wave_length is the wave frequency, and each is specified by a number of pixels.

I made a image to leave it cleaner on how The effect is supposed to be something like this:

I have an idea on using segments of gl quads blocks, but I gess if there is a better way to do it:

for (int parts = 0; parts < size; pats++)
	// DrawPart i code;

Thanks for the help.