]> SALOME platform Git repositories - modules/hydro.git/commitdiff
Salome HOME
merge BR_LAND_COVER_MAP
authorPaul RASCLE <paul.rascle@edf.fr>
Thu, 19 Nov 2015 17:14:07 +0000 (18:14 +0100)
committerPaul RASCLE <paul.rascle@edf.fr>
Thu, 19 Nov 2015 17:14:07 +0000 (18:14 +0100)
19 files changed:
1  2 
CMakeLists.txt
doc/salome/gui/CMakeLists.txt
doc/salome/gui/HYDRO/input/mainpage.doc
src/HYDROData/CMakeLists.txt
src/HYDROData/HYDROData_AltitudeObject.cxx
src/HYDROData/HYDROData_Bathymetry.cxx
src/HYDROData/HYDROData_Bathymetry.h
src/HYDROData/HYDROData_CalculationCase.cxx
src/HYDROData/HYDROData_Channel.cxx
src/HYDROData/HYDROData_Channel.h
src/HYDROData/HYDROData_Entity.cxx
src/HYDROData/HYDROData_Entity.h
src/HYDROData/HYDROData_IInterpolator.cxx
src/HYDROData/HYDROData_Iterator.cxx
src/HYDROData/HYDROData_Object.cxx
src/HYDROData/HYDROData_Obstacle.cxx
src/HYDROData/HYDROData_Polyline3D.cxx
src/HYDROData/HYDROData_ProfileUZ.cxx
src/HYDROData/HYDROData_Zone.cxx

diff --cc CMakeLists.txt
Simple merge
index 36abd0963b6d8d54d2da149c3be81be51b7aa1e4,047df8e1b0ebc4bd361b501aa81c6b910a400d28..11b406a3b9db3b7d40db14c0eff12b559bfba436
  # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
  #
  
- #ADD_SUBDIRECTORY(HYDRO)
+ ADD_SUBDIRECTORY(HYDRO)
 +
