diff --git a/src/Mod/Sketcher/Gui/DrawSketchHandlerArc.h b/src/Mod/Sketcher/Gui/DrawSketchHandlerArc.h index 31d94c7e9e..4c590150ee 100644 --- a/src/Mod/Sketcher/Gui/DrawSketchHandlerArc.h +++ b/src/Mod/Sketcher/Gui/DrawSketchHandlerArc.h @@ -587,7 +587,6 @@ void DSHArcControllerBase::doEnforceControlParameters(Base::Vector2d& onSketchPo } break; case SelectMode::SeekThird: { auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; - auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (handler->constructionMethod() == DrawSketchHandlerArc::ConstructionMethod::Center) { if (fifthParam->isSet) { @@ -602,6 +601,7 @@ void DSHArcControllerBase::doEnforceControlParameters(Base::Vector2d& onSketchPo } } else { + auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (fifthParam->isSet) { onSketchPos.x = fifthParam->getValue(); } @@ -677,7 +677,6 @@ void DSHArcController::adaptParameters(Base::Vector2d onSketchPos) } break; case SelectMode::SeekThird: { auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; - auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (handler->constructionMethod() == DrawSketchHandlerArc::ConstructionMethod::Center) { double range = Base::toDegrees(handler->arcAngle); @@ -693,6 +692,7 @@ void DSHArcController::adaptParameters(Base::Vector2d onSketchPos) fifthParam->setLabelRange(handler->arcAngle); } else { + auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (!fifthParam->isSet) { setOnViewParameterValue(OnViewParameter::Fifth, onSketchPos.x); } @@ -734,15 +734,13 @@ void DSHArcController::doChangeDrawSketchHandlerMode() } } break; case SelectMode::SeekThird: { + auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; if (handler->constructionMethod() == DrawSketchHandlerArc::ConstructionMethod::Center) { - auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; - if (fifthParam->hasFinishedEditing) { handler->setState(SelectMode::End); } } else { - auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (fifthParam->hasFinishedEditing || sixthParam->hasFinishedEditing) { diff --git a/src/Mod/Sketcher/Gui/DrawSketchHandlerCircle.h b/src/Mod/Sketcher/Gui/DrawSketchHandlerCircle.h index 7389906e9e..70127148e6 100644 --- a/src/Mod/Sketcher/Gui/DrawSketchHandlerCircle.h +++ b/src/Mod/Sketcher/Gui/DrawSketchHandlerCircle.h @@ -451,7 +451,6 @@ void DSHCircleControllerBase::doEnforceControlParameters(Base::Vector2d& onSketc } break; case SelectMode::SeekSecond: { auto& thirdParam = onViewParameters[OnViewParameter::Third]; - auto& fourthParam = onViewParameters[OnViewParameter::Fourth]; if (handler->constructionMethod() == DrawSketchHandlerCircle::ConstructionMethod::Center) { @@ -472,6 +471,7 @@ void DSHCircleControllerBase::doEnforceControlParameters(Base::Vector2d& onSketc } } else { + auto& fourthParam = onViewParameters[OnViewParameter::Fourth]; if (thirdParam->isSet) { onSketchPos.x = thirdParam->getValue(); } @@ -533,7 +533,6 @@ void DSHCircleController::adaptParameters(Base::Vector2d onSketchPos) } break; case SelectMode::SeekSecond: { auto& thirdParam = onViewParameters[OnViewParameter::Third]; - auto& fourthParam = onViewParameters[OnViewParameter::Fourth]; if (handler->constructionMethod() == DrawSketchHandlerCircle::ConstructionMethod::Center) { @@ -557,6 +556,7 @@ void DSHCircleController::adaptParameters(Base::Vector2d onSketchPos) thirdParam->setPoints(start, end); } else { + auto& fourthParam = onViewParameters[OnViewParameter::Fourth]; if (!thirdParam->isSet) { setOnViewParameterValue(OnViewParameter::Third, onSketchPos.x); } @@ -609,7 +609,6 @@ void DSHCircleController::doChangeDrawSketchHandlerMode() } break; case SelectMode::SeekSecond: { auto& thirdParam = onViewParameters[OnViewParameter::Third]; - auto& fourthParam = onViewParameters[OnViewParameter::Fourth]; if (thirdParam->hasFinishedEditing && handler->constructionMethod() @@ -617,11 +616,14 @@ void DSHCircleController::doChangeDrawSketchHandlerMode() handler->setState(SelectMode::End); } - else if (onViewParameters.size() > 3 && thirdParam->isSet && fourthParam->isSet - && handler->constructionMethod() - == DrawSketchHandlerCircle::ConstructionMethod::ThreeRim) { + else if (onViewParameters.size() > 3) { + auto& fourthParam = onViewParameters[OnViewParameter::Fourth]; + if (thirdParam->isSet && fourthParam->isSet + && handler->constructionMethod() + == DrawSketchHandlerCircle::ConstructionMethod::ThreeRim) { - handler->setState(SelectMode::SeekThird); + handler->setState(SelectMode::SeekThird); + } } } break; case SelectMode::SeekThird: { diff --git a/src/Mod/Sketcher/Gui/DrawSketchHandlerEllipse.h b/src/Mod/Sketcher/Gui/DrawSketchHandlerEllipse.h index 8e4991699e..24c47734a6 100644 --- a/src/Mod/Sketcher/Gui/DrawSketchHandlerEllipse.h +++ b/src/Mod/Sketcher/Gui/DrawSketchHandlerEllipse.h @@ -556,7 +556,6 @@ void DSHEllipseControllerBase::doEnforceControlParameters(Base::Vector2d& onSket } break; case SelectMode::SeekThird: { auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; - auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (handler->constructionMethod() == DrawSketchHandlerEllipse::ConstructionMethod::Center) { @@ -570,6 +569,7 @@ void DSHEllipseControllerBase::doEnforceControlParameters(Base::Vector2d& onSket } } else { + auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (fifthParam->isSet) { onSketchPos.x = fifthParam->getValue(); } @@ -655,7 +655,6 @@ void DSHEllipseController::adaptParameters(Base::Vector2d onSketchPos) } break; case SelectMode::SeekThird: { auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; - auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (handler->constructionMethod() == DrawSketchHandlerEllipse::ConstructionMethod::Center) { @@ -669,6 +668,7 @@ void DSHEllipseController::adaptParameters(Base::Vector2d onSketchPos) fifthParam->setPoints(start, end); } else { + auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (!fifthParam->isSet) { setOnViewParameterValue(OnViewParameter::Fifth, onSketchPos.x); } @@ -711,7 +711,6 @@ void DSHEllipseController::doChangeDrawSketchHandlerMode() } break; case SelectMode::SeekThird: { auto& fifthParam = onViewParameters[OnViewParameter::Fifth]; - auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (handler->constructionMethod() == DrawSketchHandlerEllipse::ConstructionMethod::Center) { @@ -720,6 +719,7 @@ void DSHEllipseController::doChangeDrawSketchHandlerMode() } } else { + auto& sixthParam = onViewParameters[OnViewParameter::Sixth]; if (fifthParam->hasFinishedEditing || sixthParam->hasFinishedEditing) { handler->setState(SelectMode::End); }