]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGComplexBoxPortView.cxx
#3066 bbGEditor Bug New Normal - Refresh vtk objects
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsVtkGUIEditorGraphic / vtkGComplexBoxPortView.cxx
index 37613747b0fc5fa9c26e93f746e167fdc1b5ef57..c104877ee2323d20b052c260c9cd457d480bb541 100644 (file)
@@ -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$
@@ -41,39 +67,38 @@ namespace bbtk {
 
     //=========================================================================
 
-    vtkGComplexBoxPortView::vtkGComplexBoxPortView( ) {
+    vtkGComplexBoxPortView::vtkGComplexBoxPortView( ) 
+       {
     }
 
     //=========================================================================
 
-    vtkGComplexBoxPortView::~vtkGComplexBoxPortView( ) {
+    vtkGComplexBoxPortView::~vtkGComplexBoxPortView( ) 
+       {
     }
 
-    //=========================================================================
 
-    void vtkGComplexBoxPortView::update( int idController , int command ) {
+/*EED Borrame
+    //=========================================================================
+    void vtkGComplexBoxPortView::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=GPOSITION_Z
-
         _pts->SetPoint( 0 , xInic , yInic , zInic ) ;
         _pts->SetPoint( 1 , xInic , yFin , zInic ) ;
         _pts->SetPoint( 2 , xFin , yFin , zFin ) ;
         _pts->SetPoint( 3 , xFin , yInic , zFin ) ;
-
         updatePorts( ) ;
-
-        _borderPolyMapper->Modified( ) ;
+//        _borderPolyMapper->Modified( ) ;
         _fillPolyMapper->Modified( ) ;
         //-----------
 
-        //-----------
         setRefreshWaiting( ) ;
     }
+*/
 
     //=========================================================================
 
@@ -82,10 +107,10 @@ namespace bbtk {
 
         //------------
         _pts = vtkPoints::New( ) ;
-        vtkCellArray *lines = vtkCellArray::New( ) ;
-        vtkPolyData *_pd = vtkPolyData::New( ) ;
-        _borderPolyMapper = vtkPolyDataMapper::New( ) ;
-        _borderObjectActor = vtkActor::New( ) ;
+//        vtkCellArray *lines = vtkCellArray::New( ) ;
+//        vtkPolyData *_pd = vtkPolyData::New( ) ;
+//        _borderPolyMapper = vtkPolyDataMapper::New( ) ;
+//        _borderObjectActor = vtkActor::New( ) ;
 
         _pts->SetNumberOfPoints( 4 ) ;
 
@@ -100,69 +125,63 @@ namespace bbtk {
         //EED          _pts->SetPoint(2, xFin, yFin, zFin );
         //EED          _pts->SetPoint(3, xFin, yInic, zFin );
 
-
-        _pts->SetPoint( 0 , -1000 , -1000 , -1000 ) ;
-        _pts->SetPoint( 1 , xInic , yFin , zInic ) ;
-        _pts->SetPoint( 2 , 1000 , 1000 , 1000 ) ;
-        _pts->SetPoint( 3 , xFin , yInic , zFin ) ;
+//EED 2017-03-02
+//        _pts->SetPoint( 0 , -1000 , -1000 , -1000 ) ;
+//        _pts->SetPoint( 1 , xInic , yFin , zInic ) ;
+//        _pts->SetPoint( 2 , 1000 , 1000 , 1000 ) ;
+//        _pts->SetPoint( 3 , xFin , yInic , zFin ) ;
 
 
-        lines->InsertNextCell( 5 ) ;
-        lines->InsertCellPoint( 0 ) ;
-        lines->InsertCellPoint( 1 ) ;
-        lines->InsertCellPoint( 2 ) ;
-        lines->InsertCellPoint( 3 ) ;
-        lines->InsertCellPoint( 0 ) ;
-
-        _pd->SetPoints( _pts ) ;
-        _pd->SetLines( lines ) ;
-
-        _borderPolyMapper->SetInput( _pd ) ;
-        _borderObjectActor->SetMapper( _borderPolyMapper ) ;
-        _borderPolyMapper->Modified( ) ;
+//        lines->InsertNextCell( 5 ) ;
+//        lines->InsertCellPoint( 0 ) ;
+//        lines->InsertCellPoint( 1 ) ;
+//        lines->InsertCellPoint( 2 ) ;
+//        lines->InsertCellPoint( 3 ) ;
+//        lines->InsertCellPoint( 0 ) ;
+//      _pd->SetPoints( _pts ) ;
+//        _pd->SetLines( lines ) ;
+//        _borderPolyMapper->SetInput( _pd ) ;
+//        _borderObjectActor->SetMapper( _borderPolyMapper ) ;
+//        _borderPolyMapper->Modified( ) ;
 
 
         ///************************* FILL *************************
-
         vtkCellArray *strip = vtkCellArray::New( ) ;
         vtkPolyData *pdFill = vtkPolyData::New( ) ;
         _fillPolyMapper = vtkPolyDataMapper::New( ) ;
         _fillObjectActor = vtkActor::New( ) ;
-
         // RaC In the actual version, zInic=zFin=GPOSITION_Z
-
         strip->InsertNextCell( 5 ) ;
         strip->InsertCellPoint( 0 ) ;
         strip->InsertCellPoint( 1 ) ;
         strip->InsertCellPoint( 2 ) ;
         strip->InsertCellPoint( 0 ) ;
         strip->InsertCellPoint( 3 ) ;
-
         pdFill->SetPoints( _pts ) ;
         pdFill->SetStrips( strip ) ;
-
         _fillPolyMapper->SetInput( pdFill ) ;
         _fillObjectActor->SetMapper( _fillPolyMapper ) ;
         _fillPolyMapper->Modified( ) ;
-
         ///************************* FILL *************************
 
+               createVtkInputOutputPorts();
+
     }
 
     //=========================================================================
 
     void vtkGComplexBoxPortView::addVtkActors( )//virtual
     {
-        _baseView->GetRenderer( )->AddActor( _borderObjectActor ) ;
-        vtkGObjectView::addVtkActors( ) ;
+//        _baseView->GetRenderer( )->AddActor( _borderObjectActor ) ;
+        vtkGBoxView::addVtkActors( ) ;
     }
 
     //=========================================================================
 
     void vtkGComplexBoxPortView::removeVtkActors( )//virtual
     {
-        _baseView->GetRenderer( )->RemoveActor( _borderObjectActor ) ;
-        vtkGObjectView::removeVtkActors( ) ;
+//        _baseView->GetRenderer( )->RemoveActor( _borderObjectActor ) ;
+        vtkGBoxView::removeVtkActors( ) ;
     }
 
     //=========================================================================
@@ -170,31 +189,29 @@ namespace bbtk {
     void vtkGComplexBoxPortView::updateColors( ) {
         _fillObjectActor->GetProperty( )->SetAmbient( 0.6 ) ;
 
-        if ( _state == NOTHING_HAPPENS ) {
-            _borderObjectActor->GetProperty( )->SetLineWidth( 1 ) ;
-
-
+        if ( _state == NOTHING_HAPPENS ) 
+       {
+//            _borderObjectActor->GetProperty( )->SetLineWidth( 1 ) ;
             GComplexBoxPortModel *portModel = ( GComplexBoxPortModel* ) _model ;
             if ( portModel->getComplexPortType( ) == GCOMPLEXINPUTPORT ) {
                 _fillObjectActor->GetProperty( )->SetColor( COMPLEXINPUTPORTFILL_NH_R , COMPLEXINPUTPORTFILL_NH_G , COMPLEXINPUTPORTFILL_NH_B ) ;
-                _borderObjectActor->GetProperty( )->SetColor( COMPLEXINPUTPORTBORDER_NH_R , COMPLEXINPUTPORTBORDER_NH_G , COMPLEXINPUTPORTBORDER_NH_B ) ;
+//                _borderObjectActor->GetProperty( )->SetColor( COMPLEXINPUTPORTBORDER_NH_R , COMPLEXINPUTPORTBORDER_NH_G , COMPLEXINPUTPORTBORDER_NH_B ) ;
             } else if ( portModel->getComplexPortType( ) == GCOMPLEXOUTPUTPORT ) {
                 _fillObjectActor->GetProperty( )->SetColor( COMPLEXOUTPUTPORTFILL_NH_R , COMPLEXOUTPUTPORTFILL_NH_G , COMPLEXOUTPUTPORTFILL_NH_B ) ;
-                _borderObjectActor->GetProperty( )->SetColor( COMPLEXOUTPUTPORTBORDER_NH_R , COMPLEXOUTPUTPORTBORDER_NH_G , COMPLEXOUTPUTPORTBORDER_NH_B ) ;
+//                _borderObjectActor->GetProperty( )->SetColor( COMPLEXOUTPUTPORTBORDER_NH_R , COMPLEXOUTPUTPORTBORDER_NH_G , COMPLEXOUTPUTPORTBORDER_NH_B ) ;
             }
 
         } else if ( _state == HIGHLIGHTED ) {
-            _borderObjectActor->GetProperty( )->SetLineWidth( 2 ) ;
-
-            _borderObjectActor->GetProperty( )->SetColor( BOXBORDER_HIGHLIGHTED_R , BOXBORDER_HIGHLIGHTED_G , BOXBORDER_HIGHLIGHTED_B ) ;
+//            _borderObjectActor->GetProperty( )->SetLineWidth( 2 ) ;
+//            _borderObjectActor->GetProperty( )->SetColor( BOXBORDER_HIGHLIGHTED_R , BOXBORDER_HIGHLIGHTED_G , BOXBORDER_HIGHLIGHTED_B ) ;
             _fillObjectActor->GetProperty( )->SetColor( BOXFILL_HIGHLIGHTED_R , BOXFILL_HIGHLIGHTED_G , BOXFILL_HIGHLIGHTED_B ) ;
         } else if ( _state == DRAG ) {
-            _borderObjectActor->GetProperty( )->SetLineWidth( 1.2 ) ;
-            _borderObjectActor->GetProperty( )->SetColor( BOXBORDER_DRAG_R , BOXBORDER_DRAG_G , BOXBORDER_DRAG_B ) ;
+//            _borderObjectActor->GetProperty( )->SetLineWidth( 1.2 ) ;
+//            _borderObjectActor->GetProperty( )->SetColor( BOXBORDER_DRAG_R , BOXBORDER_DRAG_G , BOXBORDER_DRAG_B ) ;
             _fillObjectActor->GetProperty( )->SetColor( BOXFILL_DRAG_R , BOXFILL_DRAG_G , BOXFILL_DRAG_B ) ;
         } else if ( _state == SELECTED ) {
-            _borderObjectActor->GetProperty( )->SetLineWidth( 2 ) ;
-            _borderObjectActor->GetProperty( )->SetColor( BOXBORDER_SELECTED_R , BOXBORDER_SELECTED_G , BOXBORDER_SELECTED_B ) ;
+//            _borderObjectActor->GetProperty( )->SetLineWidth( 2 ) ;
+//            _borderObjectActor->GetProperty( )->SetColor( BOXBORDER_SELECTED_R , BOXBORDER_SELECTED_G , BOXBORDER_SELECTED_B ) ;
             _fillObjectActor->GetProperty( )->SetColor( BOXFILL_SELECTED_R , BOXFILL_SELECTED_G , BOXFILL_SELECTED_B ) ;
         }
     }