X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=course%2Fsemester2%2Fpprog%2Fassignment0%2Fmain.c;h=58eff2f54d06d77c272da537337cde43f144fdd3;hb=ad9dfbfed9dcc10a3fc2671aca4ec7757d6c9023;hp=c335790651b88b02cebe40f11d70d8498b81f80d;hpb=4dad0bdf3c5058c6cc9f712f458310de74d91417;p=matches%2Fhonours.git diff --git a/course/semester2/pprog/assignment0/main.c b/course/semester2/pprog/assignment0/main.c index c3357906..58eff2f5 100644 --- a/course/semester2/pprog/assignment0/main.c +++ b/course/semester2/pprog/assignment0/main.c @@ -9,20 +9,33 @@ #include #include #include +#include #include "nbody.h" int main(int argc, char ** argv) { - + srand(time(NULL)); System system; - System_Init(&system, (float[3]){320,240,0}, 0.1, 10, 1); + System_Init(&system, (float[3]){320,240,0}, 1.0, 1.0, 0.4,1); #ifdef _GRAPHICS_H Graphics_Init("N-Body", 640, 480); #endif //_GRAPHICS_H - assert(System_AddBody(&system, 1, (float[2]){0.0f,0.0f}, (float[2]){0.0f,0.0f})->exists); - assert(System_AddBody(&system, 0.01, (float[2]){120.0f, -120.0f}, (float[2]){-1.1f, 1.0f})->exists); + for (unsigned a = 0; a < 2; ++a) + { + float m = ((float)(rand() % 100))/1000.0; + float x[DIMENSIONS]; + float v[DIMENSIONS]; + for (unsigned i = 0; i < DIMENSIONS; ++i) + { + x[i] = (float)(rand() % 640 - 320); + v[i] = (float)(rand() % 100 - 50) / 100; + } + System_AddBody(&system, m, x, v); + } + System_AddBody(&system, 1.0, (float[2]){0,0}, (float[2]){0,0}); + while (true) {