diff --git a/src/Mod/Sketcher/Gui/DrawSketchDefaultHandler.h b/src/Mod/Sketcher/Gui/DrawSketchDefaultHandler.h index 1d01ef1d0f..3fd21f487f 100644 --- a/src/Mod/Sketcher/Gui/DrawSketchDefaultHandler.h +++ b/src/Mod/Sketcher/Gui/DrawSketchDefaultHandler.h @@ -863,6 +863,21 @@ protected: // endpoint-to-edge tangency (*resultpointonobject)->Type = Sketcher::Tangent; } + else if (resultcoincident != AutoConstraints.end() + && (*resultcoincident)->FirstPos == Sketcher::PointPos::mid + && (*resultcoincident)->SecondPos == Sketcher::PointPos::mid + && geom1 && geom2 + && (geom1->is() + || geom1->is()) + && (geom2->is() + || geom2->is())) { + // equality + auto c = std::make_unique(); + c->Type = Sketcher::Equal; + c->First = geoId1; + c->Second = ac.GeoId; + AutoConstraints.push_back(std::move(c)); + } else { // regular edge to edge tangency auto c = std::make_unique(); c->Type = Sketcher::Tangent;