X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=bbtk_creaVtk_PKG%2Fsrc%2FbbcreaVtkActor.cxx;h=df2080c97d45c0599366dc0bc5b9da72b6846525;hb=e3ed15fb6292544d9440bfad4e39dc6c74824f51;hp=6b002489e95175181c7ef321052d601dbd0b5c8f;hpb=71174bb44a65806fe33fe736faba98d8bf8d89e5;p=creaVtk.git diff --git a/bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx b/bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx index 6b00248..df2080c 100644 --- a/bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx +++ b/bbtk_creaVtk_PKG/src/bbcreaVtkActor.cxx @@ -16,7 +16,6 @@ BBTK_BLACK_BOX_IMPLEMENTATION(Actor,bbtk::AtomicBlackBox); //===== void Actor::Process() { - // THE MAIN PROCESSING METHOD BODY // Here we simply set the input 'In' value to the output 'Out' // And print out the output value @@ -28,42 +27,40 @@ void Actor::Process() // (the one provided in the attribute 'name' of the tag 'input') // * TYPE is the C++ type of the input/output // (the one provided in the attribute 'type' of the tag 'input') - // bbSetOutputOut( bbGetInputIn() ); // std::cout << "Output value = " <GetClassName(); - std::string wantedClass = "vtkOpenGLActor"; - if(className == wantedClass) - { - ((vtkActor*)vtkprop3D)->GetProperty()->SetOpacity( bbGetInputOpacity() ); - } - - if ( bbGetInputTransform()!=NULL ) - { - vtkprop3D->SetUserTransform( bbGetInputTransform() ); - } - -// bbSetOutputOut( vtkactor ); - - // Interface Update - - if ((bbGetInputRenderer()!=NULL) && ( backActive!=bbGetInputActive() )) + if (bbGetInputIn()!=NULL) { - - if (bbGetInputActive()==true ) - { - bbGetInputRenderer()->AddActor( vtkprop3D ); - } else { - bbGetInputRenderer()->RemoveActor( vtkprop3D ); - } //if Active - backActive=bbGetInputActive(); - } // if Renderer - + vtkProp3D* vtkprop3D=bbGetInputIn(); + std::string className = vtkprop3D->GetClassName(); + std::string wantedClass = "vtkOpenGLActor"; + if(className == wantedClass) + { + vtkActor *vtkactor=((vtkActor*)vtkprop3D); + vtkactor->GetProperty()->SetOpacity( bbGetInputOpacity() ); + vtkactor->GetProperty()->SetLineWidth( bbGetInputLineWidth() ); + double r = bbGetInputColor()[0]; + double g = bbGetInputColor()[1]; + double b = bbGetInputColor()[2]; + vtkactor->GetProperty()->SetColor( r,g,b ); + } + if ( bbGetInputTransform()!=NULL ) + { + vtkprop3D->SetUserTransform( bbGetInputTransform() ); + } + // bbSetOutputOut( vtkactor ); + // Interface Update + if ((bbGetInputRenderer()!=NULL) && ( backActive!=bbGetInputActive() )) + { + if (bbGetInputActive()==true ) + { + bbGetInputRenderer()->AddActor( vtkprop3D ); + } else { + bbGetInputRenderer()->RemoveActor( vtkprop3D ); + } //if Active + backActive=bbGetInputActive(); + } // if Renderer + }// bbGetInputIn } //===== // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost) @@ -73,11 +70,19 @@ void Actor::bbUserSetDefaultValues() // SET HERE THE DEFAULT INPUT/OUTPUT VALUES OF YOUR BOX // Here we initialize the input 'In' to 0 - bbSetInputActive(false); - backActive=bbGetInputActive(); - bbSetInputIn(NULL); - bbSetInputOpacity(1); - bbSetInputRenderer(NULL); + + std::vector color; + color.push_back(1); + color.push_back(0); + color.push_back(0); + bbSetInputActive( false ); + backActive=bbGetInputActive(); + bbSetInputIn( NULL ); + bbSetInputOpacity( 1 ); + bbSetInputLineWidth( 0.5 ); + bbSetInputRenderer( NULL ); + bbSetInputColor( color ); + bbSetInputTransform( NULL ); } //=====