Salome HOME
Move color tags to the base geometrical object class.
[modules/hydro.git] / src / HYDROData / HYDROData_Polyline.h
index 4f9e4008fb1d5eb923a82a09d774c4394a8293bb..53395cd813cb79460818615884a6b57282fc68ac 100755 (executable)
@@ -13,7 +13,7 @@ class TopoDS_Wire;
 
 DEFINE_STANDARD_HANDLE(HYDROData_Polyline, HYDROData_Object)
 
-struct PolylineSection
+struct HYDRODATA_EXPORT PolylineSection
 {
 public:
   enum SectionType{ SECTION_POLYLINE=0, SECTION_SPLINE=1 };
@@ -48,7 +48,7 @@ protected:
     DataTag_SectionsClosed,
     DataTag_SectionsSize,
     DataTag_SectionsType,
-    DataTag_Wire
+    DataTag_ZValue
   };
 
 public:
@@ -59,6 +59,16 @@ public:
    */
   HYDRODATA_EXPORT virtual const ObjectKind GetKind() const {return KIND_POLYLINE;}
 
+  /**
+   * Returns the top shape of the object.
+   */
+  HYDRODATA_EXPORT virtual TopoDS_Shape GetTopShape() const;
+
+  /**
+   * Returns the 3d shape of the object.
+   */
+  HYDRODATA_EXPORT virtual TopoDS_Shape GetShape3D() const;
+
   /**
    * Dump object to Python script representation.
    */
@@ -74,53 +84,47 @@ public:
    * Replace current polyline data by new sections list
    * \param theSections the sections list
    */
-  HYDRODATA_EXPORT void setPolylineData( const PolylineData& theSections );
+  HYDRODATA_EXPORT void SetPolylineData( const PolylineData& theSections );
 
   /**
    * Return polyline data
    * \return polyline section list
    */
-  HYDRODATA_EXPORT PolylineData getPolylineData() const;
+  HYDRODATA_EXPORT PolylineData GetPolylineData() const;
    
   /**
    * Returns true if polyline is closed
    */
-  HYDRODATA_EXPORT bool isClosed() const;
+  HYDRODATA_EXPORT bool IsClosed() const;
 
   /**
    * Return polyline dimension
    * \return polyline dimension (2 or 3)
    */
-  HYDRODATA_EXPORT int getDimension() const;
+  HYDRODATA_EXPORT int GetDimension() const;
 
   /**
    * Set polyline dimension (2 or 3)
    * \param theDimension the polyline dimension
    */
-  HYDRODATA_EXPORT void setDimension( int theDimension );
+  HYDRODATA_EXPORT void SetDimension( int theDimension );
 
   /**
    * Remove all sections from polyline
    */
-  HYDRODATA_EXPORT void removeAll();
+  HYDRODATA_EXPORT void RemoveAll();
 
   /**
    * Returns the painter path.
    * Note: currently only the first section of the polyline data is taken into account.
    */
-  HYDRODATA_EXPORT QPainterPath painterPath() const;
+  HYDRODATA_EXPORT QPainterPath GetPainterPath() const;
 
-  /**
-   * Sets the wire contour of the object.
-   */
-  HYDRODATA_EXPORT void SetWire( const TopoDS_Wire& theWire );
-
-  /**
-   * Returns the wire contour of the object.
-   */
-  HYDRODATA_EXPORT TopoDS_Wire Wire() const;
+  HYDRODATA_EXPORT void   SetZValue( const double theZValue );
+  HYDRODATA_EXPORT double ZValue() const;
 
 protected:
+
   /**
    * Update the wire contour on the basis of the polyline data.
    */
@@ -134,12 +138,12 @@ protected:
    * Creates new object in the internal data structure. Use higher level objects 
    * to create objects with real content.
    */
-  HYDROData_Polyline();
+  HYDRODATA_EXPORT HYDROData_Polyline();
 
   /**
    * Destructs properties of the object and object itself, removes it from the document.
    */
-  ~HYDROData_Polyline();
+  HYDRODATA_EXPORT ~HYDROData_Polyline();
 };
 
 #endif