Shivering wave 1

Code Actionscript 2.0

Frame action

// initialize drawing createEmptyMovieClip("drawing", 1); drawing.lineStyle(0, 0x000000, 100); drawing.moveTo(0,0); // go from left to right // and calculate function values for (px = 0; px < 400; px = px + 1) { py = graph(px); drawing.lineTo(px, py); } function graph(px) { py = stretch(sine(2 * px), 100, 100) + random(200); return (py); } function sine(x) { // sine conversion for values // between 0 and 400 (stage width) s = Math.sin(x * 2 * Math.PI / 400); return s; } function stretch(value, center, amplitude) { // scales and shifts value st = int(value * amplitude + center); return st; }

Code Actionscript 3.0

// initialize drawing var drawing:MovieClip = new MovieClip(); drawing.graphics.lineStyle(0, 0x000000, 1); drawing.graphics.moveTo(0, 0); this.addChild(drawing); // go from left to right // and calculate function values for (var px = 0; px < 400; px = px + 1) { var py = graph(px); drawing.graphics.lineTo(px, py); } function graph(px:int) { var py = stretch(sinus(2 * px), 100, 100) + int(Math.random()*200); return (py); } function sinus(x:int) { // sine conversion for values // between 0 and 400 (stage width) var s = Math.sin(x * 2 * Math.PI / 400); return s; } function stretch(value:Number, center:int, amplitude:int) { // scales and shifts value var st = int(value * amplitude + center); return st; }

Description

In this example, you add a sine-function to a random-curve. This results in a big sine wave disturbed by smaller random oscillations.