X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FSketchPlugin_ConstraintAngle.cpp;h=108818439d2952726b478afaacf2aedcf69afc61;hb=b5893b0a30fac08134c24de4565cb513a43affa6;hp=9743e651172399894cb791471910b701f8211752;hpb=bd9d4bb5ec157cf7a6f8118d197d5a4c85706d83;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/SketchPlugin_ConstraintAngle.cpp b/src/SketchPlugin/SketchPlugin_ConstraintAngle.cpp index 9743e6511..108818439 100644 --- a/src/SketchPlugin/SketchPlugin_ConstraintAngle.cpp +++ b/src/SketchPlugin/SketchPlugin_ConstraintAngle.cpp @@ -149,10 +149,16 @@ void SketchPlugin_ConstraintAngle::attributeChanged(const std::string& theID) myFlyoutUpdate = false; } else if (theID == SketchPlugin_ConstraintAngle::TYPE_ID()) { - double anAngle = calculateAngle(); std::shared_ptr aValueAttr = std::dynamic_pointer_cast< - ModelAPI_AttributeDouble>(data()->attribute(SketchPlugin_ConstraintAngle::VALUE())); - aValueAttr->setValue(anAngle); + ModelAPI_AttributeDouble>(data()->attribute(SketchPlugin_ConstraintAngle::ANGLE_VALUE_ID())); + double anAngle = calculateAngle(); + if (aValueAttr->text().empty()) + aValueAttr->setValue(anAngle); + else { + aValueAttr = std::dynamic_pointer_cast< + ModelAPI_AttributeDouble>(data()->attribute(SketchPlugin_ConstraintAngle::VALUE())); + aValueAttr->setValue(anAngle); + } } else if (theID == SketchPlugin_ConstraintAngle::ANGLE_VALUE_ID()) { updateConstraintValueByAngleValue();