X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FSketchPlugin_Circle.cpp;h=bf8a7d8d07b41186c1d6e62c7932970b7b7ce461;hb=34bfe89b8ad83a4a3d5b07bcf08a4df075c3f83c;hp=1b74f50ee4f42b5a33db3ba991ed714e3f00af45;hpb=79b1a844d2efcc1b4c7acf43c27c97aa3accd8da;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/SketchPlugin_Circle.cpp b/src/SketchPlugin/SketchPlugin_Circle.cpp index 1b74f50ee..bf8a7d8d0 100644 --- a/src/SketchPlugin/SketchPlugin_Circle.cpp +++ b/src/SketchPlugin/SketchPlugin_Circle.cpp @@ -83,21 +83,13 @@ void SketchPlugin_Circle::move(double theDeltaX, double theDeltaY) aPoint1->move(theDeltaX, theDeltaY); } -double SketchPlugin_Circle::distanceToPoint(const std::shared_ptr& thePoint) -{ - std::shared_ptr aData = data(); - std::shared_ptr aPoint = - std::dynamic_pointer_cast(aData->attribute(CENTER_ID())); - - return aPoint->pnt()->distance(thePoint); -} - bool SketchPlugin_Circle::isFixed() { return data()->selection(EXTERNAL_ID())->context().get() != NULL; } void SketchPlugin_Circle::attributeChanged(const std::string& theID) { - if (theID == EXTERNAL_ID()) { + // the second condition for unability to move external segments anywhere + if (theID == EXTERNAL_ID() || isFixed()) { std::shared_ptr aSelection = data()->selection(EXTERNAL_ID())->value(); // update arguments due to the selection value if (aSelection && !aSelection->isNull() && aSelection->isEdge()) {