X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROPy%2FHYDROData_IPolyline.sip;h=92e70a5d5a9baf46fc8e2176650b249138ea3997;hb=f58865bdfb548ebba53ecb264f17ef357fa4c409;hp=1e0e9c7db828957732108f8d63f4225701876c9a;hpb=d84fadb6fba0d9ef3926995eab878175cc24e291;p=modules%2Fhydro.git diff --git a/src/HYDROPy/HYDROData_IPolyline.sip b/src/HYDROPy/HYDROData_IPolyline.sip index 1e0e9c7d..92e70a5d 100644 --- a/src/HYDROPy/HYDROData_IPolyline.sip +++ b/src/HYDROPy/HYDROData_IPolyline.sip @@ -24,13 +24,16 @@ #include %End -class HYDROData_IPolyline : HYDROData_Entity /Abstract/ +class HYDROData_IPolyline : public HYDROData_Entity /Abstract/ { - %TypeHeaderCode #include %End + typedef gp_XY Point; + typedef NCollection_Sequence PointsList; + + %ConvertToSubClassCode switch ( sipCpp->GetKind() ) { @@ -54,6 +57,134 @@ public: public: + /** + * Sets wire color for object. + */ + virtual void SetWireColor( const QColor& theColor ); + + /** + * Returns wire color of object. + */ + virtual QColor GetWireColor() const; + + /** + * Returns default wire color for new object. + */ + static QColor DefaultWireColor(); + +public: + + /** + * Returns number of sections. + */ + virtual int NbSections() const = 0; + + /** + * Adds new one section. + * \param theSectName name of the section + * \param theSectionType type of section + * \param theIsClosed flag indicates closures of section + */ + virtual void AddSection( const TCollection_AsciiString& theSectName, + const HYDROData_IPolyline::SectionType theSectionType, + const bool theIsClosed ) = 0; + + /** + * Returns name of section with given index. + * \param theSectionIndex index of section + */ + virtual TCollection_AsciiString GetSectionName( const int theSectionIndex ) const = 0; + + /** + * Set name for section with given index. + * \param theSectionIndex index of section + * \param theSectionName new section name + */ + virtual void SetSectionName( const int theSectionIndex, + const TCollection_AsciiString& theSectionName ) = 0; + + /** + * Returns type of section with given index. + * \param theSectionIndex index of section + */ + virtual HYDROData_IPolyline::SectionType GetSectionType( const int theSectionIndex ) const = 0; + + /** + * Set type for section with given index. + * \param theSectionIndex index of section + * \param theSectionType new section type + */ + virtual void SetSectionType( const int theSectionIndex, + const HYDROData_IPolyline::SectionType theSectionType ) = 0; + + /** + * Returns true if section with given index is closed. + * \param theSectionIndex index of section + */ + virtual bool IsClosedSection( const int theSectionIndex ) const = 0; + + /** + * Set closed flag for section with given index. + * \param theSectionIndex index of section + * \param theIsClosed new closures state + */ + virtual void SetSectionClosed( const int theSectionIndex, + const bool theIsClosed ) = 0; + + /** + * Removes section with given index. + * \param theSectionIndex index of section + */ + virtual void RemoveSection( const int theSectionIndex ) = 0; + + /** + * Removes all sections. + */ + virtual void RemoveSections() = 0; + + + /** + * Return number of profile points. + * \return number of points + */ + int NbPoints( const int theSectionIndex = -1 ) const; + + /** + * Adds new point for section with index "theSectionIndex". + * \param theSectionIndex index of section + * \param thePoint point to add + * \param theBeforeIndex if not equal -1 then insert point before this index + */ + virtual void AddPoint( const int theSectionIndex, + const HYDROData_IPolyline::Point& thePoint, + const int theBeforeIndex = -1 ) = 0; + + /** + * Replaces point for section with index "theSectionIndex". + * \param theSectionIndex index of section + * \param thePoint new point + * \param thePointIndex index of point to replace + */ + virtual void SetPoint( const int theSectionIndex, + const HYDROData_IPolyline::Point& thePoint, + const int thePointIndex ) = 0; + + /** + * Removes point from section with index "theSectionIndex". + * \param theSectionIndex index of section + * \param thePointIndex index of point + */ + virtual void RemovePoint( const int theSectionIndex, + const int thePointIndex ) = 0; + + + /** + * Returns list of points. + * \param theSectionIndex if not equal -1 then list of points returned + * only for section with this index + * \return list of points + */ + virtual HYDROData_IPolyline::PointsList GetPoints( const int theSectionIndex = -1 ) const = 0; protected: