X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_ImmersibleZone.h;h=82115fc17e8353b8409a2d8da2d9b6ea70f43063;hb=55fe0d2de7e15a256965d71280dc61fd58863d7e;hp=883b2fd1d1a4791b949290772ae58cf097673cb3;hpb=84f8b4a57d3cdad820bc1333a5066699cd1c8ae3;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_ImmersibleZone.h b/src/HYDROData/HYDROData_ImmersibleZone.h index 883b2fd1..82115fc1 100644 --- a/src/HYDROData/HYDROData_ImmersibleZone.h +++ b/src/HYDROData/HYDROData_ImmersibleZone.h @@ -1,3 +1,20 @@ +// Copyright (C) 2014-2015 EDF-R&D +// 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, 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 +// 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 +// #ifndef HYDROData_ImmersibleZone_HeaderFile #define HYDROData_ImmersibleZone_HeaderFile @@ -6,8 +23,7 @@ DEFINE_STANDARD_HANDLE(HYDROData_ImmersibleZone, HYDROData_NaturalObject) -class Handle(HYDROData_Bathymetry); -class Handle(HYDROData_Polyline); +class Handle(HYDROData_PolylineXY); /**\class HYDROData_ImmersibleZone * \brief @@ -22,10 +38,7 @@ protected: enum DataTag { DataTag_First = HYDROData_NaturalObject::DataTag_First + 100, ///< first tag, to reserve - DataTag_FillingColor, ///< filling color of immersible zone - DataTag_BorderColor, ///< border color of immersible zone DataTag_Polyline, ///< reference polyline - DataTag_Bathymetry, ///< reference bathymetry }; public: @@ -42,78 +55,77 @@ public: HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const; /** - * Returns the top shape of the object. + * Returns the list of all reference objects of this object. */ - HYDRODATA_EXPORT virtual TopoDS_Shape GetTopShape() const; + HYDRODATA_EXPORT virtual HYDROData_SequenceOfObjects GetAllReferenceObjects() const; /** - * Returns the 3d shape of the object. + * Update the immersible zone object. + * Call this method whenever you made changes for object data. */ - HYDRODATA_EXPORT virtual TopoDS_Shape GetShape3D() const; - + HYDRODATA_EXPORT virtual void Update(); /** - * Returns default filling color for new zone. + * Checks that object has 2D presentation. Reimlemented to retun true. */ - HYDRODATA_EXPORT static QColor DefaultFillingColor(); + HYDRODATA_EXPORT virtual bool IsHas2dPrs() const; /** - * Sets filling color for zone. - */ - HYDRODATA_EXPORT virtual void SetFillingColor( const QColor& theColor ); - - /** - * Returns filling color of zone. + * Returns the top shape of the object. */ - HYDRODATA_EXPORT virtual QColor GetFillingColor() const; - + HYDRODATA_EXPORT virtual TopoDS_Shape GetTopShape() const; /** - * Returns default border color for new zone. + * Returns the 3d shape of the object. */ - HYDRODATA_EXPORT static QColor DefaultBorderColor(); + HYDRODATA_EXPORT virtual TopoDS_Shape GetShape3D() const; /** - * Sets border color for zone. + * Returns default filling color for new zone. */ - HYDRODATA_EXPORT virtual void SetBorderColor( const QColor& theColor ); + HYDRODATA_EXPORT static QColor DefaultFillingColor(); /** - * Returns border color of zone. + * Returns default border color for new zone. */ - HYDRODATA_EXPORT virtual QColor GetBorderColor() const; - + HYDRODATA_EXPORT static QColor DefaultBorderColor(); /** * Sets reference polyline object for zone. */ - HYDRODATA_EXPORT virtual void SetPolyline( const Handle(HYDROData_Polyline)& thePolyline ); + HYDRODATA_EXPORT virtual void SetPolyline( const Handle(HYDROData_PolylineXY)& thePolyline ); /** * Returns reference polyline object of zone. */ - HYDRODATA_EXPORT virtual Handle(HYDROData_Polyline) GetPolyline() const; + HYDRODATA_EXPORT virtual Handle(HYDROData_PolylineXY) GetPolyline() const; /** * Remove reference polyline object of zone. */ HYDRODATA_EXPORT virtual void RemovePolyline(); + HYDRODATA_EXPORT TopoDS_Shape generateTopShape() const; + HYDRODATA_EXPORT static TopoDS_Shape generateTopShape( const Handle(HYDROData_PolylineXY)& ); + +protected: /** - * Set reference bathymetry object for zone. + * Returns default filling color for new object. */ - HYDRODATA_EXPORT virtual void SetBathymetry( const Handle(HYDROData_Bathymetry)& theBathymetry ); + HYDRODATA_EXPORT virtual QColor getDefaultFillingColor() const; /** - * Returns reference bathymetry object of zone. + * Returns default border color for new object. */ - HYDRODATA_EXPORT virtual Handle(HYDROData_Bathymetry) GetBathymetry() const; + HYDRODATA_EXPORT virtual QColor getDefaultBorderColor() const; + +private: /** - * Clear the bathymetry object for zone. + * Create all necessary child group objects. */ - HYDRODATA_EXPORT virtual void RemoveBathymetry(); + HYDRODATA_EXPORT void createGroupObjects(); protected: