diff --git a/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.cpp b/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.cpp index d4ae3165e..272dae97c 100644 --- a/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.cpp +++ b/src/libs/vtools/dialogs/tools/dialogcurveintersectaxis.cpp @@ -229,7 +229,10 @@ void DialogCurveIntersectAxis::ChosenObject(quint32 id, const SceneObject &type) switch (number) { case (0): - if (type == SceneObject::Spline || type == SceneObject::Arc || type == SceneObject::SplinePath) + if (type == SceneObject::Spline + || type == SceneObject::Arc + || type == SceneObject::ElArc + || type == SceneObject::SplinePath) { if (SetObject(id, ui->comboBoxCurve, tr("Select axis point"))) { diff --git a/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.cpp b/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.cpp index eb6804844..9d26ad3b2 100644 --- a/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.cpp +++ b/src/libs/vtools/dialogs/tools/dialogpointofintersectioncurves.cpp @@ -166,7 +166,10 @@ void DialogPointOfIntersectionCurves::ChosenObject(quint32 id, const SceneObject { if (prepare == false)// After first choose we ignore all objects { - if (type == SceneObject::Spline || type == SceneObject::Arc || type == SceneObject::SplinePath) + if (type == SceneObject::Spline + || type == SceneObject::Arc + || type == SceneObject::ElArc + || type == SceneObject::SplinePath) { auto point = qobject_cast(vis); SCASSERT(point != nullptr); diff --git a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp index ef1ffedd5..8949b583e 100644 --- a/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp +++ b/src/libs/vtools/tools/drawTools/operation/vabstractoperation.cpp @@ -585,7 +585,6 @@ QT_WARNING_DISABLE_GCC("-Wswitch-default") break; } case GOType::Arc: - case GOType::EllipticalArc: { VSimpleCurve *curve = InitCurve(object.id, &(VAbstractTool::data), obj->getType()); connect(curve, &VSimpleCurve::Choosed, [this](quint32 id) @@ -594,6 +593,15 @@ QT_WARNING_DISABLE_GCC("-Wswitch-default") }); break; } + case GOType::EllipticalArc: + { + VSimpleCurve *curve = InitCurve(object.id, &(VAbstractTool::data), obj->getType()); + connect(curve, &VSimpleCurve::Choosed, [this](quint32 id) + { + emit ChoosedTool(id, SceneObject::ElArc); + }); + break; + } case GOType::Spline: case GOType::CubicBezier: { diff --git a/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp b/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp index 9a03cac98..defc9bc0e 100644 --- a/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp +++ b/src/libs/vtools/tools/drawTools/toolcurve/vtoolellipticalarc.cpp @@ -74,7 +74,7 @@ VToolEllipticalArc::VToolEllipticalArc(VAbstractPattern *doc, VContainer *data, QGraphicsItem *parent) :VAbstractSpline(doc, data, id, parent) { - sceneType = SceneObject::Arc; + sceneType = SceneObject::ElArc; this->setPath(ToolPath()); this->setPen(QPen(Qt::black, qApp->toPixel(WidthHairLine(*VAbstractTool::data.GetPatternUnit()))/factor));