X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Shape.h;h=397096cd2e13e9954ebbe2036552ace9c2ba459d;hb=adf1c2cc49502c366a2637adfcda9c1c71b11887;hp=c5b3b41ffe9f4b9d242505dd85daea71f9cf02d0;hpb=5065bfaaab947084a631e5db911f098c7ace8948;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Shape.h b/src/HYDROGUI/HYDROGUI_Shape.h index c5b3b41f..397096cd 100644 --- a/src/HYDROGUI/HYDROGUI_Shape.h +++ b/src/HYDROGUI/HYDROGUI_Shape.h @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2015 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 @@ -6,7 +6,7 @@ // 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. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -23,20 +23,16 @@ #ifndef HYDROGUI_SHAPE_H #define HYDROGUI_SHAPE_H -#include -#include -#include -#include -#include - #include +#include +#include + #include -#include -#include -#include -#include +class TopoDS_Compound; +class TopoDS_Face; +class TopoDS_Wire; class HYDROGUI_Shape { @@ -44,7 +40,7 @@ public: HYDROGUI_Shape( const Handle(AIS_InteractiveContext)& theContext, const Handle(HYDROData_Entity)& theObject, const int theZLayer = -1 ); - ~HYDROGUI_Shape(); + virtual ~HYDROGUI_Shape(); public: virtual void display( const bool theIsUpdateViewer = true ); @@ -53,14 +49,17 @@ public: virtual void highlight( bool theIsHighlight, bool isUpdateViewer ); virtual bool isHighlighted() const; - Handle(HYDROData_Entity) getObject() const { return myObject; } + Handle(AIS_InteractiveContext) getContext() const; + Handle(HYDROData_Entity) getObject() const; + TopoDS_Shape getTopoShape() const; - virtual void update( const bool theIsUpdateViewer = true ); + virtual void update( bool isUpdateViewer, + bool isDeactivateSelection ); - virtual bool getIsToUpdate() const { return myIsToUpdate; } - virtual void setIsToUpdate( bool theState ) { myIsToUpdate = theState; } + virtual bool getIsToUpdate() const; + virtual void setIsToUpdate( bool theState ); - virtual bool isVisible() const { return myIsVisible; } + virtual bool isVisible() const; virtual void setVisible( const bool theState, const bool theIsUpdateViewer = true ); @@ -73,12 +72,14 @@ public: const bool theIsUpdateViewer = true ); virtual void setFace( const TopoDS_Wire& theWire, - const bool theToDisplay = true, - const bool theIsUpdateViewer = true ); + const bool theToDisplay, + const bool theIsUpdateViewer, + const QString& theTextureFileName ); virtual void setFace( const TopoDS_Face& theFace, - const bool theToDisplay = true, - const bool theIsUpdateViewer = true ); + const bool theToDisplay, + const bool theIsUpdateViewer, + const QString& theTextureFileName ); virtual void setShape( const TopoDS_Shape& theShape, const bool theToDisplay = true, @@ -97,35 +98,23 @@ public: virtual void setHighlightColor( const QColor& theColor ); virtual QColor getHighlightColor() const; - virtual void setTextureFileName( const QString& theFileName, - const bool theToDisplay = true, - const bool theIsUpdateViewer = true ); - virtual QString getTextureFileName() const; - - virtual Handle(AIS_InteractiveObject) getAISObject() const { return myShape; } + virtual Handle(AIS_InteractiveObject) getAISObject() const; void setZLayer( const int theZLayer ); - void GetRange( double& theMin, double& theMax ) const; - void UpdateWithColorScale( const Handle(Aspect_ColorScale)& ); - protected: virtual void buildShape(); virtual void updateShape( const bool theToDisplay = true, const bool theIsUpdateViewer = true ); - void displayShape( const bool theIsUpdateViewer ); + virtual void displayShape( const bool theIsUpdateViewer ); virtual QColor getActiveColor() const; + virtual Handle_AIS_InteractiveObject createShape() const; private: static double getQuantityColorVal( const int theColorVal ); void colorShapeBorder( const QColor& theColor ); - static QString generateTextureFileName( const Handle(HYDROData_Entity)& theImageObj ); - void removeTextureFile() const; - - static QImage reduceTexture( const QImage& theImage, const int theSizeLimit ); - private: Handle(AIS_InteractiveContext) myContext; Handle(HYDROData_Entity) myObject; @@ -143,11 +132,6 @@ private: QColor myFillingColor; QColor myBorderColor; QColor myHighlightColor; - - QString myTextureFileName; - - Handle_TColgp_HArray1OfPnt myCoords; - Handle_Quantity_HArray1OfColor myColors; }; #endif