]> Creatis software - clitk.git/blobdiff - vv/vvImageContour.cxx
Debug RTStruct conversion with empty struc
[clitk.git] / vv / vvImageContour.cxx
index e391bbba61a1e6ba85da0d5186270da65e022b9e..68dc72059a32d5cf02ac3424720149e6ffd9fc7f 100644 (file)
 
 //------------------------------------------------------------------------------
 vvImageContour::vvImageContour()
-{ //out << __func__ << endl;
+{ 
   mTSlice = -1;
   mSlice = 0;
   mHiddenImageIsUsed = false;
   mDisplayModeIsPreserveMemory = true;
   SetPreserveMemoryModeEnabled(true);
   mPreviousOrientation = -1;
+  mPreviousValue=0;
   mDepth = 1.0;
   mSlice = 0;
 }
@@ -46,7 +47,7 @@ vvImageContour::vvImageContour()
 
 //------------------------------------------------------------------------------
 vvImageContour::~vvImageContour()
-{ //out << __func__ << endl;
+{ 
   mSquaresActorList.clear();
 }
 //------------------------------------------------------------------------------
@@ -54,7 +55,7 @@ vvImageContour::~vvImageContour()
 
 //------------------------------------------------------------------------------
 void vvImageContour::RemoveActors()
-{ //out << __func__ << endl;
+{ 
   for (unsigned int i = 0; i < mSquaresActorList.size(); i++) {
     if (mSlicer != 0) {
       if (mSlicer!= NULL) {
@@ -72,7 +73,7 @@ void vvImageContour::RemoveActors()
 
 //------------------------------------------------------------------------------
 void vvImageContour::SetSlicer(vvSlicer * slicer) 
-{ //out << __func__ << endl;
+{ 
   mSlicer = slicer;  
   // Create an actor for each time slice
   for (unsigned int numImage = 0; numImage < mSlicer->GetImage()->GetVTKImages().size(); numImage++) {
@@ -84,7 +85,7 @@ void vvImageContour::SetSlicer(vvSlicer * slicer)
 
 //------------------------------------------------------------------------------
 void vvImageContour::SetImage(vvImage::Pointer image) 
-{ //out << __func__ << endl;
+{ 
   for (unsigned int numImage = 0; numImage < image->GetVTKImages().size(); numImage++) {
 #if VTK_MAJOR_VERSION <= 5
     mClipperList[numImage]->SetInput(image->GetVTKImages()[numImage]);
@@ -100,7 +101,7 @@ void vvImageContour::SetImage(vvImage::Pointer image)
 
 //------------------------------------------------------------------------------
 void vvImageContour::SetPreserveMemoryModeEnabled(bool b) 
-{ //out << __func__ << endl;
+{ 
   // FastCache mode work only if threshold is always the same
   if (mDisplayModeIsPreserveMemory == b) return;
   mDisplayModeIsPreserveMemory = b;
@@ -121,10 +122,10 @@ void vvImageContour::SetPreserveMemoryModeEnabled(bool b)
 
 //------------------------------------------------------------------------------
 void vvImageContour::SetColor(double r, double g, double b) 
-{ //out << __func__ << endl;
+{ 
   for(unsigned int i=0; i<mSquaresActorList.size(); i++) {
     mSquaresActorList[i]->GetProperty()->SetColor(r,g,b);
-    mSquaresActorList[i]->GetProperty()->SetOpacity(0.995);
+    mSquaresActorList[i]->GetProperty()->SetOpacity(0.995); //in order to get VTK to turn on the alpha-blending in OpenGL
   }
 }
 //------------------------------------------------------------------------------
@@ -132,7 +133,7 @@ void vvImageContour::SetColor(double r, double g, double b)
 
 //------------------------------------------------------------------------------
 void vvImageContour::SetLineWidth(double w)
-{ //out << __func__ << endl;
+{ 
   for(unsigned int i=0; i<mSquaresActorList.size(); i++) {
     mSquaresActorList[i]->GetProperty()->SetLineWidth(w);
   }
@@ -142,7 +143,7 @@ void vvImageContour::SetLineWidth(double w)
 
 //------------------------------------------------------------------------------
 void vvImageContour::HideActors() 
-{ //out << __func__ << endl;
+{ 
   if (!mSlicer) return;
   mSlice = mSlicer->GetSlice();
   for(unsigned int i=0; i<mSquaresActorList.size(); i++) {
@@ -154,7 +155,7 @@ void vvImageContour::HideActors()
 
 //------------------------------------------------------------------------------
 void vvImageContour::ShowActors() 
-{ //out << __func__ << endl;
+{ 
   if (!mSlicer) return;
   mSlice = mSlicer->GetSlice();
   mTSlice = mSlicer->GetTSlice();
@@ -166,7 +167,7 @@ void vvImageContour::ShowActors()
 
 //------------------------------------------------------------------------------
 void vvImageContour::SetDepth(double d) 
-{ //out << __func__ << endl;
+{ 
   mDepth = d;
   // Move the actor to be visible
   double position[3] = {0, 0, 0};
@@ -180,7 +181,7 @@ void vvImageContour::SetDepth(double d)
 
 //------------------------------------------------------------------------------
 void vvImageContour::Update(double value) 
-{ //out << __func__ << endl;
+{ 
   if (!mSlicer) return;
   if (mPreviousValue == value) {
     if (mPreviousSlice == mSlicer->GetSlice()) {
@@ -217,7 +218,7 @@ void vvImageContour::Update(double value)
 
 //------------------------------------------------------------------------------
 void vvImageContour::UpdateWithPreserveMemoryMode() 
-{ //out << __func__ << endl;
+{ 
   // Only change actor visibility if tslice change
   mPreviousTslice = mTSlice;
   mTSlice = mSlicer->GetTSlice();
@@ -234,14 +235,14 @@ void vvImageContour::UpdateWithPreserveMemoryMode()
     if (mPreviousTslice != -1) mSquaresActorList[mPreviousTslice]->VisibilityOff();
   }
 
-  mSlicer->Render();
+  //mSlicer->Render();
 }
 //------------------------------------------------------------------------------
 
 
 //------------------------------------------------------------------------------
 void vvImageContour::InitializeCacheMode() 
-{ //out << __func__ << endl;
+{ 
 clitkExceptionMacro("TODO : not implemented yet");
   mPreviousSlice = mPreviousOrientation = 0;
   int dim = mSlicer->GetImage()->GetNumberOfDimensions();
@@ -260,7 +261,7 @@ clitkExceptionMacro("TODO : not implemented yet");
 
 //------------------------------------------------------------------------------
 int vvImageContour::ComputeCurrentOrientation() 
-{ //out << __func__ << endl;
+{ 
   // Get extent of image in the slicer
   int* extent = mSlicer->GetImageActor()->GetDisplayExtent();
 
@@ -279,7 +280,7 @@ int vvImageContour::ComputeCurrentOrientation()
 
 //------------------------------------------------------------------------------
 void vvImageContour::UpdateWithFastCacheMode() 
-{ //out << __func__ << endl;
+{ 
 clitkExceptionMacro("TODO : not implemented yet");
 
   // Compute orientation
@@ -308,7 +309,7 @@ clitkExceptionMacro("TODO : not implemented yet");
 
 //------------------------------------------------------------------------------
 void vvImageContour::CreateNewActor(int numImage) 
-{ //out << __func__ << endl;
+{ 
   vtkSmartPointer<vtkActor> squaresActor = vtkSmartPointer<vtkActor>::New();
   vtkSmartPointer<vtkImageClip> clipper = vtkSmartPointer<vtkImageClip>::New();
   vtkSmartPointer<vtkMarchingSquares> squares = vtkSmartPointer<vtkMarchingSquares>::New();
@@ -337,7 +338,7 @@ void vvImageContour::CreateNewActor(int numImage)
   squaresMapper->ScalarVisibilityOff();
   squaresActor->SetMapper(squaresMapper);
   squaresActor->GetProperty()->SetColor(1.0,0,0);
-  squaresActor->GetProperty()->SetOpacity(0.995);
+  squaresActor->GetProperty()->SetOpacity(0.995); //in order to get VTK to turn on the alpha-blending in OpenGL
   squaresActor->SetPickable(0);
   squaresActor->VisibilityOff();
   mSlicer->GetRenderer()->AddActor(squaresActor);
@@ -356,7 +357,7 @@ void vvImageContour::UpdateActor(vtkActor * actor,
                                  vtkMarchingSquares * squares, 
                                  vtkImageClip * clipper, 
                                  double threshold, int orientation, int slice) 
-{ //out << __func__ << endl;
+{ 
   // Set parameter for the MarchigSquare
   squares->SetValue(0, threshold);
   squares->Update();