32 #ifndef CXMEHDIGPURAYCASTMULTIVOLUMEREP_H
33 #define CXMEHDIGPURAYCASTMULTIVOLUMEREP_H
35 #include "cxResourceVisualizationExport.h"
63 virtual void clearClipping();
66 virtual void applyClipping();
67 virtual void applyCropping();
86 virtual void setMaxVolumeSize(
long maxVoxels);
92 virtual void transformChangedSlot() = 0;
93 virtual void vtkImageDataChangedSlot() = 0;
96 #ifdef CX_BUILD_MEHDI_VTKMULTIVOLUME
111 virtual ~MehdiGPURayCastMultiVolumeRep();
113 virtual QString getType()
const {
return "MehdiGPURayCastMultiVolumeRep"; }
115 void setImages(std::vector<ImagePtr> images);
118 MehdiGPURayCastMultiVolumeRep();
119 virtual void addRepActorsToViewRenderer(View* view);
120 virtual void removeRepActorsFromViewRenderer(View* view);
123 void transformChangedSlot();
124 void vtkImageDataChangedSlot();
127 void initializeMapper();
128 void updateTransforms();
132 void disconnectImages();
133 void connectImages();
135 void setupVolumeProperties();
136 void setupReferenceVolumeAndPropertiesAndConnectToVolume();
140 std::vector<VolumePropertyPtr> mVolumeProperties;
142 std::vector<ImagePtr> mImages;
144 std::vector<ImageMapperMonitorPtr> mMonitors;
147 #endif // CXMEHDIGPURAYCASTMULTIVOLUMEREP_H
153 #endif //CX_BUILD_MEHDI_VTKMULTIVOLUME
vtkSmartPointer< class vtkVolume > vtkVolumePtr
vtkSmartPointer< class vtkOpenGLGPUMultiVolumeRayCastMapper > vtkOpenGLGPUMultiVolumeRayCastMapperPtr
boost::shared_ptr< class Image > ImagePtr
boost::shared_ptr< class ImageMapperMonitor > ImageMapperMonitorPtr
boost::shared_ptr< class MehdiGPURayCastMultiVolumeRep > MehdiGPURayCastMultiVolumeRepPtr
Default implementation of Rep.
boost::shared_ptr< class VolumeProperty > VolumePropertyPtr
long mMaxVoxels
always resample volume below this size.
boost::shared_ptr< class ImageEnveloper > ImageEnveloperPtr
virtual ~MehdiGPURayCastMultiVolumeRepBase()