#include <HYDROData_PriorityQueue.h>
#include <HYDROData_Zone.h>
#include <HYDROData_Warning.h>
+#include <vector>
#ifdef WIN32
#pragma warning ( disable: 4251 )
class Handle(HYDROData_Zone);
class Handle(HYDROData_PolylineXY);
class Handle(HYDROData_ShapesGroup);
-class Handle(HYDROData_SplittedShapesGroup);
+class Handle(HYDROData_SplitShapesGroup);
class Handle(HYDROData_Document);
class Handle(HYDROData_StricklerTable);
class Handle(HYDROData_LandCoverMap);
/**\class HYDROData_CalculationCase
- * \brief Calculation case is defined by selection of Geometry objects with or without \93Zone of water\94.
+ * \brief Calculation case is defined by selection of Geometry objects with or without �Zone of water�.
*
*/
class HYDROData_CalculationCase : public HYDROData_Entity
DataTag_Region, ///< reference regions
DataTag_Polyline, ///< reference boundary polyline
DataTag_GeometryGroup, ///< reference geometry groups
- DataTag_SplittedGroups, ///< reference splitted groups
+ DataTag_SplitGroups, ///< reference split groups
DataTag_CustomRules, ///< custom rules
DataTag_AssignmentMode, ///< assignment mode
DataTag_StricklerTable, ///< reference Strickler table
+ DataTag_InterPoly, ///< intersection polyline
DataTag_LandCover_Obsolete, ///< reference land covers
DataTag_CustomLandCoverRules_Obsolete, ///< custom rules for land covers priority
/**
* Updates the name of this object.
- * Reimplemented to update the names of regions, zones and splitted groups.
+ * Reimplemented to update the names of regions, zones and split groups.
*/
HYDRODATA_EXPORT virtual void SetName( const QString& theName );
/**
* Dump Calculation object to Python script representation.
*/
- HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
+ HYDRODATA_EXPORT virtual QStringList DumpToPython( const QString& thePyScriptPath,
+ MapOfTreatedObjects& theTreatedObjects ) const;
/**
* Update the calcualtion case object.
/**
* Returns all reference geometry groups of calculation case.
*/
- HYDRODATA_EXPORT virtual HYDROData_SequenceOfObjects GetSplittedGroups() const;
+ HYDRODATA_EXPORT virtual HYDROData_SequenceOfObjects GetSplitGroups() const;
/**
* Removes all reference geometry groups from calculation case.
*/
- HYDRODATA_EXPORT virtual void RemoveSplittedGroups();
+ HYDRODATA_EXPORT virtual void RemoveSplitGroups();
+
+ HYDRODATA_EXPORT virtual bool AddInterPoly( const Handle(HYDROData_PolylineXY)& theInterPolyline );
+
+ HYDRODATA_EXPORT virtual void RemoveInterPolyObject( const Handle(HYDROData_PolylineXY)& theInterPolyline );
+
+ HYDRODATA_EXPORT virtual HYDROData_SequenceOfObjects GetInterPolyObjects() const;
/**
* Exports the calculation case data (shell and groups) to GEOM module.
HYDRODATA_EXPORT virtual bool Export( GEOM::GEOM_Gen_var theGeomEngine,
SALOMEDS::Study_ptr theStudy,
QString& theGeomObjEntry,
- QString& theErrorMsg ) const;
+ QString& theErrorMsg,
+ QString& statMess) const;
#endif
public:
* \return result altitude value
*/
HYDRODATA_EXPORT virtual double GetAltitudeForPoint( const gp_XY& thePoint,
- const Handle(HYDROData_Region)& theRegion ) const;
+ const Handle(HYDROData_Region)& theRegion,
+ int theMethod = 0) const;
/**
* Returns altitude for given point on given zone.
* \return result altitude value
*/
HYDRODATA_EXPORT virtual double GetAltitudeForPoint( const gp_XY& thePoint,
- const Handle(HYDROData_Zone)& theZone ) const;
+ const Handle(HYDROData_Zone)& theZone,
+ int theMethod = 0) const;
/**
* Returns strickler coefficient for given point.
*/
HYDRODATA_EXPORT double GetStricklerCoefficientForPoint( const gp_XY& thePoint ) const;
+ HYDRODATA_EXPORT std::vector<double> GetStricklerCoefficientForPoints(const std::vector<gp_XY>& thePoints,
+ double DefValue,
+ bool UseMax ) const;
+
/**
* Returns altitudes for given points on given region.
* \param thePoints the points to examine
*/
HYDRODATA_EXPORT virtual NCollection_Sequence<double> GetAltitudesForPoints(
const NCollection_Sequence<gp_XY>& thePoints,
- const Handle(HYDROData_Region)& theRegion ) const;
+ const Handle(HYDROData_Region)& theRegion,
+ int theMethod = 0) const;
/**
* Returns altitudes for given points on given zone.
*/
HYDRODATA_EXPORT virtual NCollection_Sequence<double> GetAltitudesForPoints(
const NCollection_Sequence<gp_XY>& thePoints,
- const Handle(HYDROData_Zone)& theZone ) const;
+ const Handle(HYDROData_Zone)& theZone,
+ int theMethod = 0) const;
/**
* Returns region to which the point is belongs.
bool isPrefix = true );
/**
- * Add new one splitted edges group for calculation case.
+ * Add new one split edges group for calculation case.
*/
- Handle(HYDROData_SplittedShapesGroup) addNewSplittedGroup( const QString& theName );
+ Handle(HYDROData_SplitShapesGroup) addNewSplitGroup( const QString& theName );
/**
* Exports the given faces as shell and the given groups to GEOM module.
* \param theGeomEngine GEOM module engine
* \param theStudy SALOMEDS study, is used for publishing of GEOM objects
* \param theFaces the list of faces to make shell
- * \param theSplittedGroups the list of groups
+ * \param theSplitGroups the list of groups
* \return true in case of success
*/
#ifndef LIGHT_MODE
bool Export( GEOM::GEOM_Gen_var theGeomEngine,
SALOMEDS::Study_ptr theStudy,
- const TopTools_ListOfShape& theFaces,
+ const NCollection_IndexedDataMap<TopoDS_Shape, QString>& aFacesToName,
const HYDROData_ShapesGroup::SeqOfGroupsDefs& theGroupsDefs,
QString& theGeomObjEntry ) const;
#endif
const QString& theOldCaseName,
const QString& theName );
- void DumpRegionsToPython( QStringList& theResList,
- MapOfTreatedObjects& theTreatedObjects,
+ void DumpRegionsToPython( QStringList& theResList,
+ const QString& thePyScriptPath,
+ MapOfTreatedObjects& theTreatedObjects,
const HYDROData_SequenceOfObjects& theRegions ) const;
protected: