Salome HOME
Merge branch 'Dev_2.1.0' of salome:modules/shaper into Dev_2.1.0
[modules/shaper.git] / src / GeomAPI / GeomAPI_AISObject.h
index 6d0a3f2e5187b66c3a7344e565b86a406ddcd2a9..18fd8fa94ff576a38c69d0048d96d3996c088419 100644 (file)
@@ -36,6 +36,9 @@ class GeomAPI_AISObject : public GeomAPI_Interface
   GEOMAPI_EXPORT 
   void createShape(std::shared_ptr<GeomAPI_Shape> theShape);
 
+  /// Reyirns shape used for the presentation creation (can be NULL)
+  GEOMAPI_EXPORT std::shared_ptr<GeomAPI_Shape> getShape() const;
+
   /** \brief Creates AIS_LengthDimension object
    *  \param[in] theStartPoint  first point for dimension
    *  \param[in] theEndPoint    second point for dimension
@@ -49,6 +52,14 @@ class GeomAPI_AISObject : public GeomAPI_Interface
                       std::shared_ptr<GeomAPI_Pnt> theFlyoutPoint,
                       std::shared_ptr<GeomAPI_Pln> thePlane, double theDistance);
 
+  /**
+   * Returns validity of the AIS distance. It is invalid if set measured geometry is not valid,
+   * e.g. the distance points are equal.
+   * \return a boolean result
+   */
+  GEOMAPI_EXPORT 
+  bool isEmptyDistanceGeometry();
+
   /** \brief Creates AIS_RadiusDimension object
    *  \param[in] theCircle      the radius is created for this circle
    *  \param[in] theFlyoutPoint the flyout of dimension
@@ -111,6 +122,10 @@ class GeomAPI_AISObject : public GeomAPI_Interface
   GEOMAPI_EXPORT 
   void getColor(int& theR, int& theG, int& theB);
 
+  /// \return Current width of the lines of shape
+  GEOMAPI_EXPORT 
+  double width();
+
   /// \brief Assigns the width of the lines of shape
   GEOMAPI_EXPORT 
   bool setWidth(const double& theWidth);