X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=progs%2Fdemos%2FFractals_random%2Ffractals_random.c;h=aa106414efefc5dc8e0a0df0af125fee684c49ca;hb=bc3bd114b6cd0399c22bff5bd99de60747b1070d;hp=176013f47ae3ab9960b46b2db24a4f442eef226d;hpb=2de8ecb067e6142a4f0d717c1e5bef62f3f53b81;p=freeglut diff --git a/progs/demos/Fractals_random/fractals_random.c b/progs/demos/Fractals_random/fractals_random.c index 176013f..aa10641 100644 --- a/progs/demos/Fractals_random/fractals_random.c +++ b/progs/demos/Fractals_random/fractals_random.c @@ -25,6 +25,7 @@ #include #include #include +#define FGH_PI 3.14159265358979323846 #ifdef _MSC_VER /* DUMP MEMORY LEAKS */ #include @@ -311,13 +312,20 @@ void readConfigFile ( char *fnme ) else /* No data file, set a default */ { printf ( "ERROR opening file <%s>\n", fnme ) ; - strcpy ( window_title, "Cantor Dust" ) ; - num_trans = 2 ; + strcpy ( window_title, "Koch Snowflake" ) ; + num_trans = 4 ; affine = (AffineTrans *)malloc ( num_trans * sizeof(AffineTrans) ) ; - affine[0].a00 = 0.25 ; affine[0].a01 = 0.00 ; affine[0].a10 = 0.00 ; affine[0].a11 = 0.25 ; + affine[0].a00 = 1/3. ; affine[0].a01 = 0.00 ; affine[0].a10 = 0.00 ; affine[0].a11 = 1/3. ; affine[0].b0 = 0.0 ; affine[0].b1 = 0.0 ; - affine[1].a00 = 0.25 ; affine[1].a01 = 0.00 ; affine[1].a10 = 0.00 ; affine[1].a11 = 0.25 ; - affine[1].b0 = 0.5 ; affine[1].b1 = 0.0 ; + + affine[1].a00 = 1/6. ; affine[1].a01 = -1/3.*sin(FGH_PI/3.) ; affine[1].a10 = 1/3.*sin(FGH_PI/3.) ; affine[1].a11 = 1/6. ; + affine[1].b0 = 1/3. ; affine[1].b1 = 0.0 ; + + affine[2].a00 = 1/6. ; affine[2].a01 = -1/3.*sin(-FGH_PI/3.) ; affine[2].a10 = 1/3.*sin(-FGH_PI/3.) ; affine[2].a11 = 1/6. ; + affine[2].b0 = 0.5 ; affine[2].b1 = sqrt(3)/6. ; + + affine[3].a00 = 1/3. ; affine[3].a01 = 0.00 ; affine[3].a10 = 0.00 ; affine[3].a11 = 1/3. ; + affine[3].b0 = 2/3. ; affine[3].b1 = 0.0 ; } for ( i = 0; i < num_trans; i++ ) @@ -347,8 +355,6 @@ void readConfigFile ( char *fnme ) int main(int argc, char *argv[]) { - int fractal_window ; - glutInitDisplayMode( GLUT_RGB | GLUT_SINGLE ); glutInitWindowSize(500, 250); @@ -360,7 +366,7 @@ main(int argc, char *argv[]) else readConfigFile ( "fractals.dat" ) ; - fractal_window = glutCreateWindow( window_title ); + glutCreateWindow( window_title ); glClearColor(1.0, 1.0, 1.0, 1.0);