From a3344c1ab80127b639085add9365ba0d0c93e29b Mon Sep 17 00:00:00 2001 From: PaddleStroke Date: Tue, 7 May 2024 15:42:03 +0200 Subject: [PATCH 1/2] Sketcher: Red point if end-point perpendicular --- src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp b/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp index 982600b8c3..10e5034a12 100644 --- a/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp +++ b/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp @@ -139,7 +139,9 @@ void EditModeGeometryCoinManager::updateGeometryColor(const GeoListFacade& geoli ViewProviderSketchCoinAttorney::getConstraints(viewProvider); for (auto& constr : constraints) { if (constr->Type == Coincident - || (constr->Type == Tangent && constr->FirstPos != Sketcher::PointPos::none)) { + || (constr->Type == Tangent && constr->FirstPos != Sketcher::PointPos::none) + || (constr->Type == Perpendicular && constr->FirstPos != Sketcher::PointPos::none + && constr->SecondPos != Sketcher::PointPos::none)) { if ((constr->First == GeoId && constr->FirstPos == PosId) || (constr->Second == GeoId && constr->SecondPos == PosId)) { return true; From b48bbe390b34fcdd0bccc568805f23480f7afcb9 Mon Sep 17 00:00:00 2001 From: PaddleStroke Date: Tue, 7 May 2024 16:00:00 +0200 Subject: [PATCH 2/2] Sketcher: change rendering height of internal alignment. So that bpsline appears connected. Fixes second part of #13849 --- src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp b/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp index 10e5034a12..72912cfb53 100644 --- a/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp +++ b/src/Mod/Sketcher/Gui/EditModeGeometryCoinManager.cpp @@ -303,7 +303,7 @@ void EditModeGeometryCoinManager::updateGeometryColor(const GeoListFacade& geoli z = viewOrientationFactor * drawingParameters.zLowPoints; } else { - if (isExternal) { + if (isExternal || isInternalAlignedGeom(GeoId)) { z = viewOrientationFactor * drawingParameters.zRootPoint; } else if (geom->getConstruction()) {