X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_Profile.h;h=45b916a8bdfe548197af18dd77703ebf7d179725;hb=7810759dad7d7f4552ad1008af73112509256813;hp=9f8aa531c06efb031ddc7048d6149cedc80ddd48;hpb=89c9794998495fcd82e49e22a75502367de46bd5;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_Profile.h b/src/HYDROData/HYDROData_Profile.h index 9f8aa531..45b916a8 100644 --- a/src/HYDROData/HYDROData_Profile.h +++ b/src/HYDROData/HYDROData_Profile.h @@ -43,6 +43,11 @@ public: */ HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_PROFILE; } + /** + * Dump object to Python script representation. + */ + HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const; + /** * Returns the top shape of the object. */ @@ -60,12 +65,21 @@ public: */ HYDRODATA_EXPORT virtual void Update(); + HYDRODATA_EXPORT virtual void UpdateLocalCS( double theDx, double theDy ); + /** - * Dump object to Python script representation. + * Returns default filling color for new profile. */ - HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const; + HYDRODATA_EXPORT static QColor DefaultFillingColor(); + + /** + * Returns default border color for new profile. + */ + HYDRODATA_EXPORT static QColor DefaultBorderColor(); +public: + /** * Check profile data and returns true if profile is valid. * Validity is determined by: @@ -87,27 +101,27 @@ public: * Set first(left) point for profile. * \param thePoint the point */ - HYDRODATA_EXPORT void SetFirstPoint( const gp_XY& thePoint ); + HYDRODATA_EXPORT void SetLeftPoint( const gp_XY& thePoint, bool IsConvertFromGlobal = false ); /** * Returns first(left) point of profile. * \param thePoint[out] profile first point * \return true if point has been set */ - HYDRODATA_EXPORT bool GetFirstPoint( gp_XY& thePoint ) const; + HYDRODATA_EXPORT bool GetLeftPoint( gp_XY& thePoint, bool IsConvertToGlobal = false ) const; /** * Set last(right) point for profile. * \param thePoint the point */ - HYDRODATA_EXPORT void SetLastPoint( const gp_XY& thePoint ); + HYDRODATA_EXPORT void SetRightPoint( const gp_XY& thePoint, bool IsConvertFromGlobal = false ); /** * Returns last(right) point of profile. * \param thePoint[out] profile last point * \return true if point has been set */ - HYDRODATA_EXPORT bool GetLastPoint( gp_XY& thePoint ) const; + HYDRODATA_EXPORT bool GetRightPoint( gp_XY& thePoint, bool IsConvertToGlobal = false ) const; /** @@ -147,15 +161,14 @@ public: * First and last points will be automatically updated. * \param thePoints the list with new profile points */ - HYDRODATA_EXPORT void SetProfilePoints( const ProfilePoints& thePoints ); + HYDRODATA_EXPORT void SetProfilePoints( const ProfilePoints& thePoints, bool IsConvertFromGlobal = true ); /** * Returns profile points. * Empty sequence is returned if first or last point was not set. * \return profile points list */ - HYDRODATA_EXPORT ProfilePoints GetProfilePoints() const; - + HYDRODATA_EXPORT ProfilePoints GetProfilePoints( bool IsConvertToGlobal = false ) const; public: // Public methods to work with files. @@ -177,27 +190,42 @@ public: * - georeferenced presentation of profile (3 points in line X,Y,Z) * Create as many objects as many profiles in the file are defined. * \param theFileName the path to file - * \return \c true if file has been successfully read + * \return \c number of successfully imported profiles */ - HYDRODATA_EXPORT static bool ImportFromFile( const Handle(HYDROData_Document)& theDoc, - const TCollection_AsciiString& theFileName ); + HYDRODATA_EXPORT static int ImportFromFile( const Handle(HYDROData_Document)& theDoc, + const TCollection_AsciiString& theFileName, + NCollection_Sequence& theBadProfilesIds ); /** * Imports Profile data from file. * \param theFileName the path to file + * \param theIsRead set to true if at least one non empty string was read from file * \return \c true if file has been successfully read */ - HYDRODATA_EXPORT virtual bool ImportFromFile( const TCollection_AsciiString& theFileName ); + HYDRODATA_EXPORT virtual bool ImportFromFile( const TCollection_AsciiString& theFileName, + bool* theIsRead = 0 ); /** * Imports Profile data from file. * \param theFile file to read + * \param theIsRead set to true if at least one non empty string was read from file * \return \c true if file has been successfully read */ - HYDRODATA_EXPORT virtual bool ImportFromFile( OSD_File& theFile ); + HYDRODATA_EXPORT virtual bool ImportFromFile( OSD_File& theFile, + bool* theIsRead = 0 ); protected: + /** + * Returns default filling color for new object. + */ + HYDRODATA_EXPORT virtual QColor getDefaultFillingColor() const; + + /** + * Returns default border color for new object. + */ + HYDRODATA_EXPORT virtual QColor getDefaultBorderColor() const; + /** * Checks and if necessary create child 3D object. * Reimplemented to prevent creation of 3D child object. @@ -213,12 +241,12 @@ protected: * Creates new object in the internal data structure. Use higher level objects * to create objects with real content. */ - HYDROData_Profile(); + HYDRODATA_EXPORT HYDROData_Profile(); /** * Destructs properties of the object and object itself, removes it from the document. */ - ~HYDROData_Profile(); + HYDRODATA_EXPORT ~HYDROData_Profile(); }; #endif