From bc1b2d1f8e70910d20ee1b5ffd9378680ebe3097 Mon Sep 17 00:00:00 2001 From: Michele Spagnolo Date: Fri, 7 Jul 2023 10:53:23 +0200 Subject: [PATCH] Fix cross beam force horizontal --- src/engraving/layout/v0/beamtremololayout.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/engraving/layout/v0/beamtremololayout.cpp b/src/engraving/layout/v0/beamtremololayout.cpp index dbceb0421949d..2287148357fa0 100644 --- a/src/engraving/layout/v0/beamtremololayout.cpp +++ b/src/engraving/layout/v0/beamtremololayout.cpp @@ -720,8 +720,12 @@ bool BeamTremoloLayout::calculateAnchorsCross() minY = std::max(minY, chordBeamAnchorY(toChord(c))); } } + m_startAnchor.ry() = (maxY + minY) / 2; m_endAnchor.ry() = (maxY + minY) / 2; + m_startAnchor.setX(chordBeamAnchorX(startCr, ChordBeamAnchorType::Start)); + m_endAnchor.setX(chordBeamAnchorX(endCr, ChordBeamAnchorType::End)); + m_slope = 0; if (!noSlope()) { @@ -825,8 +829,6 @@ bool BeamTremoloLayout::calculateAnchorsCross() // nothing needs to be done, the beam is already horizontal and placed nicely } } - m_startAnchor.setX(chordBeamAnchorX(startCr, ChordBeamAnchorType::Start)); - m_endAnchor.setX(chordBeamAnchorX(endCr, ChordBeamAnchorType::End)); m_slope = (m_endAnchor.y() - m_startAnchor.y()) / (m_endAnchor.x() - m_startAnchor.x()); } return true;