From: apo Date: Fri, 20 Jan 2006 06:56:23 +0000 (+0000) Subject: Join BR-D5-38-2003 X-Git-Tag: T_After_Join_BR-D5-38-2003 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=c427016e043d0e2e2b5c86f4b4f157a3965fd97d;p=modules%2Fgeom.git Join BR-D5-38-2003 --- diff --git a/src/DisplayGUI/DisplayGUI.cxx b/src/DisplayGUI/DisplayGUI.cxx index 3be30b5e1..61dc6bfca 100644 --- a/src/DisplayGUI/DisplayGUI.cxx +++ b/src/DisplayGUI/DisplayGUI.cxx @@ -42,7 +42,7 @@ #include #include -#include +#include #include #include #include @@ -348,10 +348,8 @@ void DisplayGUI::SetDisplayMode( const int mode, SUIT_ViewWindow* viewWindow ) if ( !viewWindow ) viewWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); if ( viewWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) { - SVTK_ViewWindow* wnd = dynamic_cast( viewWindow ); - SVTK_RenderWindowInteractor* myRenderInter = wnd ? wnd->getRWInteractor() : 0; - if( myRenderInter ) - myRenderInter->SetDisplayMode( mode ); + SVTK_View* aView = ((SVTK_ViewWindow*)viewWindow)->getView(); + aView->SetDisplayMode( mode ); } else if ( viewWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { OCCViewer_Viewer* v3d = ((OCCViewer_ViewManager*)(viewWindow->getViewManager()))->getOCCViewer(); @@ -386,10 +384,8 @@ int DisplayGUI::GetDisplayMode( SUIT_ViewWindow* viewWindow ) if ( !viewWindow ) viewWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); if ( viewWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) { - SVTK_ViewWindow* wnd = dynamic_cast( viewWindow ); - SVTK_RenderWindowInteractor* myRenderInter = wnd ? wnd->getRWInteractor() : 0; - if( myRenderInter ) - dispMode = myRenderInter->GetDisplayMode(); + SVTK_View* aView = ((SVTK_ViewWindow*)viewWindow)->getView(); + dispMode = aView->GetDisplayMode(); } else if ( viewWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { OCCViewer_Viewer* v3d = ((OCCViewer_ViewManager*)(viewWindow->getViewManager()))->getOCCViewer(); @@ -432,10 +428,7 @@ void DisplayGUI::ChangeDisplayMode( const int mode, SUIT_ViewWindow* viewWindow if ( viewWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) { SVTK_ViewWindow* vw = dynamic_cast( viewWindow ); - SVTK_RenderWindowInteractor* rwi = vw ? vw->getRWInteractor() : 0; - - if( !rwi ) - return; + SVTK_View* aView = vw->getView(); aSelMgr->selectedObjects( aList ); SALOME_ListIteratorOfListIO It( aList ); @@ -445,12 +438,12 @@ void DisplayGUI::ChangeDisplayMode( const int mode, SUIT_ViewWindow* viewWindow SVTK_Prs* vtkPrs = stvkViewer ? dynamic_cast( stvkViewer->CreatePrs( It.Value()->getEntry() ) ) : 0; if ( vtkPrs && !vtkPrs->IsNull() ) { if ( mode == 0 ) - rwi->ChangeRepresentationToWireframe( vtkPrs->GetObjects() ); + aView->ChangeRepresentationToWireframe( vtkPrs->GetObjects() ); else if ( mode == 1 ) - rwi->ChangeRepresentationToSurface( vtkPrs->GetObjects() ); + aView->ChangeRepresentationToSurface( vtkPrs->GetObjects() ); } } - rwi->Render(); + aView->Repaint(); } else if ( viewWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { OCCViewer_Viewer* v3d = ((OCCViewer_ViewManager*)(viewWindow->getViewManager()))->getOCCViewer(); diff --git a/src/GEOMGUI/GeometryGUI_Swig.cxx b/src/GEOMGUI/GeometryGUI_Swig.cxx index 2db10da82..9a10ef6df 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.cxx +++ b/src/GEOMGUI/GeometryGUI_Swig.cxx @@ -31,20 +31,20 @@ #include "GeometryGUI.h" -#include -#include -#include -#include +#include "SUIT_Session.h" +#include "SalomeApp_Application.h" +#include "SalomeApp_Study.h" +#include "SalomeApp_ImportOperation.h" -#include +#include "OB_Browser.h" -#include -#include -#include +#include "OCCViewer_ViewWindow.h" +#include "OCCViewer_ViewManager.h" +#include "SOCC_ViewModel.h" -#include -#include -#include +#include "SVTK_ViewModel.h" +#include "SVTK_ViewWindow.h" +#include "SVTK_View.h" #include "GEOM_Actor.h" #include "GEOM_Client.hxx" @@ -52,7 +52,7 @@ #include "GEOM_AssemblyBuilder.h" #include "GEOM_InteractiveObject.hxx" -#include +#include "SALOME_Event.hxx" #include "utilities.h" @@ -180,10 +180,9 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) "GEOM", const_cast( obj->GetID().c_str())); - if (SVTK_ViewWindow* svtkViewWindow = GetSVTKViewWindow(app)) { - - SVTK_RenderWindowInteractor* aRenderInter= svtkViewWindow->getRWInteractor(); - int aMode = aRenderInter->GetDisplayMode(); + if (SVTK_ViewWindow* aViewWindow = GetSVTKViewWindow(app)) { + SVTK_View* aView = aViewWindow->getView(); + int aMode = aView->GetDisplayMode(); vtkActorCollection* theActors = GEOM_AssemblyBuilder::BuildActors(Shape,0,aMode,true); @@ -192,9 +191,9 @@ void GEOM_Swig::createAndDisplayGO (const char* Entry) GEOM_Actor* GActor = GEOM_Actor::SafeDownCast(anActor); GActor->setName(const_cast(aNameValue.c_str())); GActor->setIO(anIO); - aRenderInter->Display(GActor); + aView->Display(GActor); } - aRenderInter->Update(); + aView->Repaint(); } else if (OCCViewer_Viewer* occViewer = GetOCCViewer(app)) { Handle(AIS_InteractiveContext) ic = occViewer->getAISContext(); Handle(GEOM_AISShape) aSh = @@ -405,10 +404,10 @@ void GEOM_Swig::setDisplayMode(const char* theEntry, int theMode) myApp(theApp), myIO(theIO), myParam(theParam) {} virtual void Execute(){ - if(SVTK_ViewWindow* svtkViewWindow = GetSVTKViewWindow(myApp)){ - SVTK_RenderWindowInteractor* myRenderInter= svtkViewWindow->getRWInteractor(); - myRenderInter->SetDisplayMode(myIO,myParam); - myRenderInter->Update(); + if(SVTK_ViewWindow* aViewWindow = GetSVTKViewWindow(myApp)){ + SVTK_View* aView = aViewWindow->getView(); + aView->SetDisplayMode(myIO,myParam); + aView->Repaint(); } else if(OCCViewer_Viewer* occViewer = GetOCCViewer(myApp)) { SOCC_Viewer* soccViewer = dynamic_cast( occViewer ); @@ -439,10 +438,10 @@ void GEOM_Swig::setColor(const char* theEntry, int red, int green, int blue) myApp(theApp), myIO(theIO), myParam(theParam) {} virtual void Execute(){ - if(SVTK_ViewWindow* svtkViewWindow = GetSVTKViewWindow(myApp)){ - SVTK_RenderWindowInteractor* myRenderInter= svtkViewWindow->getRWInteractor(); - myRenderInter->SetColor(myIO,myParam); - myRenderInter->Update(); + if(SVTK_ViewWindow* aViewWindow = GetSVTKViewWindow(myApp)){ + SVTK_View* aView = aViewWindow->getView(); + aView->SetColor(myIO,myParam); + aView->Repaint(); }else if(OCCViewer_Viewer* occViewer = GetOCCViewer(myApp)){ Handle(AIS_InteractiveContext) ic = occViewer->getAISContext(); AIS_ListOfInteractive List; @@ -486,10 +485,10 @@ void GEOM_Swig::setTransparency(const char* theEntry, float transp) myApp(theApp), myIO(theIO), myParam(theParam) {} virtual void Execute(){ - if(SVTK_ViewWindow* svtkViewWindow = GetSVTKViewWindow(myApp)){ - SVTK_RenderWindowInteractor* myRenderInter= svtkViewWindow->getRWInteractor(); - myRenderInter->SetTransparency(myIO,myParam); - myRenderInter->Update(); + if(SVTK_ViewWindow* aViewWindow = GetSVTKViewWindow(myApp)){ + SVTK_View* aView = aViewWindow->getView(); + aView->SetTransparency(myIO,myParam); + aView->Repaint(); }else if(OCCViewer_Viewer* occViewer = GetOCCViewer(myApp)) { SOCC_Viewer* soccViewer = dynamic_cast( occViewer ); if (soccViewer) diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx index 56004de66..1d1c12a38 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx @@ -38,12 +38,12 @@ #include "GEOM_Actor.h" #include "GEOMBase.h" -#include -#include +#include "SALOME_ListIO.hxx" +#include "SALOME_ListIteratorOfListIO.hxx" #include #include -#include +#include #include #include @@ -236,13 +236,13 @@ void GEOMToolsGUI::OnColor() SVTK_ViewWindow* vtkVW = dynamic_cast( window ); if ( !vtkVW ) return; - SVTK_RenderWindowInteractor* rwi = vtkVW->getRWInteractor(); - QColor initcolor = rwi->GetColor( selected.First() ); + SVTK_View* aView = vtkVW->getView(); + QColor initcolor = aView->GetColor( selected.First() ); QColor c = QColorDialog::getColor( QColor(), app->desktop() ); if ( c.isValid() ) { SUIT_OverrideCursor(); for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { - rwi->SetColor( It.Value(), c ); + aView->SetColor( It.Value(), c ); } } } // if ( isVTK ) diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx index 45c470789..0984dd88c 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx @@ -30,12 +30,12 @@ #include "GEOMBase.h" #include "GEOM_AISShape.hxx" -#include -#include +#include "SALOME_ListIO.hxx" +#include "SALOME_ListIteratorOfListIO.hxx" #include #include -#include +#include #include #include @@ -205,19 +205,19 @@ void GEOMToolsGUI_TransparencyDlg::ValueHasChanged( int newValue ) SVTK_ViewWindow* vtkVW = dynamic_cast( window ); if ( !vtkVW ) return; - SVTK_RenderWindowInteractor* rwi = vtkVW->getRWInteractor(); + SVTK_View* aView = vtkVW->getView(); if ( myFirstInit ) { myFirstInit = false; - float transp = (rwi->GetTransparency(FirstIOS))*10.0; + float transp = (aView->GetTransparency(FirstIOS))*10.0; mySlider->setValue(int(transp)); return; } SUIT_OverrideCursor(); for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { - rwi->SetTransparency( It.Value(), newValue/10.0 ); + aView->SetTransparency( It.Value(), newValue/10.0 ); } - rwi->Render(); + aView->Repaint(); } // if ( isVTK ) else if ( isOCC ) { diff --git a/src/OBJECT/GEOM_VTKTrihedron.cxx b/src/OBJECT/GEOM_VTKTrihedron.cxx index 67e32cedd..3e79afb81 100644 --- a/src/OBJECT/GEOM_VTKTrihedron.cxx +++ b/src/OBJECT/GEOM_VTKTrihedron.cxx @@ -207,7 +207,6 @@ GEOM_VTKTrihedron::GEOM_VTKTrihedron() { myMapper = vtkPolyDataMapper::New(); myAxis[ 0 ] = myAxis[ 1 ] = myAxis[ 2 ] = 0; - myPresent = vtkActorCollection::New(); mySize = 100; SetInfinitive( true ); myColor[ 0 ] = myColor[ 1 ] = myColor[ 1 ] = -1; @@ -216,8 +215,6 @@ GEOM_VTKTrihedron::GEOM_VTKTrihedron() GEOM_VTKTrihedron::~GEOM_VTKTrihedron() { - myPresent->RemoveAllItems(); - myPresent->Delete(); for ( int i = 0; i < 3; i++ ) myAxis[i]->Delete(); @@ -285,9 +282,12 @@ void GEOM_VTKTrihedron::AddToRender( vtkRenderer* theRenderer ) void GEOM_VTKTrihedron::RemoveFromRender( vtkRenderer* theRenderer ) { - myPresent->InitTraversal(); - while(vtkActor* anActor = myPresent->GetNextActor()) - theRenderer->RemoveActor(anActor); + for(int i = 0; i < 3; i++) + { + myAxis[i]->RemoveFromRender(theRenderer); + } + + theRenderer->RemoveActor( this ); } int GEOM_VTKTrihedron::GetVisibleActorCount(vtkRenderer* theRenderer) diff --git a/src/OBJECT/GEOM_VTKTrihedron.hxx b/src/OBJECT/GEOM_VTKTrihedron.hxx index 92332c8c6..b67ad3fbb 100644 --- a/src/OBJECT/GEOM_VTKTrihedron.hxx +++ b/src/OBJECT/GEOM_VTKTrihedron.hxx @@ -89,7 +89,6 @@ public: virtual bool hasHighlight() { return false; } protected: - vtkActorCollection* myPresent; VTKViewer_Axis* myAxis[3]; vtkPolyDataMapper* myMapper; float mySize;