X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_LandCoverMap.h;h=1d310ef38735609ec3b90e76d64d675aa8b64c74;hb=fce3f1240b6161d7cb837344078e5943b90eca65;hp=c2437d8c7c978f37e05e5a6493c3ba1d9dbf5171;hpb=2226b7cf9e77d4bfa79c75a5e7037bb3df846268;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_LandCoverMap.h b/src/HYDROData/HYDROData_LandCoverMap.h index c2437d8c..1d310ef3 100644 --- a/src/HYDROData/HYDROData_LandCoverMap.h +++ b/src/HYDROData/HYDROData_LandCoverMap.h @@ -25,20 +25,20 @@ #include #include #include +#include +#include -class Handle_HYDROData_StricklerTable; +class HYDROData_StricklerTable; +#include typedef NCollection_IndexedDataMap HYDROData_MapOfFaceToStricklerType; -DEFINE_STANDARD_HANDLE( HYDROData_LandCoverMap, HYDROData_Entity ) - class TopoDS_Shape; class TopoDS_Wire; class TopoDS_Iterator; -class TopTools_ListOfShape; -class Handle( HYDROData_PolylineXY ); -class Handle( HYDROData_Object ); -class gp_Pnt2d; +class HYDROData_PolylineXY; +class HYDROData_Object; +class gp_XY; class HYDROData_LandCoverMap : public HYDROData_Entity { @@ -108,11 +108,13 @@ public: HYDRODATA_EXPORT bool ExportTelemac( const QString& theFileName, double theDeflection, - const Handle_HYDROData_StricklerTable& theTable ) const; + const Handle(HYDROData_StricklerTable)& theTable, + QString& statMessage) const; HYDRODATA_EXPORT bool Add( const Handle( HYDROData_Object )&, const QString& theType ); HYDRODATA_EXPORT bool Add( const Handle( HYDROData_PolylineXY )&, const QString& theType ); + using HYDROData_Entity::Remove; HYDRODATA_EXPORT bool Remove( const TopoDS_Face& ); HYDRODATA_EXPORT bool Remove( const TopTools_ListOfShape& ); @@ -141,18 +143,37 @@ public: HYDRODATA_EXPORT void SetTransparency( double ); HYDRODATA_EXPORT double GetTransparency() const; - HYDRODATA_EXPORT TopoDS_Shape RemoveInternal(const TopoDS_Shape& InSh); + HYDRODATA_EXPORT void RemoveInternal(TopoDS_Shape& ShToRebuild, NCollection_IndexedDataMap* aF2FReplace); + + HYDRODATA_EXPORT bool CheckLinear(); + + HYDRODATA_EXPORT virtual void UpdateLocalCS( double theDx, double theDy ); + + HYDRODATA_EXPORT void ClassifyPoints( const std::vector& thePoints, + std::vector >& theTypes ) const; + + HYDRODATA_EXPORT void ClassifyPoints( const std::vector& thePoints, + const Handle(HYDROData_StricklerTable)& theTable, + std::vector& theTypes ) const; + + HYDRODATA_EXPORT void ClassifyPoints( const std::vector& thePoints, + const Handle(HYDROData_StricklerTable)& theTable, + std::vector& theCoeffs, double DefValue, bool UseMax ) const; protected: void SetShape( const TopoDS_Shape& ); bool Add( const TopoDS_Wire&, const QString& ); + bool LocalPartition( const TopoDS_Shape&, const QString& theNewType ); + static TopoDS_Shape MergeFaces(const TopTools_ListOfShape& theFaces, - bool IsToUnify, double theTolerance = 1E-5 ); + bool IsToUnify, + TopTools_IndexedDataMapOfShapeListOfShape* theShHistory = NULL, + double theTolerance = 1E-5 ); public: - DEFINE_STANDARD_RTTI( HYDROData_LandCoverMap ); + DEFINE_STANDARD_RTTIEXT( HYDROData_LandCoverMap, HYDROData_Entity ); private: friend class Explorer;