My design is a simple yet slightly humorous attempt to animate an emoji. The head and eyes move with in a sinusoidal manner, and the tongue stays stationary but lengthens in accordance with the frame number.
sapeck-praxinoscope-output (PDF download)
/* Sapeck 9/12/2017 "sapeck-Scope" 60-212 Carnegie Mellon University Copyright (C) 2018-present Sapeck This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. */ void drawArtFrame (int whichFrame) { pushMatrix(); // move the head up and down sinusoidally translate(0, -10+30*sin(map(whichFrame, 0, 10, 0, 6))); // draw the head fill(0); ellipse(0, 0, 50, 50); // draw the eye sockets fill(255); ellipse(-10, -10, 20, 20); ellipse(10, -10, 20, 20); // draw the eyes fill(0); int eyeSize = 6+int(6*sin(map(whichFrame, 0, 10, 6, 2))); ellipse(-10, -10, eyeSize, eyeSize); ellipse(10, -10, eyeSize, eyeSize); // draw the tongue fill(color(255,0,0,255)); rect(-10, 10, 20, 10+2*whichFrame, 7); popMatrix(); } |