]> Creatis software - cpPlugins.git/blobdiff - lib/cpPlugins/Image.cxx
...
[cpPlugins.git] / lib / cpPlugins / Image.cxx
index 04d28da6069585e16d8aacf162fa065d8fd2deaf..261d966674fc7f54e6dca307acc58174d4d8fc53 100644 (file)
@@ -1,6 +1,7 @@
 #include <cpPlugins/Image.h>
 
 #include <vtkImageActor.h>
+#include <vtkImageProperty.h>
 #include <vtkImageSliceMapper.h>
 
 // -------------------------------------------------------------------------
@@ -28,18 +29,6 @@ SetVTK( vtkObjectBase* o )
   std::exit( 1 );
 }
 
-// -------------------------------------------------------------------------
-vtkProp* cpPlugins::Image::
-CreateVTKActor( )
-{
-  vtkImageSliceMapper* mapper = vtkImageSliceMapper::New( );
-  vtkImageActor* actor = vtkImageActor::New( );
-  mapper->SetInputData( this->GetVTK< vtkImageData >( ) );
-  actor->SetMapper( mapper );
-  mapper->Delete( );
-  return( actor );
-}
-
 // -------------------------------------------------------------------------
 cpPlugins::Image::
 Image( )
@@ -53,4 +42,23 @@ cpPlugins::Image::
 {
 }
 
+// -------------------------------------------------------------------------
+void cpPlugins::Image::
+_CreateVTKActor( ) const
+{
+  vtkImageData* image =
+    const_cast< vtkImageData* >( this->GetVTK< vtkImageData >( ) );
+  if( image != NULL )
+  {
+    vtkImageSliceMapper* mapper = vtkImageSliceMapper::New( );
+    vtkImageActor* actor = vtkImageActor::New( );
+    mapper->SetInputData( image );
+    actor->SetMapper( mapper );
+    actor->GetProperty( )->SetInterpolationTypeToNearest( );
+    this->m_Actor = actor;
+    mapper->Delete( );
+
+  } // fi
+}
+
 // eof - $RCSfile$