X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FEditorGraphicBBS%2FbbsVtkGUIEditorGraphic%2FvtkGPortView.cxx;h=ba9a3d2ed2a0b37aebf64db9b081de64784a9d27;hb=0dfaa8eefbfad1092161af92ba548f1172ed6652;hp=40e9478051cc50b9554afee148347d130c6375fb;hpb=f4dd416d1d3a91b9d684f55a14d78c6b54f2725a;p=bbtkGEditor.git diff --git a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx index 40e9478..ba9a3d2 100644 --- a/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx +++ b/lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGPortView.cxx @@ -8,153 +8,152 @@ Version: $Revision$ /* --------------------------------------------------------------------- -* Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) -* Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux -* -* 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. -* ------------------------------------------------------------------------ */ + * Copyright (c) CREATIS-LRMN (Centre de Recherche en Imagerie Medicale) + * Authors : Eduardo Davila, Laurent Guigues, Jean-Pierre Roux + * + * 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. + * ------------------------------------------------------------------------ */ /** -* \file -* \brief Class bbtk::vtkGPortView -*/ + * \file + * \brief Class bbtk::vtkGPortView + */ #include "vtkGPortView.h" -namespace bbtk -{ +namespace bbtk { - //========================================================================= - vtkGPortView::vtkGPortView() - { - } + //========================================================================= - //========================================================================= - vtkGPortView::~vtkGPortView() - { - } + vtkGPortView::vtkGPortView( ) { + } - //========================================================================= - 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); + vtkGPortView::~vtkGPortView( ) { + } - // RaC In the actual version, zInic=zFin=900 + //========================================================================= - double mid = (xInic+xFin)/2; + void vtkGPortView::update( int idController , int command ) { - _pts->SetPoint(0, xInic, yInic, zInic ); - _pts->SetPoint(1, mid, yFin, zInic ); - _pts->SetPoint(2, xFin, yInic, zFin ); + updateColors( ) ; - _fillPolyMapper->Modified(); - - //----------- - setRefreshWaiting(); - } + double xInic , yInic , zInic , xFin , yFin , zFin ; - //========================================================================= + _model->getInicPoint( xInic , yInic , zInic ) ; + _model->getFinalPoint( xFin , yFin , zFin ) ; - void vtkGPortView::createVtkObjects() //virtual - { - _pts = vtkPoints::New(); - _pts->SetNumberOfPoints(3); + // RaC In the actual version, zInic=zFin=900 - double xInic, yInic,zInic,xFin, yFin,zFin; + double mid = ( xInic + xFin ) / 2 ; - _model->getInicPoint(xInic,yInic,zInic); - _model->getFinalPoint(xFin, yFin,zFin); + _pts->SetPoint( 0 , xInic , yInic , zInic ) ; + _pts->SetPoint( 1 , mid , yFin , zInic ) ; + _pts->SetPoint( 2 , xFin , yInic , zFin ) ; - // RaC In the actual version, zInic=zFin=900 + _fillPolyMapper->Modified( ) ; - double mid = (xInic+xFin)/2; + //----------- + setRefreshWaiting( ) ; + } -//EED _pts->SetPoint(0, xInic, yInic, zInic ); -//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 ); - - - ///************************* FILL ************************* + void vtkGPortView::createVtkObjects( ) //virtual + { + _pts = vtkPoints::New( ) ; + _pts->SetNumberOfPoints( 3 ) ; - vtkCellArray *strip = vtkCellArray::New(); - vtkPolyData *pdFill = vtkPolyData::New(); - _fillPolyMapper=vtkPolyDataMapper::New(); - _fillObjectActor=vtkActor::New(); + double xInic , yInic , zInic , xFin , yFin , zFin ; - // RaC In the actual version, zInic=zFin=900 + _model->getInicPoint( xInic , yInic , zInic ) ; + _model->getFinalPoint( xFin , yFin , zFin ) ; - strip->InsertNextCell(3); - strip->InsertCellPoint(0); - strip->InsertCellPoint(1); - strip->InsertCellPoint(2); - - pdFill->SetPoints( _pts ); - pdFill->SetStrips( strip ); + // RaC In the actual version, zInic=zFin=900 - _fillPolyMapper->SetInput(pdFill); - _fillObjectActor->SetMapper(_fillPolyMapper); - _fillPolyMapper->Modified(); + double mid = ( xInic + xFin ) / 2 ; - ///************************* FILL ************************* + //EED _pts->SetPoint(0, xInic, yInic, zInic ); + //EED _pts->SetPoint(1, mid, yFin, zInic ); + //EED _pts->SetPoint(2, xFin, yInic, zFin ); - updateColors(); + _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( ) ; - void vtkGPortView::updateColors() - { - _fillObjectActor->GetProperty()->SetColor(0.45,0.45,0.45); + // RaC In the actual version, zInic=zFin=900 - if(_state==HIGHLIGHTED) - { - _fillObjectActor->GetProperty()->SetColor( 0 , 0 , 1 ); - } else { - GPortModel* portm = (GPortModel*)_model; - if(portm->isConnected()) - { - _fillObjectActor->GetProperty()->SetColor(0.15,0.15,0.15); - } - else if(portm->isValueSet()) - { - _fillObjectActor->GetProperty()->SetColor(0.55,0.25,0.25); - } else { - _fillObjectActor->GetProperty()->SetColor(0.45,0.45,0.45); - } - } - } + strip->InsertNextCell( 3 ) ; + strip->InsertCellPoint( 0 ) ; + strip->InsertCellPoint( 1 ) ; + strip->InsertCellPoint( 2 ) ; - //========================================================================= + pdFill->SetPoints( _pts ) ; + pdFill->SetStrips( strip ) ; + _fillPolyMapper->SetInput( pdFill ) ; + _fillObjectActor->SetMapper( _fillPolyMapper ) ; + _fillPolyMapper->Modified( ) ; -} // EO namespace bbtk + ///************************* FILL ************************* + + updateColors( ) ; + + + } + + //========================================================================= + + void vtkGPortView::updateColors( ) { + _fillObjectActor->GetProperty( )->SetColor( 0.45 , 0.45 , 0.45 ) ; + + if ( _state == POSSIBLE_CONNECTION ) { + _fillObjectActor->GetProperty( )->SetColor( 1 , 1 , 0 ) ; + } else if ( _state == SELECTED_POSSIBLE_CONNECTION ) { + _fillObjectActor->GetProperty( )->SetColor( 0 , 1 , 0 ) ; + } else if ( _state == HIGHLIGHTED ) { + _fillObjectActor->GetProperty( )->SetColor( 0 , 0 , 1 ) ; + } else { + GPortModel* portm = ( GPortModel* ) _model ; + if ( portm->isConnected( ) ) { + _fillObjectActor->GetProperty( )->SetColor( 0.15 , 0.15 , 0.15 ) ; + } else if ( portm->isValueSet( ) ) { + _fillObjectActor->GetProperty( )->SetColor( 0.55 , 0.25 , 0.25 ) ; + } else { + _fillObjectActor->GetProperty( )->SetColor( 0.45 , 0.45 , 0.45 ) ; + } + } + } + + //========================================================================= + + +} // EO namespace bbtk // EOF