Salome HOME
new implementation for channels creation
[modules/hydro.git] / src / HYDROData / HYDROData_Bathymetry.h
index f7bc599fa5dddbed8880f0bc829121ed00e0d87d..e8682fd461db8beaa38415f8104c4907c0bc61ad 100644 (file)
@@ -30,8 +30,9 @@ protected:
   enum DataTag
   {
     DataTag_First = HYDROData_IAltitudeObject::DataTag_First + 100, ///< first tag, to reserve
-    DataTag_AltitudePoints, ///< altitude points, array of reals
-    DataTag_FilePath        ///< bathymetry imported file path
+    DataTag_AltitudePoints,    ///< altitude points, array of reals
+    DataTag_FilePath,          ///< bathymetry imported file path
+    DataTag_AltitudesInverted, ///< flag to invert z values
   };
 
 public:
@@ -76,9 +77,6 @@ public:
    */
   HYDRODATA_EXPORT virtual double           GetAltitudeForPoint( const gp_XY& thePoint ) const;
 
-  using HYDROData_IAltitudeObject::GetAltitudeForPoint;  
-
-
 public:
   // Public methods to work with files.
 
@@ -93,6 +91,19 @@ public:
    */
   HYDRODATA_EXPORT QString                  GetFilePath() const;
 
+  /**
+   * Set flag indicating needs to invert altitude values
+   * \param theIsInverted new invert value
+   * \param theIsUpdate flag indicating necessity to update points
+   */
+  HYDRODATA_EXPORT void                     SetAltitudesInverted( const bool theIsInverted,
+                                                                  const bool theIsUpdate = true );
+
+  /**
+   * Returns flag indicating needs to invert altitude values.
+   */
+  HYDRODATA_EXPORT bool                     IsAltitudesInverted() const;
+
   /**
    * Imports Bathymetry data from file. The supported file types:
    *  - xyz
@@ -101,6 +112,7 @@ public:
    */
   HYDRODATA_EXPORT virtual bool             ImportFromFile( const QString& theFileName );
 
+  HYDRODATA_EXPORT bool CreateBoundaryPolyline() const;
 
 private:
 
@@ -108,7 +120,7 @@ private:
    * Imports Bathymetry data from 'XYZ' file.
    */
   bool                                      importFromXYZFile( QFile&          theFile,
-                                                               AltitudePoints& thePoints );
+                                                               AltitudePoints& thePoints ) const;
 
 protected:
 
@@ -118,12 +130,12 @@ protected:
    * Creates new object in the internal data structure. Use higher level objects 
    * to create objects with real content.
    */
-  HYDROData_Bathymetry();
+  HYDRODATA_EXPORT HYDROData_Bathymetry();
 
   /**
    * Destructs properties of the object and object itself, removes it from the document.
    */
-  ~HYDROData_Bathymetry();
+  HYDRODATA_EXPORT ~HYDROData_Bathymetry();
 };
 
 #endif