Salome HOME
Sub objects should not be visualized as the preview of the current operation.
[modules/shaper.git] / src / PartSet / PartSet_Tools.h
index 84b2311a6e7b5bf5e8377c7b19230dd7e9244961..54c8b8978d7da3147079e4af7deb427de268f16d 100644 (file)
@@ -25,6 +25,7 @@
 
 class Handle_V3d_View;
 class ModuleBase_ViewerPrs;
+class ModuleBase_IWorkshop;
 class GeomDataAPI_Point2D;
 class GeomAPI_Pln;
 class GeomAPI_Pnt2d;
@@ -89,15 +90,15 @@ class PARTSET_EXPORT PartSet_Tools
   /// \param theY Y coordinate
   /// \param theTolerance tolerance
   /// \param theIgnore list of features which has to be ignored
-  static std::shared_ptr<GeomDataAPI_Point2D> findAttributePoint(CompositeFeaturePtr theSketch, 
-    double theX, double theY, double theTolerance, const QList<FeaturePtr>& theIgnore = QList<FeaturePtr>());
+  //static std::shared_ptr<GeomDataAPI_Point2D> findAttributePoint(CompositeFeaturePtr theSketch, 
+  //  double theX, double theY, double theTolerance, const QList<FeaturePtr>& theIgnore = QList<FeaturePtr>());
 
   /// Returns a point attribute of the feature by the coordinates if it is
   /// \param theFeature the feature
   /// \param theX the horizontal coordinate
   /// \param theY the vertical coordinate
-  static std::shared_ptr<GeomDataAPI_Point2D> getFeaturePoint(FeaturePtr theFeature,
-                                                                double theX, double theY);
+  //static std::shared_ptr<GeomDataAPI_Point2D> getFeaturePoint(FeaturePtr theFeature,
+  //                                                              double theX, double theY);
 
   /// \brief Save the double to the feature. If the attribute is double, it is filled.
   /// \param theFeature the feature
@@ -205,7 +206,16 @@ class PARTSET_EXPORT PartSet_Tools
   * \param theShape - a Shape
   * \param theSketch - a Sketch to get a plane of converting to 2d
   */
-  static AttributePtr findAttributeBy2dPoint(ObjectPtr theObj, const TopoDS_Shape theShape, FeaturePtr theSketch);
+  static AttributePtr findAttributeBy2dPoint(ObjectPtr theObj, const TopoDS_Shape theShape,
+                                             FeaturePtr theSketch);
+
+  /**
+  * Finds an attribute value in attribute reference attribute value
+  * \param theAttribute - an attribure reference filled with an attribute
+  * \return a geometry shape
+  */
+  static GeomShapePtr findShapeBy2DPoint(const AttributePtr& theAttribute,
+                                         ModuleBase_IWorkshop* theWorkshop);
 
 protected:
   /// Returns an object that is under the mouse point. Firstly it checks the highlighting,