]> Creatis software - creaMaracasVisu.git/blob - lib/GUI/Base/VolumeRenderer/volumerendererdata.cxx
6adf475c4a96a5b73f447a1919ba5fdd6186373e
[creaMaracasVisu.git] / lib / GUI / Base / VolumeRenderer / volumerendererdata.cxx
1 #include "volumerendererdata.h"
2
3 VolumeRendererData::VolumeRendererData()
4 {
5     VolRendData = 0;
6     ImageData = 0;
7     Renderer = 0;
8     Interactor = 0;
9 }
10
11
12 void VolumeRendererData::ShowVolume(bool checked){
13     if(checked){
14             invariant();
15             VolRendData = new VolumeRendererManagerData(ImageData, true);
16             VolRendData->SetLookupTable(LookUpTable);
17             Renderer->AddActor(VolRendData->getProp3D());
18     }else{
19         Renderer->RemoveActor(VolRendData->getProp3D());
20         VolRendData->Delete();
21         VolRendData = 0;
22     }
23 }
24
25 void VolumeRendererData::invariant(){
26     if(!ImageData){
27         throw "Image data not set";
28     }
29     if(!Renderer){
30         throw "renderer not initialized";
31     }
32 }
33 void VolumeRendererData::OpacityChanged(vector<double> greyvalues, vector<double> values){
34     invariant();
35     if(VolRendData){
36         VolRendData->setVolumeOpacity(greyvalues,values);
37     }
38 }
39 void  VolumeRendererData::BoundingBoxChanged(bool checked){
40     invariant();
41     if(VolRendData && Interactor){
42         if(checked){
43             VolRendData->EnableBoundingBox(Interactor);
44         }else{
45             VolRendData->DisableBoundingBox();
46         }
47     }
48 }