X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=blobdiff_plain;f=mash.cc;h=da376b5b5ed41f697581fd3cf742f96867b6e8aa;hb=01b5ab3f0b75969230e0f9c41e55992b3d29edee;hp=04a49b161ff0145778d7ccc69c35bde43d2a4b2a;hpb=762714b0bd3e8db3e57ef1e29bcf2adfefe7e5a5;p=universe.git diff --git a/mash.cc b/mash.cc index 04a49b1..da376b5 100644 --- a/mash.cc +++ b/mash.cc @@ -1,4 +1,3 @@ -// -*- compile-command:"g++ -lX11 -Wall -g -O3 -o mash misc.o universe.o polygon.o mash.cc xfig_tracer.o -L/usr/X11R6/lib/"; -*- #include #include @@ -35,7 +34,7 @@ int main(int argc, char **argv) { ys[k] = scalar_t(h)/2 + radius * sin(-alpha); } Polygon *p; - p = new Polygon(1.0, 0.5, 0.5, 0.5, xs, ys, nb); + p = new Polygon(1.0, 0.0, 0.0, 0.0, xs, ys, nb); p->set_position(scalar_t(w/2), scalar_t(h) * 0.75, 0); p->set_speed(0, 0, 0); universe.initialize(p); @@ -88,9 +87,16 @@ int main(int argc, char **argv) { cout << "n = " << n << " nb_edges = " << nb_edges << endl; - blocks[i] = new Polygon(1.0, 1.0, 1.0, 0.0, xs, ys, nb_edges); + scalar_t red, green, blue; do { - blocks[i]->set_position(drand48() * w/2 + w/4, drand48() * h/2 + h/4, M_PI * drand48()); + red = scalar_t(16 * int(drand48() * 16))/255.0; + green = scalar_t(16 * int(drand48() * 16))/255.0; + blue = scalar_t(16 * int(drand48() * 16))/255.0; + } while((red > 0.1 && green > 0.1 && blue > 0.1) || + (red < 0.9 && green < 0.9 && blue < 0.9)); + blocks[i] = new Polygon(1.0, red, green, blue, xs, ys, nb_edges); + do { + blocks[i]->set_position(drand48() * w * 0.9 + w * 0.05, drand48() * 3 * h / 4 + h/8, M_PI * drand48()); blocks[i]->set_speed(0, 0, 0); // universe.initialize(blocks[i]); for(int j = 0; j < i + 1; j++) { @@ -112,13 +118,13 @@ int main(int argc, char **argv) { char buffer[1024]; sprintf(buffer, "/tmp/mash_%06d.fig", n); XFigTracer tracer(buffer); - universe.print_fig(&tracer); + universe.print_xfig(&tracer); cout << "Wrote " << buffer << endl; } } XFigTracer tracer("/tmp/mash.fig"); - universe.print_fig(&tracer); + universe.print_xfig(&tracer); exit(0); }