Lissajous & Prolate Code
by rbatzer
/*This example draws voronoi diagram generated by a random set of points.*/
void setup() { size(1200,600,P3D); //size of your intended pattern noLoop(); // don’t need to use the draw loop /*unique name for your file. if left unchanged, will simply save file with current milisecond*/ String fileName= “voronoi”+millis()+”.pdf”; beginRaw(PDF, fileName); //enables you to save your design to a pdf setupVoronoi(); // create your voronoi generator int a = 3; int b=4; int numPoints=200; //must be multiple of n float x=0; float y=0; float delta =0; float t=0;
delta=(b-1)/b*3.14159265/2; for (int k=1;k<numPoints;k++) { t= k*2*3.14159265/numPoints; x=200*sin(t*a+delta)+600; y=150*sin(b*t)+300; voronoi.addPoint(new Vec2D(x,y)); } int c = 3; int d=4; int numPoints2=200; //must be multiple of n float theta =0; for (int k=1;k<numPoints2;k++) { y=5*(c*theta-d*sin(theta)); x=5*(c-d*cos(theta))+20; theta= theta+23*3.14159/numPoints2; voronoi.addPoint(new Vec2D(x,y)); voronoi.addPoint(new Vec2D(1200-x,y)); } drawVoronoi(); //renders your voronoi endRaw(); //ends the recording
}