glviewvol
annotate src/dicomview.cc @ 1:cc9e0d8590e2
foo
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sat, 27 Dec 2014 06:32:28 +0200 |
parents | 7bdf40403b9c |
children | 32c4a7160350 |
rev | line source |
---|---|
nuclear@0 | 1 #include "opengl.h" |
nuclear@0 | 2 #include "dicomview.h" |
nuclear@1 | 3 #include "rend_fast.h" |
nuclear@0 | 4 |
nuclear@1 | 5 static int win_width, win_height; |
nuclear@0 | 6 static float cam_theta, cam_phi, cam_dist = 6; |
nuclear@0 | 7 |
nuclear@1 | 8 static Renderer *rend; |
nuclear@1 | 9 |
nuclear@0 | 10 extern "C" { |
nuclear@0 | 11 |
nuclear@0 | 12 int init() |
nuclear@0 | 13 { |
nuclear@1 | 14 rend = new RendererFast; |
nuclear@1 | 15 if(!rend->init()) { |
nuclear@1 | 16 return -1; |
nuclear@1 | 17 } |
nuclear@1 | 18 |
nuclear@1 | 19 return 0; |
nuclear@0 | 20 } |
nuclear@0 | 21 |
nuclear@0 | 22 void cleanup() |
nuclear@0 | 23 { |
nuclear@1 | 24 rend->destroy(); |
nuclear@1 | 25 delete rend; |
nuclear@0 | 26 } |
nuclear@0 | 27 |
nuclear@0 | 28 void ev_display() |
nuclear@0 | 29 { |
nuclear@0 | 30 glClear(GL_COLOR_BUFFER_BIT); |
nuclear@1 | 31 |
nuclear@1 | 32 rend->update(0); |
nuclear@1 | 33 rend->render(); |
nuclear@0 | 34 } |
nuclear@0 | 35 |
nuclear@0 | 36 void ev_reshape(int x, int y) |
nuclear@0 | 37 { |
nuclear@0 | 38 win_width = x; |
nuclear@0 | 39 win_height = y; |
nuclear@0 | 40 |
nuclear@1 | 41 glViewport(0, 0, x, y); |
nuclear@0 | 42 } |
nuclear@0 | 43 |
nuclear@1 | 44 void ev_keyboard(int key, int press, int x, int y) |
nuclear@1 | 45 { |
nuclear@1 | 46 if(press) { |
nuclear@1 | 47 switch(key) { |
nuclear@1 | 48 case 27: |
nuclear@1 | 49 quit(); |
nuclear@1 | 50 } |
nuclear@1 | 51 } |
nuclear@1 | 52 } |
nuclear@1 | 53 |
nuclear@1 | 54 void ev_mouse_button(int bn, int press, int x, int y) |
nuclear@1 | 55 { |
nuclear@1 | 56 } |
nuclear@1 | 57 |
nuclear@1 | 58 void ev_mouse_motion(int x, int y) |
nuclear@1 | 59 { |
nuclear@1 | 60 } |
nuclear@0 | 61 |
nuclear@0 | 62 } // extern "C" |