X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FOBJECT%2FGEOM_VTKTrihedron.hxx;h=d6b637dc9a037cb078d7af7a4abd47f6ff782002;hb=5de82fb1bedaf88db38b0ee7f0d0bdd427ba39f0;hp=4250b3d707bbb2d79cc3d34b43c199daff7501fd;hpb=9499b99fe2dcb53e1ea364f97986f8f432b04600;p=modules%2Fgeom.git diff --git a/src/OBJECT/GEOM_VTKTrihedron.hxx b/src/OBJECT/GEOM_VTKTrihedron.hxx index 4250b3d70..d6b637dc9 100644 --- a/src/OBJECT/GEOM_VTKTrihedron.hxx +++ b/src/OBJECT/GEOM_VTKTrihedron.hxx @@ -1,46 +1,40 @@ -// SALOME GEOM : +// Copyright (C) 2007-2010 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 // -// Copyright (C) 2003 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 -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// 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.salome-platform.org/ or email : webmaster.salome@opencascade.com +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// 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.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + +// SALOME GEOM : // File : GEOM_VTKTrihedron.h // Author : Sergey LITONIN // Module : SALOME // $Header: - +// #ifndef GEOM_VTKTrihedron_H #define GEOM_VTKTrihedron_H +#include "GEOM_OBJECT_defs.hxx" + #include #include "SALOME_Actor.h" #include "VTKViewer_Trihedron.h" -#ifdef WNT -#include -#else -#define SALOME_WNT_EXPORT -#endif - - -class vtkActorCollection; class vtkRenderer; class vtkPolyDataMapper; @@ -50,7 +44,7 @@ class vtkPolyDataMapper; Placement of trihedron is chahged with SetPlacement() method */ -class SALOME_WNT_EXPORT GEOM_VTKTrihedron : public SALOME_Actor +class GEOM_OBJECT_EXPORT GEOM_VTKTrihedron : public SALOME_Actor { protected: @@ -64,6 +58,7 @@ public: virtual vtkFloatingPointType GetSize() { return mySize;} + virtual void SetVisibility( int theVisibility ); virtual void SetVisibility( VTKViewer_Trihedron::TVisibility theVis ); virtual void VisibilityOff() { SetVisibility( VTKViewer_Trihedron::eOff ); } virtual void VisibilityOn() { SetVisibility( VTKViewer_Trihedron::eOn ); } @@ -86,7 +81,16 @@ public: void SetColor( vtkFloatingPointType r, vtkFloatingPointType g, vtkFloatingPointType b ); void GetColor( vtkFloatingPointType& r, vtkFloatingPointType& g, vtkFloatingPointType& b ); - virtual bool hasHighlight() { return false; } + virtual bool hasHighlight() { return true; } + + virtual void Highlight( bool theHighlight ); + virtual bool PreHighlight( vtkInteractorStyle* theInteractorStyle, + SVTK_SelectionEvent* theSelectionEvent, + bool theIsHighlight ); + +protected: + virtual void ResetAxesColors(); + virtual void SetAxesColors( vtkFloatingPointType theColor[3], bool theIsDiffuse = false ); protected: VTKViewer_Axis* myAxis[3]; @@ -95,6 +99,9 @@ protected: gp_Pnt myLocation; gp_Dir myDirX, myDirY, myDirZ; vtkFloatingPointType myColor[ 3 ]; + vtkFloatingPointType myDefaultColor[ 3 ]; + vtkFloatingPointType myPreHighlightColor[ 3 ]; + vtkFloatingPointType myHighlightColor[ 3 ]; }; #endif