]> Creatis software - bbtkGEditor.git/blobdiff - lib/EditorGraphicBBS/bbsVtkGUIEditorGraphic/vtkGComplexBoxPortView.cxx
#3057 bbGEditor Feature New Normal - optimizing of vtk actors management (input...
[bbtkGEditor.git] / lib / EditorGraphicBBS / bbsVtkGUIEditorGraphic / vtkGComplexBoxPortView.cxx
index d240428b8a1f5558583e0d52c2e2b9119de23cb2..88ce615e2ce216d4f03b063aff179ea6651c6498 100644 (file)
@@ -67,37 +67,34 @@ namespace bbtk {
 
     //=========================================================================
 
-    vtkGComplexBoxPortView::vtkGComplexBoxPortView( ) {
+    vtkGComplexBoxPortView::vtkGComplexBoxPortView( ) 
+       {
     }
 
     //=========================================================================
 
-    vtkGComplexBoxPortView::~vtkGComplexBoxPortView( ) {
+    vtkGComplexBoxPortView::~vtkGComplexBoxPortView( ) 
+       {
     }
 
     //=========================================================================
 
-    void vtkGComplexBoxPortView::update( int idController , int command ) {
+    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( ) ;
     }
 
@@ -108,10 +105,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 ) ;
 
@@ -125,70 +122,62 @@ namespace bbtk {
         //EED          _pts->SetPoint(1, xInic, yFin, zInic );
         //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 ) ;
 
 
-        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( ) ;
     }
 
     //=========================================================================
@@ -196,31 +185,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 ) ;
         }
     }