- SALOME_CONFIGURE_FILE(doxyfile.in doxyfile)
- #SALOME_CONFIGURE_FILE(static/header.html.in static/header.html)
- ADD_CUSTOM_TARGET(usr_docs ${DOXYGEN_EXECUTABLE})
- ADD_DEPENDENCIES(usr_docs html_docs)
- INSTALL(CODE "EXECUTE_PROCESS(COMMAND \"${CMAKE_COMMAND}\" --build ${PROJECT_BINARY_DIR} --target usr_docs)")
- INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/HYDRO DESTINATION ${SALOME_INSTALL_DOC}/gui)
- #INSTALL(FILES images/head.png DESTINATION ${SALOME_INSTALL_DOC}/gui/HYDRO) 
- SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES GUI)
++# SALOME_CONFIGURE_FILE(doxyfile.in doxyfile)
++# #SALOME_CONFIGURE_FILE(static/header.html.in static/header.html)
++# 
++# ADD_CUSTOM_TARGET(usr_docs ${DOXYGEN_EXECUTABLE})
++# 
++# ADD_DEPENDENCIES(usr_docs html_docs)
++# 
++# INSTALL(CODE "EXECUTE_PROCESS(COMMAND \"${CMAKE_COMMAND}\" --build ${PROJECT_BINARY_DIR} --target usr_docs)")
++# INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/HYDRO DESTINATION ${SALOME_INSTALL_DOC}/gui)
++# #INSTALL(FILES images/head.png DESTINATION ${SALOME_INSTALL_DOC}/gui/HYDRO) 
++# 
++# SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES GUI)
index 0000000000000000000000000000000000000000,f57f067382aade068d9ed6213ec9d3a1bbdf3206..65ac01737e6fa9374f069c3cbada51ce321e685e
mode 000000,100644..100644
--- /dev/null
@@@ -1,0 -1,88 +1,93 @@@
+ /**
+   @file
+   \brief Help for the main page of the HYDROGUI module
+ */
+ /**
+   @mainpage
++  <b>The HYDRO documentation is divided in two parts:</b>
++  - <b>the reference documentation below </b>
++  - <b>a Tutorial in French:</b> <A HREF="../HYDRO_tutorial/index.html">Here </A>
++  
++
+   The HYDRO GUI project has been developed for a hydrodynamic laboratory in the EDF R&D company
+   in the domain of the landscape modelling (construction of channels, dams, changing the course of the rivers etc).
+   It represents a pre-processor for the geometry modelling of the natural and artificial objects on the landscape.
+   The user starts work with raster maps where he can create analytic curves and regions describing the existing natural objects, 
+   such as banks, coasts, lakes, rivers etc. Also he can create artificial objects (channel, dam) using the algorithms of the geometry modelling.
+   The objects are referenced to the real territory using the geodesic coordinates.
+    Finally the constructed landscape study is prepared for the further meshing and using in the hydrodynamic solvers.
+   The HYDRO module is implemented on the base of the SALOME platform and powered by the OpenCascade and SALOME platforms.
+   It supports the following features:
+   - raster maps (import from files and georeferencement by geodesic coordinates);
+   - geometry curves (creation on the map and import from SALOME GEOM module);
+   - geometry objects (creation and import from SALOME GEOM module);
+   - support of natural objects (immersible zones, lakes, rivers) and artificial objects (obstacles, channels, dams);
+   - georeferencement of the objects when the objects are connected with points on real territory using the geodesic coordinates;
+   - geometry algorithms on analytic objects (extrusion, partition) for complex objects construction;
+   - support of the results of the territory level measurement (bathymetry);
+   - partition of objects on zones of intersection and specifying the properties for these zones;
+   In the perspective the pre-processor can be completed by the post-processor showing the calculated results.
+   The HYDROGUI module supports the following objects:
+   - \ref imzone "Immersible zone"
+   - \ref p_profile "Profile"
+       - \ref create_profile  "Create profile"
+         - \ref import_profile  "Import profile"
+         - \ref georeferencement_profile  "Profile georeferencement"
+   - \ref art_digue "Digue"
+   - \ref art_channel "Channel"
+   - \ref obstacle  "Obstacle"
+         - \ref box_obstacle  "Create Box obstacle"
+       - \ref cylinder_obstacle  "Create Cylinder obstacle"
+       - \ref import_obstacle_GEOM  "Import obstacle from GEOMETRY"
+       - \ref import_obstacle  "Import obstacle from file"
+       - \ref translate_obstacle "Translation of an obstacle"
+   - \ref polyline3d "Polyline 3D"
+   - \ref polyline "Polyline"
+       - \ref export_polyline "Export polyline"
+       - \ref import_polyline "Import polyline"
+   - \ref bathymetry "Bathymetry"
+   - \ref strickler_table "Strickler table"
+       - \ref export_strickler_table "Export strickler table"
+       - \ref import_strickler_table "Import strickler table"  
+   - \ref stream "Stream"
+       - \ref impimage "Find bottom"
+       - \ref profilesinterpolation "Profiles interpolation"
+   - \ref image "Image"
+       - \ref impimage "Import image"
+       - \ref fuseimages "Fuse images"
+       - \ref cutimages "Cut images"
+       - \ref splitimage "Split image"
+  - \ref calculation_case "Calculation case"
+ The HYDROGUI module supports the following \ref general_services "services":<br>
+   - \ref general_services "General services"
+         - \ref preferences  "Preferences"
+       - \ref save "Save file"
+       - \ref open "Open file"
+       - \ref dump_study "Dump study"
+       - \ref load_script "Load script"
+       - \ref undo_redo "Undo/Redo actions"
+       - \ref copy_paste "Copy/Paste object(s)"
+       - \ref delete "Delete object(s)"
+       - \ref color "Color object"
+       - \ref show_hide "Show/Hide object(s)"
+       - \ref update "Update object"
+       - \ref rename "Rename object"
+       - \ref submersible "Submersible"
+       - \ref copy_position "Copy position"
+       - \ref change_layer_order "Change layer order"
+       - \ref local_cs "Local CS"
+ */
index 4ce848b2fb309ff3b884f725e3aa55c18c916fbb,707e669443f77fa6613b415ce1f71e6b6066dece..05f4f8a405f7fc1965a07cd6cb72d0d67bb0b042
@@@ -1,7 -1,6 +1,7 @@@
#include(../../CMake/Common.cmake)
+ include(../../CMake/Common.cmake)
  
  set(PROJECT_HEADERS
 +    HYDRO_trace.hxx
      HYDROData.h
      HYDROData_AltitudeObject.h
      HYDROData_Application.h
index 1e819a86aa376cb3d259d73fc6dea8204cb6b3ea,b1204e6fe43cdf496e182b5b83e4ef83175cf0eb..9fabcb648d6175233c79c51efa9170d050e5782a
@@@ -64,16 -54,10 +64,17 @@@ HYDROData_Bathymetry::HYDROData_Bathyme
  
  HYDROData_Bathymetry::~HYDROData_Bathymetry()
  {
 +  //DEBTRACE("HYDROData_Bathymetry destructor start " << this);
 +//  if (myQuadtree)
 +//    delete myQuadtree;
 +//    Nodes_3D::iterator it = myListOfNodes.begin();
 +//    for( ; it != myListOfNodes.end(); ++it)
 +//            delete *it;
 +//    myListOfNodes.clear();
  }
  
- QStringList HYDROData_Bathymetry::DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const
+ QStringList HYDROData_Bathymetry::DumpToPython( const QString& thePyScriptPath,
+                                                 MapOfTreatedObjects& theTreatedObjects ) const
  {
    QStringList aResList = dumpObjectCreation( theTreatedObjects );
    QString aBathymetryName = GetObjPyName();
Simple merge
index 07397d1a64ee1dbee12cd9ff728e10e38106dc1c,3919019f0adcfac78e69d3c05c67502bdba55647..aa0d8619a69fb4ce6b373831c12ebbefab538d30
  #include <BRepBuilderAPI_MakeVertex.hxx>
  #endif
  
- #ifdef WIN32
-   #pragma warning ( default: 4251 )
- #endif
  #define EXPORT_NAME "HYDRO_" + GetName()
  
 +#include <SALOME_NamingService.hxx>
 +#include <SALOME_LifeCycleCORBA.hxx>
 +
 +#define _DEVDEBUG_
 +#include "HYDRO_trace.hxx"
 +
  IMPLEMENT_STANDARD_HANDLE(HYDROData_CalculationCase, HYDROData_Entity)
  IMPLEMENT_STANDARD_RTTIEXT(HYDROData_CalculationCase, HYDROData_Entity)
  
@@@ -373,17 -324,15 +330,16 @@@ void HYDROData_CalculationCase::CreateR
  }
  
  void HYDROData_CalculationCase::CreateRegionsAuto( const Handle(HYDROData_Document)& theDoc,
-                                                    const HYDROData_SplitToZonesTool::SplitDataList& theZones,
-                                                    const bool theLandCover )
+                                                    const HYDROData_SplitToZonesTool::SplitDataList& theZones )
  {
 +  DEBTRACE("HYDROData_CalculationCase::CreateRegionsAuto");
    QMap<QString, Handle(HYDROData_Region)> aRegionsMap; //object name to region
    QMap<QString, QString> aRegionNameToObjNameMap;
-   QString aZonesPref = theLandCover ? CALCULATION_LANDCOVER_ZONES_PREF : CALCULATION_ZONES_PREF;
-   HYDROData_PriorityQueue aPr( this, theLandCover ? DataTag_CustomLandCoverRules : DataTag_CustomRules );
+   QString aZonesPref = CALCULATION_ZONES_PREF;
+   HYDROData_PriorityQueue aPr( this, DataTag_CustomRules );
  
    // 1. First we create a default region for each object included into the calculation case
-   HYDROData_SequenceOfObjects anObjects = theLandCover ? GetLandCovers() : GetGeometryObjects();
+   HYDROData_SequenceOfObjects anObjects = GetGeometryObjects();
    for( int i = anObjects.Lower(), n = anObjects.Upper(); i<=n; i++ )
    {
      Handle(HYDROData_Entity) anObj = anObjects.Value( i );
      }
  
      Handle(HYDROData_Entity) aMergeEntity = aRegObj;
-     if ( !theLandCover ) {
-       Handle(HYDROData_Object) aMergeObject = Handle(HYDROData_Object)::DownCast( aMergeEntity );
-       if ( !aMergeObject.IsNull() ) {
-       DEBTRACE("aMergeEntity " << aMergeEntity->GetName().toStdString());
-         aMergeEntity = aMergeObject->GetAltitudeObject();
-       }
+     Handle(HYDROData_Object) aMergeObject = Handle(HYDROData_Object)::DownCast( aMergeEntity );
+     if ( !aMergeObject.IsNull() ) {
++      DEBTRACE("aMergeEntity " << aMergeEntity->GetName().toStdString());
+       aMergeEntity = aMergeObject->GetAltitudeObject();
      }
  
      switch( aMergeType )
@@@ -799,10 -715,9 +723,10 @@@ double HYDROData_CalculationCase::GetAl
  {
    double aResAltitude = HYDROData_IAltitudeObject::GetInvalidAltitude();
  
-   Handle(HYDROData_Zone) aZone = GetZoneFromPoint( thePoint, false );
+   Handle(HYDROData_Zone) aZone = GetZoneFromPoint( thePoint );
    if ( !aZone.IsNull() )
    {
 +    //DEBTRACE("GetAltitudeForPoint Region " << theRegion->GetName().toStdString() << " Zone " << aZone->GetName().toStdString());
      Handle(HYDROData_Region) aRefRegion = Handle(HYDROData_Region)::DownCast( aZone->GetFatherObject() );
      if ( IsEqual( aRefRegion, theRegion ) )
        aResAltitude = GetAltitudeForPoint( thePoint, aZone );
Simple merge
index 5b4e694f84496701dff8b14f7ac227f12f2d0060,372e57a7a46facbf470ec4881cf62f43562ad9cc..0cd9c4a1235f44c16b6b54741ab7579bf4ce9cc4
@@@ -91,24 -92,14 +92,24 @@@ public
    HYDRODATA_EXPORT virtual HYDROData_SequenceOfObjects GetAllReferenceObjects() const;
  
    /**
-    * Returns the top shape of the object.
+    * Returns the left edge of the channel.
     */
-   HYDRODATA_EXPORT virtual TopoDS_Shape GetTopShape() const;
+   HYDRODATA_EXPORT virtual TopoDS_Shape GetLeftShape() const;
  
    /**
-    * Returns the 3d shape of the object.
+    * Returns the right edge of the channel.
     */
-   HYDRODATA_EXPORT virtual TopoDS_Shape GetShape3D() const;
+   HYDRODATA_EXPORT virtual TopoDS_Shape GetRightShape() const;
 +
 +  /**
 +   * Returns the left edge of the channel.
 +   */
 +  HYDRODATA_EXPORT virtual TopoDS_Shape GetLeftShape() const;
 +
 +  /**
 +   * Returns the right edge of the channel.
 +   */
 +  HYDRODATA_EXPORT virtual TopoDS_Shape GetRightShape() const;
  
    /**
     * Update the shape presentations of stream.
index 6af65981490a2ba5209ed69b0759fd83fc892cec,d10c3b09eb00b4f5608d239c401749a1922ed6a9..a02fc5da0010648d279f6c44294b6d88e6799a8a
  #include <QStringList>
  #include <QVariant>
  
- //static const Standard_GUID GUID_MUST_BE_UPDATED("80f2bb81-3873-4631-8ddd-940d2119f000");
 +#define _DEVDEBUG_
 +#include "HYDRO_trace.hxx"
 +
+ HYDROData_SequenceOfObjects::HYDROData_SequenceOfObjects()
+   : NCollection_Sequence<Handle_HYDROData_Entity>()
+ {
+ }
+ HYDROData_SequenceOfObjects::HYDROData_SequenceOfObjects( const HYDROData_SequenceOfObjects& theSequence )
+   : NCollection_Sequence<Handle_HYDROData_Entity>( theSequence )
+ {
+ }
+ HYDROData_SequenceOfObjects::HYDROData_SequenceOfObjects( const NCollection_Sequence<Handle_HYDROData_Entity>& theSequence )
+   : NCollection_Sequence<Handle_HYDROData_Entity>( theSequence )
+ {
+ }
  
 -
  IMPLEMENT_STANDARD_HANDLE(HYDROData_Entity,MMgt_TShared)
  IMPLEMENT_STANDARD_RTTIEXT(HYDROData_Entity,MMgt_TShared)
  
@@@ -637,8 -649,8 +652,9 @@@ QString HYDROData_Entity::getPyTypeID(
      case KIND_STREAM_ALTITUDE:   return "KIND_STREAM_ALTITUDE";
      case KIND_OBSTACLE_ALTITUDE: return "KIND_OBSTACLE_ALTITUDE";
      case KIND_STRICKLER_TABLE:   return "KIND_STRICKLER_TABLE";
-     case KIND_LAND_COVER:        return "KIND_LAND_COVER";
+     case KIND_LAND_COVER_OBSOLETE: return "";
 +    case KIND_CHANNEL_ALTITUDE:  return "KIND_CHANNEL_ALTITUDE";
+     case KIND_LAND_COVER_MAP:    return "KIND_LAND_COVER_MAP";
      default:                     return "KIND_UNKNOWN"; ///! Unrecognized object
    }
  }
index 833751ee3a336a3e51050084b4f87dcc53434c84,44c34dfd81efe9ab1f9f58a324906c749d6da571..491955de735a858a677df3d6fe14d660fdc9b954
@@@ -37,36 -35,36 +35,37 @@@ class TopoDS_Shape
  ///! Kind of an object in a document
  typedef int ObjectKind;
  
- const ObjectKind KIND_UNKNOWN           = 0; ///! Unrecognized object
- const ObjectKind KIND_IMAGE             = 1;
- const ObjectKind KIND_POLYLINE          = 2;
- const ObjectKind KIND_BATHYMETRY        = 3;
- const ObjectKind KIND_ALTITUDE          = 4;
- const ObjectKind KIND_IMMERSIBLE_ZONE   = 5;
- const ObjectKind KIND_RIVER             = 6;
- const ObjectKind KIND_STREAM            = 7;
- const ObjectKind KIND_CONFLUENCE        = 8;
- const ObjectKind KIND_CHANNEL           = 9;
- const ObjectKind KIND_OBSTACLE          = 10;
- const ObjectKind KIND_DIGUE             = 11;
- const ObjectKind KIND_PROFILE           = 12;
- const ObjectKind KIND_PROFILEUZ         = 13;
- const ObjectKind KIND_POLYLINEXY        = 14;
- const ObjectKind KIND_CALCULATION       = 15;
- const ObjectKind KIND_ZONE              = 16;
- const ObjectKind KIND_REGION            = 17;
- const ObjectKind KIND_VISUAL_STATE      = 18;
- const ObjectKind KIND_ARTIFICIAL_OBJECT = 19;
- const ObjectKind KIND_NATURAL_OBJECT    = 20;
- const ObjectKind KIND_DUMMY_3D          = 21;
- const ObjectKind KIND_SHAPES_GROUP      = 22;
- const ObjectKind KIND_SPLITTED_GROUP    = 23;
- const ObjectKind KIND_STREAM_ALTITUDE   = 24;
- const ObjectKind KIND_OBSTACLE_ALTITUDE = 25;
- const ObjectKind KIND_STRICKLER_TABLE   = 26;
- const ObjectKind KIND_LAND_COVER        = 27;
- const ObjectKind KIND_CHANNEL_ALTITUDE  = 28;
- const ObjectKind KIND_LAST              = KIND_CHANNEL_ALTITUDE;
+ const ObjectKind KIND_UNKNOWN             = 0; ///! Unrecognized object
+ const ObjectKind KIND_IMAGE               = 1;
+ const ObjectKind KIND_POLYLINE            = 2;
+ const ObjectKind KIND_BATHYMETRY          = 3;
+ const ObjectKind KIND_ALTITUDE            = 4;
+ const ObjectKind KIND_IMMERSIBLE_ZONE     = 5;
+ const ObjectKind KIND_RIVER               = 6;
+ const ObjectKind KIND_STREAM              = 7;
+ const ObjectKind KIND_CONFLUENCE          = 8;
+ const ObjectKind KIND_CHANNEL             = 9;
+ const ObjectKind KIND_OBSTACLE            = 10;
+ const ObjectKind KIND_DIGUE               = 11;
+ const ObjectKind KIND_PROFILE             = 12;
+ const ObjectKind KIND_PROFILEUZ           = 13;
+ const ObjectKind KIND_POLYLINEXY          = 14;
+ const ObjectKind KIND_CALCULATION         = 15;
+ const ObjectKind KIND_ZONE                = 16;
+ const ObjectKind KIND_REGION              = 17;
+ const ObjectKind KIND_VISUAL_STATE        = 18;
+ const ObjectKind KIND_ARTIFICIAL_OBJECT   = 19;
+ const ObjectKind KIND_NATURAL_OBJECT      = 20;
+ const ObjectKind KIND_DUMMY_3D            = 21;
+ const ObjectKind KIND_SHAPES_GROUP        = 22;
+ const ObjectKind KIND_SPLIT_GROUP         = 23;
+ const ObjectKind KIND_STREAM_ALTITUDE     = 24;
+ const ObjectKind KIND_OBSTACLE_ALTITUDE   = 25;
+ const ObjectKind KIND_STRICKLER_TABLE     = 26;
+ const ObjectKind KIND_LAND_COVER_OBSOLETE = 27;
 -const ObjectKind KIND_LAND_COVER_MAP      = 28;
++const ObjectKind KIND_CHANNEL_ALTITUDE    = 28;
++const ObjectKind KIND_LAND_COVER_MAP      = 29;
+ const ObjectKind KIND_LAST                = KIND_LAND_COVER_MAP;
  
  DEFINE_STANDARD_HANDLE(HYDROData_Entity, MMgt_TShared)
  
@@@ -421,10 -430,12 +431,14 @@@ protected
  
    Handle(TDataStd_ReferenceList) getReferenceList( const int  theTag,
                                                     const bool theIsCreate ) const;
+   
+   void SetShape( int theTag, const TopoDS_Shape& theShape );
+   TopoDS_Shape GetShape( int theTag ) const;
  
+   int GetGeomChangeFlag() const;
  
 +  int GetGeomChangeFlag() const;
 +
  protected:
    /// Array of pointers to the properties of this object; index in this array is returned by \a AddProperty.
    TDF_Label myLab; ///< label of this object
index d80375117dc2980e87e16b794710a609c3649610,80e11a20c3b83c155fb2a561f5312a3bad5f783f..da40d5172b0f473029aa483b4095a10a21ef215a
@@@ -42,10 -38,8 +41,9 @@@ Handle(HYDROData_IAltitudeObject) HYDRO
    return myAltitudeObject;
  }
  
- double HYDROData_IInterpolator::GetAltitudeForPoint( 
-   const double theCoordX, const double theCoordY ) const
+ double HYDROData_IInterpolator::GetAltitudeForPoint( const double theCoordX, const double theCoordY ) const
  {
 +  DEBTRACE("HYDROData_IInterpolator::GetAltitudeForPoint");
    return myAltitudeObject.IsNull() ? HYDROData_IAltitudeObject::GetInvalidAltitude() :
           myAltitudeObject->GetAltitudeForPoint( gp_XY( theCoordX, theCoordY ) );
  }
index beec42dc5ca864249e2c8999eb0f96aa110a6974,615454a9b8dcab5d2934a85defc60e0d8305a412..09c6dee2d3e6fac1368b9090fe6a2353e7a99db0
  #include "HYDROData_CalculationCase.h"
  #include "HYDROData_Channel.h"
  #include "HYDROData_Confluence.h"
- #include "HYDROData_DummyObject3D.h"
  #include "HYDROData_Digue.h"
- #include "HYDROData_ShapesGroup.h"
+ #include "HYDROData_DummyObject3D.h"
  #include "HYDROData_Image.h"
  #include "HYDROData_ImmersibleZone.h"
+ #include "HYDROData_LandCoverMap.h"
  #include "HYDROData_Obstacle.h"
  #include "HYDROData_ObstacleAltitude.h"
 +#include "HYDROData_ChannelAltitude.h"
  #include "HYDROData_Polyline3D.h"
  #include "HYDROData_PolylineXY.h"
  #include "HYDROData_Profile.h"
@@@ -157,9 -152,10 +157,10 @@@ Handle(HYDROData_Entity) HYDROData_Iter
      case KIND_STREAM_ALTITUDE:    aResult = new HYDROData_StreamAltitude();       break;
      case KIND_OBSTACLE_ALTITUDE:  aResult = new HYDROData_ObstacleAltitude();     break;
      case KIND_STRICKLER_TABLE:    aResult = new HYDROData_StricklerTable();       break;
-     case KIND_LAND_COVER:         aResult = new HYDROData_LandCover();            break;
 -    case KIND_LAND_COVER_MAP:     aResult = new HYDROData_LandCoverMap();         break;
 -
+     case KIND_LAND_COVER_OBSOLETE: break;
 +    case KIND_CHANNEL_ALTITUDE:   aResult = new HYDROData_ChannelAltitude();      break;
-     default:                                                                      break;
++    case KIND_LAND_COVER_MAP:     aResult = new HYDROData_LandCoverMap();         break;
+     default:                       break;
    }
  
    if ( !aResult.IsNull() )
index 3683d30cd676dedbbe76e12c064d7576115eb954,20eead85ab2a6ab08dbbced470a32b015fe94632..240db460801d73ff059a86480fb879f8ec4a80ab
  #include "HYDROData_Tool.h"
  #include "HYDROData_Iterator.h"
  #include "HYDROData_IAltitudeObject.h"
- #include <TNaming_Builder.hxx>
- #include <TNaming_NamedShape.hxx>
  #include <TopoDS_Shape.hxx>
  #include <TDataStd_Integer.hxx>
 +#include <TDataStd_Real.hxx>
  
  #include <QColor>
  
index 2f37ee1dc5550deb157c77a6391d9dfc6184199e,9c738a117a80ee24fe011b18b5bf39cd68b5e196..60b4143a4213c96d8a25deb0ebe0b4343b25d69a
@@@ -461,19 -474,8 +477,9 @@@ TopoDS_Shape HYDROData_Obstacle::Import
    return aResShape;
  }
  
- QColor HYDROData_Obstacle::getDefaultFillingColor() const
- {
-   return DefaultFillingColor();
- }
- QColor HYDROData_Obstacle::getDefaultBorderColor() const
- {
-   return DefaultBorderColor();
- }
  ObjectKind HYDROData_Obstacle::getAltitudeObjectType() const
  {
 +  DEBTRACE("HYDROData_Obstacle::getAltitudeObjectType");
    return KIND_OBSTACLE_ALTITUDE;
  }
  
index bfe75e3b55092840f3f6701cdf2f9e74bb27cc5b,49fa3899596e151e8b3e7ec993ebc9765598062f..bfe75e3b55092840f3f6701cdf2f9e74bb27cc5b
mode 100755,100644..100644
index c0a5a884e0c5cf4861ca2f8b46a6959bbfc3a8bf,661e23c9b6a757a4ba1df0d1047fad084edf98c1..6f247eddc32f07a68190252993d20c8f155effff
  #include "HYDROData_IAltitudeObject.h"
  #include "HYDROData_Document.h"
  #include "HYDROData_NaturalObject.h"
- #include "HYDROData_LandCover.h"
- #include <TNaming_Builder.hxx>
- #include <TNaming_NamedShape.hxx>
- #include <TopoDS_Shape.hxx>
  #include <QStringList>
  #include <TDataStd_Integer.hxx>
+ #include <TopoDS_Shape.hxx>
  
 +#define _DEVDEBUG_
 +#include "HYDRO_trace.hxx"
 +
  IMPLEMENT_STANDARD_HANDLE(HYDROData_Zone, HYDROData_Entity)
  IMPLEMENT_STANDARD_RTTIEXT(HYDROData_Zone, HYDROData_Entity)