- PartSet_Tools::convertTo2D(aPoint, mySketch, theWnd->v3dView(), aX, anY);
- setPoint(aX, anY);
-
+ Handle(V3d_View) aView = theWnd->v3dView();
+ PartSet_Tools::convertTo2D(aPoint, mySketch, aView, aX, anY);
+ //setPoint(aX, anY);
+
+ std::shared_ptr<GeomDataAPI_Point2D> aFeaturePoint = std::dynamic_pointer_cast<
+ GeomDataAPI_Point2D>(feature()->data()->attribute(attributeID()));
+ QList<FeaturePtr> aIgnore;
+ aIgnore.append(feature());
+
+ double aTolerance = aView->Convert(7);
+ std::shared_ptr<GeomDataAPI_Point2D> aAttrPnt =
+ PartSet_Tools::findAttributePoint(mySketch, aX, anY, aTolerance, aIgnore);
+ if (aAttrPnt.get() != NULL) {
+ aFeaturePoint->setValue(aAttrPnt->pnt());
+ PartSet_Tools::createConstraint(mySketch, aAttrPnt, aFeaturePoint);
+ emit vertexSelected();
+ }