nuclear@2: #include nuclear@2: nuclear@2: #ifndef __APPLE__ nuclear@2: #include nuclear@2: #else nuclear@2: #include nuclear@2: #endif nuclear@2: nuclear@4: #include nuclear@2: #include "gui.h" nuclear@2: #include "sdr.h" nuclear@3: #include "vmath.h" nuclear@3: nuclear@2: nuclear@2: int xsz, ysz; nuclear@4: static int show_gui = 1; nuclear@2: nuclear@2: extern unsigned int sdr; nuclear@2: extern Vector4 seed; nuclear@2: extern int iter; nuclear@2: extern float err_thres; nuclear@2: extern float reflectivity; nuclear@2: nuclear@2: int gui_init(int width, int height) nuclear@2: { nuclear@2: xsz = width; nuclear@2: ysz = height; nuclear@2: nuclear@4: imtk_set_viewport(width, height); nuclear@2: nuclear@4: /*imtk_set_alpha(0.5);*/ nuclear@2: return 0; nuclear@2: } nuclear@2: nuclear@2: void gui_draw() nuclear@2: { nuclear@4: if(!show_gui) { nuclear@4: return; nuclear@4: } nuclear@2: nuclear@4: imtk_begin(); nuclear@2: nuclear@4: imtk_label("seed x", 10, 20); nuclear@4: seed.x = imtk_slider(IMUID, seed.x, -1.0, 1.0, 80, 20); nuclear@2: nuclear@4: imtk_label("seed y", 10, 50); nuclear@4: seed.y = imtk_slider(IMUID, seed.y, -1.0, 1.0, 80, 50); nuclear@2: nuclear@4: imtk_label("seed z", 10, 80); nuclear@4: seed.z = imtk_slider(IMUID, seed.z, -1.0, 1.0, 80, 80); nuclear@2: nuclear@4: imtk_label("seed w", 10, 110); nuclear@4: seed.w = imtk_slider(IMUID, seed.w, -1.0, 1.0, 80, 110); nuclear@4: nuclear@4: imtk_label("iterations", 10, 140); nuclear@4: iter = imtk_slider(IMUID, iter, 0, 32, 80, 140); nuclear@4: nuclear@4: imtk_label("max error", 10, 170); nuclear@4: err_thres = imtk_slider(IMUID, err_thres, 0, 0.075, 80, 170); nuclear@4: nuclear@4: imtk_label("reflectivity", 280, 20); nuclear@4: reflectivity = imtk_slider(IMUID, reflectivity, 0, 1.0, 350, 20); nuclear@4: nuclear@4: imtk_end(); nuclear@2: } nuclear@2: nuclear@2: void gui_set_visible(bool vis) nuclear@2: { nuclear@4: show_gui = vis; nuclear@2: }