- AttributePtr aFlyOutAttribute = aData->attribute(SketchPlugin_Constraint::FLYOUT_VALUE_PNT());
- if (!aFlyOutAttribute->isInitialized()) {
- return; // not possible to show length because points are not defined
- }
- std::shared_ptr<GeomDataAPI_Point2D> aFlyOutAttr =
- std::dynamic_pointer_cast<GeomDataAPI_Point2D>(aFlyOutAttribute);
- std::shared_ptr<GeomAPI_Pnt> aFlyoutPnt = myPlane->to3D(aFlyOutAttr->x(), aFlyOutAttr->y());
- gp_Pnt aFlyPnt = aFlyoutPnt->impl<gp_Pnt>();
-
- double aDistance = aPnt1.Distance(aPnt2);
-
- double aFlyout = 0;
- double aDist = 0.0;
- if (aDistance < Precision::Confusion())
- aDist = aPnt1.Distance(aFlyPnt);
- else {
- gp_Lin aLine(aPnt1, gp_Vec(aPnt1, aPnt2));
- aDist = aLine.Distance(aFlyPnt);
+ myDistance = SketcherPrs_Tools::getFlyoutDistance(myConstraint);
+ myPlane = gp_Pln(mySketcherPlane->impl<gp_Ax3>());
+
+ DataPtr aData = myConstraint->data();
+ AttributeDoublePtr anAttributeValue = aData->real(SketchPlugin_Constraint::VALUE());
+ myValue.init(anAttributeValue);