wxMaracasMultipleVolumeRendererManager.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __wxMaracasMultipleVolumeRendererManagerH__
00022 #define __wxMaracasMultipleVolumeRendererManagerH__
00023
00024 #include <iostream>
00025 #include <vector>
00026 #include <vtkMatrix4x4.h>
00027
00028 #include "wxMaracasMultipleVolumeRendererManagerData.h"
00029
00030
00031 class wxMaracasMultipleVolumeRendererManager {
00032
00033 public:
00034 wxMaracasMultipleVolumeRendererManager();
00035 ~wxMaracasMultipleVolumeRendererManager();
00036
00040 void setRenderer(vtkRenderer* renderer);
00041
00045 vtkRenderer* getRenderer();
00046
00050 int addVolume(int idTP, vtkImageData* img, std::string dataname) throw (char*);
00051
00055 vtkProp3D* getVolume(std::string filename);
00056
00060 vtkImageData* getImageData(std::string filename);
00061
00065 vtkImageData* getImageData();
00066
00070 void addRemoveActor(int propid, bool addremove) throw(char*);
00071
00075 void checkInvariant()throw(char*);
00076
00080 void setVolumeOpacity(int propid, std::vector<double> greylevel,std::vector<double> value) throw(char*);
00084 void setVolumeColor(int volid, std::vector<double> greylevel,
00085 std::vector<double> red,
00086 std::vector<double> green,
00087 std::vector<double> blue)throw(char*);
00088
00092 wxMaracasMultipleVolumeRendererManagerData* getViewData(int id)throw(char*);
00093
00094 void changeCompositeMIPFunction(int id, int function) throw (char *);
00095
00099 void deleteActor(int volumeid)throw (char *);
00100
00104 void Update(int propid);
00105
00106 vtkPiecewiseFunction* GetTransferFunction(int volumeid);
00107 vtkColorTransferFunction* GetColorFunction(int volumeid);
00108 private:
00109 std::vector<wxMaracasMultipleVolumeRendererManagerData*> prop3Dvect;
00110
00111 vtkRenderer* _renderer;
00112 vtkImageData* image;
00113
00114 int _idCount;
00115
00116
00117
00118
00119 };
00120
00121 #endif