Salome HOME
refs #1330: basic implementation of the not zoomable polyline arrows
[modules/hydro.git] / src / HYDROData / HYDROData_Bathymetry.h
index 8a0d8504aa2b07546d355556f0bd56ef973d7522..67a5868c816d078bd57fb859e85108e8fd1f9b8b 100644 (file)
 class QFile;
 class gp_XYZ;
 class gp_XY;
-class Handle_HYDROData_PolylineXY;
+class HYDROData_PolylineXY;
 class HYDROData_QuadtreeNode;
 class vtkPolyData;
 class vtkIdList;
 
-DEFINE_STANDARD_HANDLE(HYDROData_Bathymetry, HYDROData_IAltitudeObject)
-
 
 /**\class HYDROData_Bathymetry
  * \brief Class that stores/retreives information about the Bathymetry.
@@ -64,11 +62,12 @@ protected:
     DataTag_FilePath,          ///< bathymetry imported file path
     DataTag_FilePaths,         ///< bathymetry imported file paths
     DataTag_AltitudesInverted, ///< flag to invert z values
+    DataTag_Quadtree,          ///< quadtree associated to the zone
+    DataTag_Delaunay,          ///< Delaunay 2D associated to the zone
   };
 
 public:
-
-  DEFINE_STANDARD_RTTI(HYDROData_Bathymetry);
+  DEFINE_STANDARD_RTTIEXT(HYDROData_Bathymetry, HYDROData_IAltitudeObject);
 
   /**
    * Returns the kind of this object. Must be redefined in all objects of known type.
@@ -97,10 +96,11 @@ public:
    */
   HYDRODATA_EXPORT virtual AltitudePoints   GetAltitudePoints(bool IsConvertToGlobal = false) const;
   HYDRODATA_EXPORT virtual HYDROData_QuadtreeNode* GetQuadtreeNodes() const;
+  HYDRODATA_EXPORT virtual HYDROData_QuadtreeNode* ComputeQuadtreeNodes( int key) const;
 
 #ifndef LIGHT_MODE
   HYDRODATA_EXPORT virtual vtkPolyData* GetVtkDelaunay2D() const;
-  //HYDRODATA_EXPORT bool interpolZtriangle(const gp_XY& point, vtkIdList* triangle, double* z);
+  HYDRODATA_EXPORT virtual vtkPolyData* ComputeVtkDelaunay2D(int key) const;
 #endif
 
   /**
@@ -157,7 +157,7 @@ public:
 
   HYDRODATA_EXPORT virtual bool             ImportFromFile( const QString& theFileName );
 
-  HYDRODATA_EXPORT Handle_HYDROData_PolylineXY CreateBoundaryPolyline() const;
+  HYDRODATA_EXPORT Handle(HYDROData_PolylineXY) CreateBoundaryPolyline() const;
 
   HYDRODATA_EXPORT virtual void UpdateLocalCS( double theDx, double theDy );
 
@@ -168,8 +168,10 @@ private:
    */
   bool                                      importFromXYZFile( QFile&          theFile,
                                                                AltitudePoints& thePoints ) const;
+  //static int myQuadTreeNumber;
   static std::map<int, HYDROData_QuadtreeNode*> myQuadtrees;
 #ifndef LIGHT_MODE
+  //static int myDelaunayNumber;
   static std::map<int, vtkPolyData*> myDelaunay2D;
 #endif
   bool                                      importFromASCFile( QFile&          theFile,