Update bearing even when angle is constrained

Partial fix #61587
This commit is contained in:
Alessandro Pasotti 2025-05-23 15:54:02 +02:00 committed by Nyall Dawson
parent f0d0e27d21
commit bcfd875f53

View File

@ -1478,7 +1478,7 @@ void QgsAdvancedDigitizingDockWidget::updateUnlockedConstraintValues( const QgsP
const QgsPoint penultimatePt = penultimatePointV2( &penulPointExist );
// --- angle
if ( !mAngleConstraint->isLocked() && previousPointExist )
if ( previousPointExist )
{
double prevAngle = 0.0;
@ -1492,7 +1492,10 @@ void QgsAdvancedDigitizingDockWidget::updateUnlockedConstraintValues( const QgsP
// Modulus
const double angle = std::fmod( xAngle - prevAngle, 360.0 );
mAngleConstraint->setValue( angle );
if ( !mAngleConstraint->isLocked() )
{
mAngleConstraint->setValue( angle );
}
// Bearing (azimuth)
double bearing { std::fmod( xAngle, 360.0 ) };