00001 #include "common.h"
00002 #include "Timer.h"
00003 #include "Arguments.h"
00004 #include "Volume.h"
00005 #include "Camera.h"
00006 #include "TFContainer.h"
00007 #include "Shader.h"
00008 #include "PostProcessingShader.h"
00009 #include "FBO.h"
00010 #include "Font.h"
00011 #include "states.h"
00012 #include "Color.h"
00013 #include "tinyxml.h"
00014 #include "LoadTramsferFunction.h"
00015 #include "Vector4.h"
00016 #include "Matrix.h"
00017 #include "CMesh.h"
00018
00019 #include "alglib/cpp/src/solvers.h"
00020
00021 #include "GL/glui.h"
00022 #include <windows.h>
00023 #include <stdlib.h>
00024 #include <io.h>
00025 #include <glew.h>
00026 #include <openglut.h>
00027 #include <il.h>
00028 #include <math.h>
00029 #include <algorithm>
00030
00031
00032 #include "glm/glm.hpp"
00033
00034
00035
00039 const int GetNextPowerOfTwo(const int iNumber);
00043 void processMenuEvents(int option);
00047 void init();
00051 void deInit();
00055 void initTransferFunction();
00059 void control_cb( int control );
00063 void creatingBG();
00067 void updateTransferFunction(bool update);
00068
00072 void glDrawCube(Camera cam);
00076 void projection(Camera cam);
00080 void projection(Camera cam, bool slices);
00084 void glutIdle(void);
00088 void DrawRotationCube(Camera cam,int width, int height);
00092 void DrawTransferFunction();
00096 void DrawRaycasting(Camera cam, FBO* fbo1, FBO* fbo2, FBO* fbo3);
00100 void DrawFBO(Camera cam, FBO* fbo1, FBO* fbo2, int width, int height);
00104 void DrawFBO(Camera cam, FBO* fbox1, FBO* fboy1, FBO* fboz1, FBO* fbop1, FBO* fbox, FBO* fboy, FBO* fboz, FBO* fbop, float width, float height);
00108 void glutDisplay(void);
00112 void glutReshape(int width, int height);
00116 void glutMouse(int button, int state, int x, int y);
00117
00121 void glutMouseWheel(int wheel, int direction, int x, int y);
00122
00123 void glutCloseColorPicker();
00127 void glutMotion(int x, int y);
00131 void glutKeyboard(unsigned char key, int x, int y);
00135 void glutClose();
00139 void ChangeState(int s);
00143 void SaveXML(std::string filename);
00147 void SaveScreenshot(const char* fileName);
00148
00152 Vector4 calcNormal(Vector pos);
00156 Vector4 interpolateNormal(Vector pos);
00160 void openFile( int control );
00164 void createGUI(int mainWindow);
00168 void dataTransferfunktion(int control );