]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuImageActor.cxx
f95af03aa17cadf31ee64cceec722a46dcd10d8e
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuImageActor.cxx
1 #include "bbmaracasvisuImageActor.h"
2 #include "bbcreaMaracasVisuPackage.h"
3
4 #include "vtkImageShiftScale.h" 
5
6 namespace bbcreaMaracasVisu
7 {
8
9 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,ImageActor)
10 BBTK_BLACK_BOX_IMPLEMENTATION(ImageActor,bbtk::AtomicBlackBox);
11 void ImageActor::Process()
12 {
13
14                 //JCP 04/04/09
15                 vtkRenderer *render                             = bbGetInputRenderer();
16                 vtkImageData *img                               = bbGetInputIn();
17                 vtkLinearTransform* transform   = bbGetInputTransform();
18
19                 if(img != NULL){
20                         imageactor = vtkImageActor::New();
21                         vtkImageShiftScale *imageshiftscale = vtkImageShiftScale::New();
22                         imageshiftscale->SetInput( img );       
23                         imageshiftscale->SetOutputScalarTypeToUnsignedChar();   
24                         imageactor->SetInput( imageshiftscale->GetOutput() );   
25                         if (transform!=NULL){
26                           imageactor->SetUserTransform( transform );    
27                         } // transform
28                         if(render != NULL ){
29                                 render->AddActor( imageactor );
30                         } // render
31                         bbSetOutputOut(imageactor);
32                 } // img
33                         
34                         
35                 // Interface Update
36                 if ((firsttime==true) && (bbGetInputRenderer()!=NULL ))
37                 {
38                                 firsttime=false;
39                                 bbGetInputRenderer()->AddActor( imageactor );
40                 }
41                 
42                 bbSetOutputOut(imageactor);
43         
44 }
45 void ImageActor::bbUserSetDefaultValues()
46 {
47     firsttime = true;
48     imageactor = NULL;
49
50     bbSetInputIn(NULL);
51     bbSetInputTransform(NULL);
52     bbSetInputRenderer(NULL);
53   
54 }
55
56         
57         //-----------------------------------------------------------------     
58         void ImageActor::bbUserInitializeProcessing()
59         {
60         }
61         
62         //-----------------------------------------------------------------     
63         void ImageActor::bbUserFinalizeProcessing()
64         {
65         }
66         
67         //-----------------------------------------------------------------     
68 }
69 // EO namespace bbcreaMaracasVisu
70
71