fix: Correct dimensioning arc direction and align text angle snapping

Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
This commit is contained in:
2026-02-16 19:50:09 -07:00
parent c9c1b38f45
commit 8febc50fec

View File

@@ -391,8 +391,7 @@ void ViewportWidget::paintGL()
while (relativeMouseAngle <= -180.0) relativeMouseAngle += 360.0; while (relativeMouseAngle <= -180.0) relativeMouseAngle += 360.0;
while (relativeMouseAngle > 180.0) relativeMouseAngle -= 360.0; while (relativeMouseAngle > 180.0) relativeMouseAngle -= 360.0;
if ((relativeMouseAngle >= 45 && relativeMouseAngle < 135) || if (relativeMouseAngle >= 90 || relativeMouseAngle < -90) {
(relativeMouseAngle >= 135 || relativeMouseAngle < -135)) {
refDir = -refDir; refDir = -refDir;
} }
} }
@@ -590,14 +589,14 @@ void ViewportWidget::paintGL()
while (relativeMouseAngle > 180.0) relativeMouseAngle -= 360.0; while (relativeMouseAngle > 180.0) relativeMouseAngle -= 360.0;
double snappedAngle = 0; double snappedAngle = 0;
if (relativeMouseAngle >= -45 && relativeMouseAngle < 45) { if (relativeMouseAngle >= 0 && relativeMouseAngle < 90) { // Quadrant 1
snappedAngle = inputAngleDegrees; snappedAngle = inputAngleDegrees;
} else if (relativeMouseAngle >= 45 && relativeMouseAngle < 135) { } else if (relativeMouseAngle >= 90 && relativeMouseAngle <= 180) { // Quadrant 2
snappedAngle = 180 - inputAngleDegrees; snappedAngle = 180.0 - inputAngleDegrees;
} else if (relativeMouseAngle >= 135 || relativeMouseAngle < -135) { } else if (relativeMouseAngle < -90) { // Quadrant 3
snappedAngle = inputAngleDegrees + 180.0; snappedAngle = -180.0 + inputAngleDegrees;
} else { // -135 to -45 } else { // Quadrant 4
snappedAngle = 360 - inputAngleDegrees; snappedAngle = -inputAngleDegrees;
} }
double finalAngleRad = qDegreesToRadians(refAngle + snappedAngle); double finalAngleRad = qDegreesToRadians(refAngle + snappedAngle);