#include "vtkStripper.h"
#include "vtkLODActor.h"
#include "vtkMarchingCubes.h"
-#include "vtkVolumeRayCastMapper.h"
+#if (VTK_MAJOR_VERSION <= 7)
+ #include "vtkVolumeRayCastCompositeFunction.h"
+ #include "vtkVolumeRayCastMIPFunction.h"
+ #include "vtkVolumeRayCastMapper.h"
+#else
+ #include <vtkFixedPointVolumeRayCastMapper.h>
+#endif
#include "boxSurfaceObserver.h"
-#include "vtkVolumeRayCastCompositeFunction.h"
#include <vtkPiecewiseFunction.h>
#include "vtkVolumeProperty.h"
#include "vtkPolyDataMapper.h"
#include "vtkColorTransferFunction.h"
#include "vtkVolume.h"
#include "vtkActor.h"
-#include "vtkOutlineFilter.h"
+//#include "vtkOutlineFilter.h"
#include "vtkRenderWindowInteractor.h"
-#include "vtkVolumeRayCastMIPFunction.h"
#include "volumerendererdata.h"
virtual ~vtkClipping3DDataViewer();
// vtkImageActor* GetImageActor(int id);
- vtkActor* GetOutlineActor();
+
+
vtkClipPolyData* GetTissueClipper(int id);
vtkPolyDataMapper* GetTissueMapper(int id);
vtkPlanes* GetTissuePlanes(int id);
vtkMarchingCubes *GetMCubes(int idTissue);
virtual void Refresh();
- void RefreshSurface();
+ void RefreshSurface();
virtual void Configure();
void Configure_Tissue();
void Configure_Volume();
+ void SetImage();
void SetIsovalue(int idTissue, int isoValue);
double GetIsovalue(int idTissue);
vtkVolume *GetVolumeActor();
- vtkVolumeRayCastMapper *GetVolumeMapper();
+
+#if (VTK_MAJOR_VERSION <= 7)
+ vtkVolumeRayCastMapper *GetVolumeMapper();
+#else
+ vtkFixedPointVolumeRayCastMapper *GetVolumeMapper();
+#endif
+
vtkPlanes *GetVolumePlanes();
void SetVtkMPRBaseData(vtkMPRBaseData *vtkmprbasedata);
bool GetVisibleVolume();
void SetVisibleVolume(bool visibleVolume);
- bool GetVisibleVolumeBox();
+ bool GetVisibleVolumeBox();
void SetVisibleVolumeBox(bool visibleBox);
void SetRepresentationType(int idTissue, bool representationType);
void ReadMeshVTK(char *namefile);
- void Configure_VolumeBox();
- void SetInteractor(vtkRenderWindowInteractor* interactor);
- void SetRenderer(vtkRenderer* renderer);
+ void Configure_VolumeBox();
+ void SetInteractor(vtkRenderWindowInteractor* interactor);
+ void SetRenderer(vtkRenderer* renderer);
//-------------------
//Getters Vectors
//-------------------
- std::vector<double>* GetGreyValuesTransferenceFVector();
- std::vector<double>* GetIntensityValuesTransferenceFVector();
- std::vector<double>* GetRedColorsOfColorTransferenceFVector();
- std::vector<double>* GetGreenColorsOfColorTransferenceFVector();
- std::vector<double>* GetBlueColorsOfColorTransferenceFVector();
- std::vector<double>* GetGreyValueColorsOfColorTransferenceFVector();
+ std::vector<double>* GetGreyValuesTransferenceFVector();
+ std::vector<double>* GetIntensityValuesTransferenceFVector();
+ std::vector<double>* GetRedColorsOfColorTransferenceFVector();
+ std::vector<double>* GetGreenColorsOfColorTransferenceFVector();
+ std::vector<double>* GetBlueColorsOfColorTransferenceFVector();
+ std::vector<double>* GetGreyValueColorsOfColorTransferenceFVector();
void setColorTransferFunction(vtkColorTransferFunction* colortable);
//Getters transference function
//and color of the transference function
//---------------------------------------
- vtkPiecewiseFunction *GetTransferencefunction();
- vtkColorTransferFunction *GetColorTransferenceFunction();
+ vtkPiecewiseFunction *GetTransferencefunction();
+ vtkColorTransferFunction *GetColorTransferenceFunction();
- void SetRayCasting(bool active);
- void SetMIPActive(bool active);
- void SetInterpolation(bool active);
- void SetShade(bool active);
- void updateVolume();
-
-
- void BoxActorChanged(bool changed);
- void UpdateVolumeBox(vector<double> gf, vector<double> vf, vtkColorTransferFunction* ctfun);
+ void SetRayCasting(bool active);
+ void SetMIPActive(bool active);
+ void SetInterpolation(bool active);
+ void SetShade(bool active);
+ void updateVolume();
+ void BoxActorChanged(bool changed);
+ void UpdateVolumeBox(vector<double> gf, vector<double> vf, vtkColorTransferFunction* ctfun);
private:
-
vtkMarchingCubes *_mCubes[ VTKMPRDATA_MAXTISSUE ];
vtkStripper *_tissueStripper[ VTKMPRDATA_MAXTISSUE ];
vtkPolyDataMapper *_tissueMapper[ VTKMPRDATA_MAXTISSUE ];
vtkPlanes *_tissuePlanes[ VTKMPRDATA_MAXTISSUE ];
vtkClipPolyData *_tissueClipper[ VTKMPRDATA_MAXTISSUE ];
- // outline
- vtkOutlineFilter *_outlineData;
- vtkPolyDataMapper *_mapOutline;
- vtkActor *_outline;
-
/// Volume
vtkPiecewiseFunction *_tfun;
vtkColorTransferFunction *_ctfun;
// vtkVolumeRayCastCompositeFunction *_compositeFunction;
vtkPlanes *_volumePlanes;
+
+#if (VTK_MAJOR_VERSION <= 7)
vtkVolumeRayCastMapper *_volumeMapper;
+#else
+ vtkFixedPointVolumeRayCastMapper *_volumeMapper;
+#endif
+
+
vtkVolumeProperty *_volumeProperty;
vtkVolume *_newvol;
-
vtkMPRBaseData *_vtkmprbasedata;
-
bool _visibleVolume;
-
- bool _visibleVolumeBox;
-
+ bool _visibleVolumeBox;
bool _representationType[VTKMPRDATA_MAXTISSUE];
bool _visibleTissue[VTKMPRDATA_MAXTISSUE];
vtkActor *_tissue[VTKMPRDATA_MAXTISSUE];
std::vector<double> blueColorsOfColorTransferenceFVector;
std::vector<double> greyValueColorsOfColorTransferenceFVector;
+#if (VTK_MAJOR_VERSION <= 7)
vtkVolumeRayCastCompositeFunction *_compositeFunction;
vtkVolumeRayCastMIPFunction *_compositeFunctionMIP ;
+#else
+ // ..
+#endif
+
bool _isRayCasting;
- bool _isMIP;
+ bool _isMIP;
bool _interpolation;
bool _shade;