X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_Obstacle.h;h=3641ba9d592f978e8f87c5243df000762f2eeb74;hb=81c9f5cdf82909d0aebd2c491c50fa7516cc80b7;hp=bfa194e691dcf72c4556bf2ee0820dd5243321a9;hpb=2d99821157e770385d7af917b2d22d6aa3cacb7e;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_Obstacle.h b/src/HYDROData/HYDROData_Obstacle.h index bfa194e6..3641ba9d 100644 --- a/src/HYDROData/HYDROData_Obstacle.h +++ b/src/HYDROData/HYDROData_Obstacle.h @@ -20,7 +20,8 @@ protected: { DataTag_First = HYDROData_ArtificialObject::DataTag_First + 100, ///< first tag, to reserve DataTag_GeomObjectEntry, ///< study entry of the imported GEOM object - DataTag_FilePath ///< imported file path + DataTag_FilePath, ///< imported file path + DataTag_Translation, ///< translation coefficients }; public: @@ -36,6 +37,19 @@ public: */ HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const; + /** + * Update the immersible zone object. + * Call this method whenever you made changes for object data. + */ + HYDRODATA_EXPORT virtual void Update(); + + HYDRODATA_EXPORT virtual void UpdateLocalCS( double theDx, double theDy ); + + /** + * Checks that object has 2D presentation. Reimlemented to retun true. + */ + HYDRODATA_EXPORT virtual bool IsHas2dPrs() const; + /** * Returns the top shape of the object. */ @@ -57,6 +71,11 @@ public: HYDRODATA_EXPORT static QColor DefaultBorderColor(); + /** + * Sets the 3d shape of the object. + */ + HYDRODATA_EXPORT virtual void SetShape3D( const TopoDS_Shape& theShape ); + public: /** @@ -83,16 +102,32 @@ public: */ HYDRODATA_EXPORT QString GetFilePath() const; - /** + + /** + * Imports shape from IOR. + * \param theIOR the IOR of Geom object + * \return \c true if shape has been successfully imported + */ + HYDRODATA_EXPORT virtual bool ImportFromGeomIOR( const TCollection_AsciiString& theIOR ); + + /** * Stores the study entry of the imported GEOM object. * \param theEntry GEOM object entry */ - HYDRODATA_EXPORT void SetGeomObjectEntry(const QString& theEntry); + HYDRODATA_EXPORT void SetGeomObjectEntry( const TCollection_AsciiString& theEntry ); /** * Returns the imported GEOM object entry. */ - HYDRODATA_EXPORT QString GetGeomObjectEntry() const; + HYDRODATA_EXPORT TCollection_AsciiString GetGeomObjectEntry() const; + + + /** + * Translate the obstacle to the given distance. + */ + HYDRODATA_EXPORT void Translate( const double theDx, + const double theDy, + const double theDz ); protected: @@ -106,22 +141,14 @@ protected: */ HYDRODATA_EXPORT virtual QColor getDefaultBorderColor() const; -protected: - - friend class HYDROData_Iterator; - - /** - * Creates new object in the internal data structure. Use higher level objects - * to create objects with real content. - */ - HYDRODATA_EXPORT HYDROData_Obstacle(); - /** - * Destructs properties of the object and object itself, removes it from the document. + * Returns the type of child altitude object. + * Reimplemented to create obstacle altitude object. */ - virtual HYDRODATA_EXPORT ~HYDROData_Obstacle(); + HYDRODATA_EXPORT virtual ObjectKind getAltitudeObjectType() const; private: + /** * Imports shape from the BREP file. * \param theFilePath the path to file @@ -142,6 +169,37 @@ private: * \return shape as TopoDS_Shape (null shape if import was failed) */ TopoDS_Shape ImportSTEP( const QString& theFilePath ) const; + + /** + * Create all necessary child group objects. + */ + void createGroupObjects(); + + /** + * Sets the translation coefficients. + */ + void setTranslation( const double theDx, const double theDy, const double theDz ); + + /** + * Returns the translation coefficients. + */ + bool getTranslation( double& theDx, double& theDy, double& theDz ) const; + +protected: + + friend class HYDROData_Iterator; + + /** + * Creates new object in the internal data structure. Use higher level objects + * to create objects with real content. + */ + HYDRODATA_EXPORT HYDROData_Obstacle(); + + /** + * Destructs properties of the object and object itself, removes it from the document. + */ + virtual HYDRODATA_EXPORT ~HYDROData_Obstacle(); + }; #endif