X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsVtkGUIEditorGraphic%2FvtkGPortView.cxx;h=9376a6710e1a4bd1f6920469db53a0184de15feb;hb=10012627035234dfbe7a9028e393d1f912d15e8f;hp=ba9a3d2ed2a0b37aebf64db9b081de64784a9d27;hpb=0dfaa8eefbfad1092161af92ba548f1172ed6652;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx index ba9a3d2..9376a67 100644 --- a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx +++ b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx @@ -1,3 +1,29 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ +*/ + + /*========================================================================= Program: bbtk Module: $RCSfile$ @@ -51,25 +77,19 @@ namespace bbtk { //========================================================================= - void vtkGPortView::update( int idController , int command ) { - + void vtkGPortView::update( int idController , int command ) +{ updateColors( ) ; double xInic , yInic , zInic , xFin , yFin , zFin ; - _model->getInicPoint( xInic , yInic , zInic ) ; _model->getFinalPoint( xFin , yFin , zFin ) ; - - // RaC In the actual version, zInic=zFin=900 - + // RaC In the actual version, zInic=zFin=GPOSITION_Z double mid = ( xInic + xFin ) / 2 ; - _pts->SetPoint( 0 , xInic , yInic , zInic ) ; _pts->SetPoint( 1 , mid , yFin , zInic ) ; _pts->SetPoint( 2 , xFin , yInic , zFin ) ; - _fillPolyMapper->Modified( ) ; - //----------- setRefreshWaiting( ) ; } @@ -78,15 +98,13 @@ namespace bbtk { void vtkGPortView::createVtkObjects( ) //virtual { - _pts = vtkPoints::New( ) ; - _pts->SetNumberOfPoints( 3 ) ; double xInic , yInic , zInic , xFin , yFin , zFin ; _model->getInicPoint( xInic , yInic , zInic ) ; _model->getFinalPoint( xFin , yFin , zFin ) ; - // RaC In the actual version, zInic=zFin=900 + // RaC In the actual version, zInic=zFin=GPOSITION_Z double mid = ( xInic + xFin ) / 2 ; @@ -94,19 +112,23 @@ namespace bbtk { //EED _pts->SetPoint(1, mid, yFin, zInic ); //EED _pts->SetPoint(2, xFin, yInic, zFin ); - _pts->SetPoint( 0 , -1000 , -1000 , -1000 ) ; - _pts->SetPoint( 1 , mid , yFin , zInic ) ; - _pts->SetPoint( 2 , 1000 , 1000 , 1000 ) ; + _pts = vtkPoints::New( ) ; + _pts->SetNumberOfPoints( 3 ) ; + +//EED 2017-03-02 +// _pts->SetPoint( 0 , -1000 , -1000 , -1000 ) ; +// _pts->SetPoint( 1 , mid , yFin , zInic ) ; +// _pts->SetPoint( 2 , 1000 , 1000 , 1000 ) ; ///************************* FILL ************************* - vtkCellArray *strip = vtkCellArray::New( ) ; - vtkPolyData *pdFill = vtkPolyData::New( ) ; - _fillPolyMapper = vtkPolyDataMapper::New( ) ; - _fillObjectActor = vtkActor::New( ) ; + vtkCellArray *strip = vtkCellArray::New( ) ; + vtkPolyData *pdFill = vtkPolyData::New( ) ; + _fillPolyMapper = vtkPolyDataMapper::New( ) ; + _fillObjectActor = vtkActor::New( ) ; - // RaC In the actual version, zInic=zFin=900 + // RaC In the actual version, zInic=zFin=GPOSITION_Z strip->InsertNextCell( 3 ) ; strip->InsertCellPoint( 0 ) ; @@ -116,7 +138,13 @@ namespace bbtk { pdFill->SetPoints( _pts ) ; pdFill->SetStrips( strip ) ; +//EED 2017-01-01 Migration VTK7 +#if VTK_MAJOR_VERSION <= 5 _fillPolyMapper->SetInput( pdFill ) ; +#else + _fillPolyMapper->SetInputData( pdFill ) ; +#endif + _fillObjectActor->SetMapper( _fillPolyMapper ) ; _fillPolyMapper->Modified( ) ; @@ -129,29 +157,37 @@ namespace bbtk { //========================================================================= - void vtkGPortView::updateColors( ) { - _fillObjectActor->GetProperty( )->SetColor( 0.45 , 0.45 , 0.45 ) ; + void vtkGPortView::updateColors( ) + { +//EED2017-04-08 + float rgb[3]; + getColors(rgb); + _fillObjectActor->GetProperty( )->SetColor( rgb[0] , rgb[1] , rgb[2] ) ; + } + + //========================================================================= +//EED2017-04-08 + void vtkGPortView::getColors(float* rgb) + { + rgb[0]=0.45; rgb[1]=0.45; rgb[2]=0.45; if ( _state == POSSIBLE_CONNECTION ) { - _fillObjectActor->GetProperty( )->SetColor( 1 , 1 , 0 ) ; + rgb[0]=1; rgb[1]=1; rgb[2]=0; } else if ( _state == SELECTED_POSSIBLE_CONNECTION ) { - _fillObjectActor->GetProperty( )->SetColor( 0 , 1 , 0 ) ; + rgb[0]=0; rgb[1]=1; rgb[2]=0; } else if ( _state == HIGHLIGHTED ) { - _fillObjectActor->GetProperty( )->SetColor( 0 , 0 , 1 ) ; + rgb[0]=0; rgb[1]=0; rgb[2]=1; } else { GPortModel* portm = ( GPortModel* ) _model ; if ( portm->isConnected( ) ) { - _fillObjectActor->GetProperty( )->SetColor( 0.15 , 0.15 , 0.15 ) ; + rgb[0]=0.15; rgb[1]=0.15; rgb[2]=0.15; } else if ( portm->isValueSet( ) ) { - _fillObjectActor->GetProperty( )->SetColor( 0.55 , 0.25 , 0.25 ) ; + rgb[0]=0.55; rgb[1]=0.25; rgb[2]=0.25; } else { - _fillObjectActor->GetProperty( )->SetColor( 0.45 , 0.45 , 0.45 ) ; - } - } - } - - //========================================================================= - + rgb[0]=0.45; rgb[1]=0.45; rgb[2]=0.45; + } // if portm + } // if _state + } } // EO namespace bbtk