#include <wxMaracasMultipleVolumeRendererManagerData.h>
Public Member Functions | |
wxMaracasMultipleVolumeRendererManagerData (vtkImageData *vol, std::string dataname="") | |
~wxMaracasMultipleVolumeRendererManagerData () | |
void | checkInvariant () |
vtkProp3D * | getProp3D () |
int | getId () |
void | setId (int propid) |
std::string | getDataname () |
void | setDataname (std::string dataname) |
void | setVolumeColor (std::vector< double > &greylevel, std::vector< double > &red, std::vector< double > &green, std::vector< double > &blue) |
void | setVolumeOpacity (std::vector< double > greylevel, std::vector< double > value) |
vtkPiecewiseFunction * | GetTransferFunction () |
vtkColorTransferFunction * | GetColorFunction () |
Protected Attributes | |
vtkImageData * | _vol |
std::string | _dataname |
Private Attributes | |
int | _id |
vtkVolumeRayCastCompositeFunction * | _compositeFunction |
vtkPlanes * | _volumePlanes |
vtkVolumeRayCastMapper * | _volumeMapper |
vtkVolumeProperty * | _volumeProperty |
vtkVolume * | _newvol |
vtkPiecewiseFunction * | _tfun |
vtkColorTransferFunction * | _ctfun |
Definition at line 18 of file wxMaracasMultipleVolumeRendererManagerData.h.
wxMaracasMultipleVolumeRendererManagerData::wxMaracasMultipleVolumeRendererManagerData | ( | vtkImageData * | vol, | |
std::string | dataname = "" | |||
) |
Definition at line 8 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _compositeFunction, _ctfun, _dataname, _newvol, _tfun, _vol, _volumeMapper, _volumePlanes, and _volumeProperty.
00008 { 00009 00010 _vol = vol; 00011 _dataname = dataname; 00012 00013 _tfun = vtkPiecewiseFunction::New(); 00014 _ctfun = vtkColorTransferFunction::New(); 00015 00016 _volumePlanes = vtkPlanes::New(); 00017 _compositeFunction = vtkVolumeRayCastCompositeFunction::New(); 00018 _volumeMapper = vtkVolumeRayCastMapper::New(); 00019 _volumeMapper->SetVolumeRayCastFunction(_compositeFunction); 00020 _volumeMapper->SetClippingPlanes( _volumePlanes ); 00021 _volumeMapper->AutoAdjustSampleDistancesOn(); 00022 _volumeProperty = vtkVolumeProperty::New(); 00023 _volumeProperty->SetInterpolationTypeToLinear(); 00024 _volumeProperty->ShadeOn(); 00025 _volumeProperty->DisableGradientOpacityOn(); 00026 _volumeProperty->SetColor(_ctfun); 00027 _volumeProperty->SetScalarOpacity(_tfun ); 00028 00029 _newvol = vtkVolume::New(); 00030 _newvol->SetMapper(_volumeMapper ); 00031 _newvol->SetProperty(_volumeProperty ); 00032 _volumeMapper->SetInput( _vol ); 00033 _volumeMapper->Update(); 00034 _newvol->Update(); 00035 }
wxMaracasMultipleVolumeRendererManagerData::~wxMaracasMultipleVolumeRendererManagerData | ( | ) |
Definition at line 38 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _compositeFunction, _ctfun, _newvol, _tfun, _volumeMapper, _volumePlanes, and _volumeProperty.
00038 { 00039 00040 _tfun->Delete(); 00041 _ctfun->Delete(); 00042 _volumePlanes->Delete(); 00043 _compositeFunction->Delete(); 00044 _volumeMapper->Delete(); 00045 _volumeProperty->Delete(); 00046 _newvol->Delete(); 00047 00048 }
void wxMaracasMultipleVolumeRendererManagerData::checkInvariant | ( | ) |
Check if the variables are setted correctly
Definition at line 82 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
vtkProp3D * wxMaracasMultipleVolumeRendererManagerData::getProp3D | ( | ) |
get the prop3D
Definition at line 88 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _newvol.
Referenced by wxMaracasMultipleVolumeRendererManager::addRemoveActor(), and wxMaracasMultipleVolumeRendererManager::addVolume().
00088 { 00089 return this->_newvol; 00090 }
int wxMaracasMultipleVolumeRendererManagerData::getId | ( | ) |
return the id from the daat
Definition at line 94 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _id.
Referenced by wxMaracasMultipleVolumeRendererManager::addVolume().
00094 { 00095 return _id; 00096 }
void wxMaracasMultipleVolumeRendererManagerData::setId | ( | int | propid | ) |
set data id
Definition at line 100 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _id.
Referenced by wxMaracasMultipleVolumeRendererManager::addVolume().
00100 { 00101 _id = propid; 00102 }
std::string wxMaracasMultipleVolumeRendererManagerData::getDataname | ( | ) |
Get the filanme
Definition at line 107 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _dataname.
00107 { 00108 return _dataname; 00109 }
void wxMaracasMultipleVolumeRendererManagerData::setDataname | ( | std::string | dataname | ) |
Set the filanme
Definition at line 113 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _dataname.
00113 { 00114 _dataname = dataname; 00115 }
void wxMaracasMultipleVolumeRendererManagerData::setVolumeColor | ( | std::vector< double > & | greylevelcolors, | |
std::vector< double > & | red, | |||
std::vector< double > & | green, | |||
std::vector< double > & | blue | |||
) |
Set Volume Color
Definition at line 52 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _ctfun, and _newvol.
Referenced by wxMaracasMultipleVolumeRendererManager::setVolumeColor().
00056 { 00057 00058 _ctfun->RemoveAllPoints(); 00059 for(int i = 0; i < greylevelcolors.size();i++){ 00060 _ctfun->AddRGBPoint(greylevelcolors[i], red[i],green[i], blue[i]); 00061 // std::cout<<"transfer color function "<<greylevelcolors[i]<<" "<<red[i]<<" "<<green[i]<<" "<<blue[i]<<std::endl; 00062 } 00063 _newvol->Update(); 00064 }
void wxMaracasMultipleVolumeRendererManagerData::setVolumeOpacity | ( | std::vector< double > | greylevel, | |
std::vector< double > | value | |||
) |
Volume Opacity
Definition at line 69 of file wxMaracasMultipleVolumeRendererManagerData.cxx.
References _newvol, and _tfun.
Referenced by wxMaracasMultipleVolumeRendererManager::setVolumeOpacity().
00069 { 00070 00071 _tfun->RemoveAllPoints(); 00072 for(int i = 0; i < greylevel.size();i++){ 00073 _tfun->AddPoint(greylevel[i], value[i]); 00074 // std::cout<<"transfer function "<<greylevel[i]<<" "<< value[i]<<std::endl; 00075 } 00076 _newvol->Update(); 00077 }
vtkPiecewiseFunction* wxMaracasMultipleVolumeRendererManagerData::GetTransferFunction | ( | ) | [inline] |
Definition at line 63 of file wxMaracasMultipleVolumeRendererManagerData.h.
References _tfun.
Referenced by wxMaracasMultipleVolumeRendererManager::GetTransferFunction().
00063 { 00064 return _tfun; 00065 }
vtkColorTransferFunction* wxMaracasMultipleVolumeRendererManagerData::GetColorFunction | ( | ) | [inline] |
Definition at line 66 of file wxMaracasMultipleVolumeRendererManagerData.h.
References _ctfun.
Referenced by wxMaracasMultipleVolumeRendererManager::GetColorFunction().
00066 { 00067 return _ctfun; 00068 }
vtkImageData* wxMaracasMultipleVolumeRendererManagerData::_vol [protected] |
Prop 3D (data actor)
Definition at line 74 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by wxMaracasMultipleVolumeRendererManagerData().
std::string wxMaracasMultipleVolumeRendererManagerData::_dataname [protected] |
Dataname given by the user (ex. filename)
Definition at line 78 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by getDataname(), setDataname(), and wxMaracasMultipleVolumeRendererManagerData().
int wxMaracasMultipleVolumeRendererManagerData::_id [private] |
Definition at line 86 of file wxMaracasMultipleVolumeRendererManagerData.h.
vtkVolumeRayCastCompositeFunction* wxMaracasMultipleVolumeRendererManagerData::_compositeFunction [private] |
Definition at line 88 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().
vtkPlanes* wxMaracasMultipleVolumeRendererManagerData::_volumePlanes [private] |
Definition at line 89 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().
vtkVolumeRayCastMapper* wxMaracasMultipleVolumeRendererManagerData::_volumeMapper [private] |
Definition at line 90 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().
vtkVolumeProperty* wxMaracasMultipleVolumeRendererManagerData::_volumeProperty [private] |
Definition at line 91 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().
vtkVolume* wxMaracasMultipleVolumeRendererManagerData::_newvol [private] |
Definition at line 92 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by getProp3D(), setVolumeColor(), setVolumeOpacity(), wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().
vtkPiecewiseFunction* wxMaracasMultipleVolumeRendererManagerData::_tfun [private] |
Definition at line 93 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by GetTransferFunction(), setVolumeOpacity(), wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().
vtkColorTransferFunction* wxMaracasMultipleVolumeRendererManagerData::_ctfun [private] |
Definition at line 94 of file wxMaracasMultipleVolumeRendererManagerData.h.
Referenced by GetColorFunction(), setVolumeColor(), wxMaracasMultipleVolumeRendererManagerData(), and ~wxMaracasMultipleVolumeRendererManagerData().