X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROCurveCreator%2FCurveCreator_ICurve.hxx;h=9effa478a0db3ef2ae5107ac27d1a389a7d7e8c6;hb=4e1b53167581be7e084a3d71c075507bc6699c06;hp=fa0317469d6b13278ba4876d4923e18795d1aa63;hpb=26e583f66a1d492ebe7d2cab874273697e455f8c;p=modules%2Fhydro.git diff --git a/src/HYDROCurveCreator/CurveCreator_ICurve.hxx b/src/HYDROCurveCreator/CurveCreator_ICurve.hxx index fa031746..9effa478 100644 --- a/src/HYDROCurveCreator/CurveCreator_ICurve.hxx +++ b/src/HYDROCurveCreator/CurveCreator_ICurve.hxx @@ -26,6 +26,8 @@ #include "CurveCreator_Macro.hxx" #include #include +#include +#include class Handle_AIS_InteractiveObject; @@ -87,9 +89,9 @@ public: //! Clear the polyline (remove all sections) virtual bool clear() = 0; - //! Join range of sections to one section (join all sections if -1 is passed in one of arguments) - virtual bool join( const int theISectionTo = -1, - const int theISectionFrom = -1 ) = 0; + //! Join list of sections to one section (join all if the list is empty) + // The first section in the list is a leader, another sections are joined to it + virtual bool join( const std::list& theSections ) = 0; //! Get number of sections virtual int getNbSections() const = 0; @@ -151,7 +153,8 @@ public: const std::deque& theNewCoords ) = 0; //! Set coordinates of specified points from different sections - virtual bool setSeveralPoints( const SectionToPointCoordsList &theSectionToPntCoords) = 0; + virtual bool setSeveralPoints( const SectionToPointCoordsList &theSectionToPntCoords, + const bool theIsToSaveDiff = true ) = 0; //! Remove point with given id virtual bool removePoint( const int theISection, const int theIPnt = -1 ) = 0; @@ -173,6 +176,21 @@ public: */ virtual int getNbPoints( const int theISection ) const = 0; + /** + * Set skip sorting flag. If the flag is true - points sorting will be skipped. + */ + virtual void setSkipSorting( const bool ) = 0; + + /** + * Indicates whether the points can be sorted. + */ + virtual bool canPointsBeSorted() = 0; + + /** + * Saves points coordinates difference. + * \param theOldCoords the old points coordinates + */ + virtual void saveCoordDiff( const SectionToPointCoordsList &theOldCoords ) = 0; /***********************************************/ /*** Presentation methods ***/