X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_VTKUtils.h;h=0d49a44375823a8678fe8bca2f6dac566f6b2278;hp=f94695cd58bd313e827965d3afc549aae22e2922;hb=7af78cc3d0b95ec53ab6ec83a92b1df4a9fb6b2a;hpb=2a39de2aeb3283f4570b567dfe403f103cef7300 diff --git a/src/SMESHGUI/SMESHGUI_VTKUtils.h b/src/SMESHGUI/SMESHGUI_VTKUtils.h index f94695cd5..0d49a4437 100644 --- a/src/SMESHGUI/SMESHGUI_VTKUtils.h +++ b/src/SMESHGUI/SMESHGUI_VTKUtils.h @@ -1,4 +1,6 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -15,166 +17,173 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// SMESH SMESHGUI : GUI for SMESH component +// File : SMESHGUI_VTKUtils.h +// Author : Open CASCADE S.A.S. +// +#ifndef SMESHGUI_VTKUTILS_H +#define SMESHGUI_VTKUTILS_H -#ifndef SMESHGUI_VTKUtils_HeaderFile -#define SMESHGUI_VTKUtils_HeaderFile +// SMESH includes +#include "SMESH_SMESHGUI.hxx" -class QString; -class vtkRenderer; -class TColStd_IndexedMapOfInteger; +#include "SMESHGUI_Utils.h" +#include + +// SALOME KERNEL includes +#include -#include "SALOMEDSClient_definitions.hxx" -#include "SALOME_InteractiveObject.hxx" -#include "VTKViewer_Filter.h" +// SALOME GUI includes +#include +#include + +class TColStd_IndexedMapOfInteger; class SALOMEDSClient_Study; -class SUIT_Study; class SUIT_ViewWindow; class SUIT_ViewManager; -class SVTK_InteractorStyle; class SVTK_ViewWindow; class SVTK_Selector; -class SalomeApp_SelectionMgr; -class SMESHGUI; - -#include - -#include "SALOMEconfig.h" -#include CORBA_CLIENT_HEADER(SALOMEDS) - -#include -#include "SMESH_Object.h" +class LightApp_SelectionMgr; +class SalomeApp_Module; +class SMESHGUI; class SMESH_Actor; class SALOME_Actor; -class SVTK_ViewWindow; -class SalomeApp_Module; - -namespace SMESH{ +namespace SMESH +{ //---------------------------------------------------------------------------- - typedef pair TKeyOfVisualObj; + typedef std::pair TKeyOfVisualObj; - TVisualObjPtr GetVisualObj(int theStudyId, - const char* theEntry); +SMESHGUI_EXPORT + TVisualObjPtr GetVisualObj( int, const char* ); +SMESHGUI_EXPORT + void OnVisuException(); // PAL16631 //---------------------------------------------------------------------------- - SVTK_ViewWindow* GetViewWindow(const SalomeApp_Module* theModule); - - SUIT_ViewWindow* GetActiveWindow(); - - SVTK_ViewWindow* FindVtkViewWindow( SUIT_ViewManager*, - SUIT_ViewWindow* ); - +SMESHGUI_EXPORT + SVTK_ViewWindow* GetViewWindow( const SalomeApp_Module* = 0, + bool = false ); +SMESHGUI_EXPORT + SVTK_ViewWindow* FindVtkViewWindow( SUIT_ViewManager*, SUIT_ViewWindow* ); +SMESHGUI_EXPORT SVTK_ViewWindow* GetVtkViewWindow( SUIT_ViewWindow* ); +SMESHGUI_EXPORT SVTK_ViewWindow* GetCurrentVtkView(); - void RepaintViewWindow(SVTK_ViewWindow*); - void RenderViewWindow(SVTK_ViewWindow*); - //---------------------------------------------------------------------------- - SMESH_Actor* FindActorByEntry (SUIT_ViewWindow*, const char* theEntry); - SMESH_Actor* FindActorByEntry (const char* theEntry); - - SMESH_Actor* FindActorByObject (CORBA::Object_ptr theObject); - - //---------------------------------------------------------------------------- - SMESH_Actor* CreateActor (_PTR(Study), const char*, int = false); - void DisplayActor (SUIT_ViewWindow*, SMESH_Actor* theActor); - void RemoveActor (SUIT_ViewWindow*, SMESH_Actor* theActor); +SMESHGUI_EXPORT + void RepaintCurrentView(); +SMESHGUI_EXPORT + void RepaintViewWindow( SVTK_ViewWindow* ); +SMESHGUI_EXPORT + void RenderViewWindow( SVTK_ViewWindow* ); +SMESHGUI_EXPORT + void FitAll(); //---------------------------------------------------------------------------- - enum EDisplaing {eDisplayAll, eDisplay, eDisplayOnly, eErase, eEraseAll}; - void UpdateView (SUIT_ViewWindow*, - EDisplaing theAction, - const char* theEntry = ""); - void UpdateView (EDisplaing theAction, - const char* theEntry = ""); +SMESHGUI_EXPORT + SMESH_Actor* FindActorByEntry( SUIT_ViewWindow*, const char* ); +SMESHGUI_EXPORT + SMESH_Actor* FindActorByEntry( const char* ); - void UpdateView(); - - void Update(const Handle(SALOME_InteractiveObject)& theIO, - bool theDisplay); +SMESHGUI_EXPORT + SMESH_Actor* FindActorByObject( CORBA::Object_ptr ); + //---------------------------------------------------------------------------- +SMESHGUI_EXPORT + SMESH_Actor* CreateActor( _PTR(Study), const char*, int = false ); +SMESHGUI_EXPORT + void DisplayActor( SUIT_ViewWindow*, SMESH_Actor* ); +SMESHGUI_EXPORT + void RemoveActor( SUIT_ViewWindow*, SMESH_Actor* ); +SMESHGUI_EXPORT + void RemoveVisuData( int ); //---------------------------------------------------------------------------- - void FitAll(); + enum EDisplaing { eDisplayAll, eDisplay, eDisplayOnly, eErase, eEraseAll }; - void RepaintCurrentView(); +SMESHGUI_EXPORT + bool UpdateView( SUIT_ViewWindow*, EDisplaing, const char* = "" ); +SMESHGUI_EXPORT + bool UpdateView( EDisplaing, const char* = "" ); - vtkRenderer* GetCurrentRenderer(); +SMESHGUI_EXPORT + void UpdateView(); +SMESHGUI_EXPORT + bool Update( const Handle(SALOME_InteractiveObject)&, bool ); //---------------------------------------------------------------------------- - void SetPointRepresentation(bool theIsVisible); +SMESHGUI_EXPORT + void SetPointRepresentation( bool ); - void SetPickable(SMESH_Actor* theActor = NULL); +SMESHGUI_EXPORT + void SetPickable( SMESH_Actor* = 0 ); +SMESHGUI_EXPORT void UpdateSelectionProp( SMESHGUI* ); - //---------------------------------------------------------------------------- - SVTK_InteractorStyle* - GetInteractorStyle (SUIT_ViewWindow* = GetActiveWindow()); - - void SetFilter (const Handle(VTKViewer_Filter)& theFilter, - SVTK_InteractorStyle* theStyle = GetInteractorStyle()); +SMESHGUI_EXPORT + SVTK_Selector* GetSelector( SUIT_ViewWindow* = GetActiveWindow() ); - Handle(VTKViewer_Filter) - GetFilter (int theId, SVTK_InteractorStyle* theStyle = GetInteractorStyle()); +SMESHGUI_EXPORT + void SetFilter( const Handle(VTKViewer_Filter)&, SVTK_Selector* = GetSelector() ); +SMESHGUI_EXPORT + Handle(VTKViewer_Filter) GetFilter( int, SVTK_Selector* = GetSelector() ); +SMESHGUI_EXPORT + bool IsFilterPresent( int, SVTK_Selector* = GetSelector() ); +SMESHGUI_EXPORT + void RemoveFilter( int, SVTK_Selector* = GetSelector() ); - bool IsFilterPresent (int theId, - SVTK_InteractorStyle* theStyle = GetInteractorStyle()); +SMESHGUI_EXPORT + void RemoveFilters( SVTK_Selector* = GetSelector()); - void RemoveFilter (int theId, - SVTK_InteractorStyle* theStyle = GetInteractorStyle()); - - void RemoveFilters (SVTK_InteractorStyle* theStyle = GetInteractorStyle()); - - bool IsValid (SALOME_Actor* theActor, int theCellId, - SVTK_InteractorStyle* theStyle = GetInteractorStyle()); +SMESHGUI_EXPORT + bool IsValid( SALOME_Actor*, int, SVTK_Selector* = GetSelector() ); //---------------------------------------------------------------------------- - int GetNameOfSelectedNodes(SVTK_Selector* theSelector, - const Handle(SALOME_InteractiveObject)& theIO, - QString& theName); - - int GetNameOfSelectedElements(SVTK_Selector* theSelector, - const Handle(SALOME_InteractiveObject)& theIO, - QString& theName); - - int GetEdgeNodes(SVTK_Selector* theSelector, - const TVisualObjPtr& theVisualObj, - int& theId1, - int& theId2); +SMESHGUI_EXPORT + int GetNameOfSelectedNodes( SVTK_Selector*, + const Handle(SALOME_InteractiveObject)&, + QString& ); +SMESHGUI_EXPORT + int GetNameOfSelectedElements( SVTK_Selector*, + const Handle(SALOME_InteractiveObject)&, + QString& ); +SMESHGUI_EXPORT + int GetEdgeNodes( SVTK_Selector*, const TVisualObjPtr&, int&, int& ); //---------------------------------------------------------------------------- - int GetNameOfSelectedNodes (SalomeApp_SelectionMgr*, - const Handle(SALOME_InteractiveObject)& theIO, - QString& theName); - - int GetNameOfSelectedNodes (SalomeApp_SelectionMgr*, - QString& aName); - - int GetNameOfSelectedElements (SalomeApp_SelectionMgr*, - const Handle(SALOME_InteractiveObject)& theIO, - QString& theName); - - int GetNameOfSelectedElements (SalomeApp_SelectionMgr*, - QString& aName); - - int GetSelected (SalomeApp_SelectionMgr*, - TColStd_IndexedMapOfInteger& theMap, - const bool theIsElement = true ); - - int GetEdgeNodes (SalomeApp_SelectionMgr*, int& theId1, int& theId2); - - void SetControlsPrecision (const long theVal); +SMESHGUI_EXPORT + int GetNameOfSelectedNodes( LightApp_SelectionMgr*, + const Handle(SALOME_InteractiveObject)&, + QString& ); +SMESHGUI_EXPORT + int GetNameOfSelectedNodes( LightApp_SelectionMgr*, QString& ); +SMESHGUI_EXPORT + int GetNameOfSelectedElements( LightApp_SelectionMgr*, + const Handle(SALOME_InteractiveObject)&, + QString& ); +SMESHGUI_EXPORT + int GetNameOfSelectedElements( LightApp_SelectionMgr*, QString& ); +SMESHGUI_EXPORT + int GetSelected( LightApp_SelectionMgr*, TColStd_IndexedMapOfInteger&, + const bool = true ); + +SMESHGUI_EXPORT + int GetEdgeNodes( LightApp_SelectionMgr*, int&, int& ); + +SMESHGUI_EXPORT + void SetControlsPrecision( const long ); }; -#endif +#endif // SMESHGUI_VTKUTILS_H