fix #294298 : Diagonal line: End hook can disappear or elongate when Begin hook is set to None

This commit is contained in:
AntonioBL 2020-04-09 15:36:02 +02:00
parent 96c03195e3
commit bda740ff66
5 changed files with 453 additions and 4 deletions

View file

@ -261,8 +261,9 @@ void TextLineBaseSegment::layout()
// diagonal line with no text or hooks - just use the basic rectangle for line
if (_text->empty() && _endText->empty() && pp2.y() != 0
&& textLineBase()->beginHookType() == HookType::NONE) {
npoints = 2;
&& textLineBase()->beginHookType() == HookType::NONE
&& textLineBase()->endHookType() == HookType::NONE) {
npoints = 1; // 2 points, but only one line must be drawn
points[0] = pp1;
points[1] = pp2;
lineLength = sqrt(QPointF::dotProduct(pp2-pp1, pp2-pp1));

View file

@ -42,7 +42,7 @@ else
frametext ottava bend-1 \
barline-1 barline-2 instrument-1 symbol-1 \
slurs-1 slurs-2 slurs-3 slurs-4 slurs-5 slurs-6 slurs-7 slurs-8 slurs-9 slurs-10 \
hairpins-1 pedal-1 line-1 line-2 line-3 line-4 line-5 line-6 gliss-1 gliss-2\
hairpins-1 pedal-1 line-1 line-2 line-3 line-4 line-5 line-6 line-7 gliss-1 gliss-2\
chord-layout-1 chord-layout-2 chord-layout-3 chord-layout-4 chord-layout-5\
chord-layout-6 chord-layout-7 chord-layout-8 chord-layout-9 chord-layout-10\
chord-layout-11 chord-layout-12 chord-layout-13 chord-layout-14 chord-layout-15 chord-layout-16 chord-layout-17\

View file

@ -21,7 +21,7 @@ set SRC=mmrest-1,bravura-mmrest,gonville-mmrest,mmrest-2,mmrest-4,mmrest-5,mmres
emmentaler-text-3,gonville-text-3,bravura-text-3,musejazz-text-3, ^
frametext,ottava,bend-1, ^
barline-1,barline-2,instrument-1,symbol-1, ^
slurs-1,slurs-2,slurs-3,slurs-4,hairpins-1,pedal-1,line-1,line-2,line-3,line-4,line-5,line-6,gliss-1,gliss-2, ^
slurs-1,slurs-2,slurs-3,slurs-4,hairpins-1,pedal-1,line-1,line-2,line-3,line-4,line-5,line-6,line-7,gliss-1,gliss-2, ^
chord-layout-1,chord-layout-2,chord-layout-3,chord-layout-4,chord-layout-5, ^
chord-layout-6,chord-layout-7,chord-layout-8,chord-layout-9,chord-layout-10, ^
chord-layout-11,chord-layout-12,chord-layout-13,chord-layout-14,chord-layout-15,chord-layout-16,chord-layout-17, ^

BIN
vtest/line-7-ref.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

448
vtest/line-7.mscx Normal file
View file

@ -0,0 +1,448 @@
<?xml version="1.0" encoding="UTF-8"?>
<museScore version="3.01">
<programVersion>3.5.0</programVersion>
<programRevision>3543170</programRevision>
<Score>
<LayerTag id="0" tag="default"></LayerTag>
<currentLayer>0</currentLayer>
<Division>480</Division>
<Style>
<pageWidth>3.93701</pageWidth>
<pageHeight>1.96851</pageHeight>
<pagePrintableWidth>3.77953</pagePrintableWidth>
<pageEvenLeftMargin>0.0787403</pageEvenLeftMargin>
<pageOddLeftMargin>0.0787403</pageOddLeftMargin>
<pageEvenTopMargin>0</pageEvenTopMargin>
<pageEvenBottomMargin>0</pageEvenBottomMargin>
<pageOddTopMargin>0</pageOddTopMargin>
<pageOddBottomMargin>0</pageOddBottomMargin>
<pageTwosided>0</pageTwosided>
<staffUpperBorder>6</staffUpperBorder>
<staffLowerBorder>3</staffLowerBorder>
<minSystemDistance>5.5</minSystemDistance>
<maxSystemDistance>7.5</maxSystemDistance>
<lyricsMinBottomDistance>4</lyricsMinBottomDistance>
<clefLeftMargin>0.64</clefLeftMargin>
<clefKeyRightMargin>1.75</clefKeyRightMargin>
<barNoteDistance>1.2</barNoteDistance>
<lastSystemFillLimit>0.03</lastSystemFillLimit>
<pedalPosBelow x="0" y="0"/>
<trillPosAbove x="0" y="0"/>
<showMeasureNumber>0</showMeasureNumber>
<showFooter>0</showFooter>
<dynamicsFontStyle>0</dynamicsFontStyle>
<Spatium>1.764</Spatium>
</Style>
<showInvisible>1</showInvisible>
<showUnprintable>1</showUnprintable>
<showFrames>1</showFrames>
<showMargins>0</showMargins>
<metaTag name="arranger"></metaTag>
<metaTag name="composer"></metaTag>
<metaTag name="copyright"></metaTag>
<metaTag name="creationDate">2014-10-03</metaTag>
<metaTag name="lyricist"></metaTag>
<metaTag name="movementNumber"></metaTag>
<metaTag name="movementTitle"></metaTag>
<metaTag name="platform">Linux</metaTag>
<metaTag name="poet"></metaTag>
<metaTag name="source"></metaTag>
<metaTag name="translator"></metaTag>
<metaTag name="workNumber"></metaTag>
<metaTag name="workTitle"></metaTag>
<Part>
<Staff id="1">
<StaffType group="pitched">
<name>stdNormal</name>
</StaffType>
</Staff>
<trackName>Piano</trackName>
<Instrument>
<shortName>Pno.</shortName>
<trackName>Piano</trackName>
<minPitchP>21</minPitchP>
<maxPitchP>108</maxPitchP>
<minPitchA>21</minPitchA>
<maxPitchA>108</maxPitchA>
<Articulation>
<velocity>100</velocity>
<gateTime>70</gateTime>
</Articulation>
<Articulation name="staccato">
<velocity>100</velocity>
<gateTime>40</gateTime>
</Articulation>
<Articulation name="tenuto">
<velocity>100</velocity>
<gateTime>100</gateTime>
</Articulation>
<Articulation name="sforzato">
<velocity>120</velocity>
<gateTime>100</gateTime>
</Articulation>
<Channel>
<program value="0"/>
<synti>Fluid</synti>
</Channel>
</Instrument>
</Part>
<Staff id="1">
<!-- Measure 1 -->
<Measure>
<voice>
<KeySig>
<accidental>2</accidental>
</KeySig>
<TimeSig>
<sigN>4</sigN>
<sigD>4</sigD>
</TimeSig>
<StaffText>
<text>none-none</text>
</StaffText>
<Spanner type="Pedal">
<Pedal>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="-0.292972" y="1.66017"/>
</Segment>
</Pedal>
<next>
<location>
<fractions>1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<StaffText>
<text>none-90°</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<fractions>-1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<endHookType>1</endHookType>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="-0.195314" y="2.44143"/>
</Segment>
</Pedal>
<next>
<location>
<measures>1</measures>
<fractions>-1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
</voice>
</Measure>
<!-- Measure 2 -->
<Measure>
<LayoutBreak>
<subtype>line</subtype>
</LayoutBreak>
<voice>
<StaffText>
<text>none-45°</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<measures>-1</measures>
<fractions>1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<endHookType>2</endHookType>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="-0.292972" y="2.14846"/>
</Segment>
</Pedal>
<next>
<location>
<fractions>1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<StaffText>
<text>none-90°T</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<fractions>-1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<endHookType>3</endHookType>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="-0.292972" y="2.14846"/>
</Segment>
</Pedal>
<next>
<location>
<measures>1</measures>
<fractions>-1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
</voice>
</Measure>
<!-- Measure 3 -->
<Measure>
<voice>
<StaffText>
<text>90°-none</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<measures>-1</measures>
<fractions>1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<beginHookType>1</beginHookType>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="0" y="1.17189"/>
</Segment>
</Pedal>
<next>
<location>
<fractions>1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<StaffText>
<text>45°-none</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<fractions>-1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<beginHookType>2</beginHookType>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="4.1157e-07" y="1.17189"/>
</Segment>
</Pedal>
<next>
<location>
<measures>1</measures>
<fractions>-1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
</voice>
</Measure>
<!-- Measure 4 -->
<Measure>
<voice>
<StaffText>
<text>90°T-none</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<measures>-1</measures>
<fractions>1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<beginHookType>3</beginHookType>
<diagonal>1</diagonal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="-0.585944" y="1.17189"/>
</Segment>
</Pedal>
<next>
<location>
<fractions>1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<StaffText>
<text>none-none</text>
</StaffText>
<Spanner type="Pedal">
<prev>
<location>
<fractions>-1/2</fractions>
</location>
</prev>
</Spanner>
<Spanner type="Pedal">
<Pedal>
<Segment>
<subtype>0</subtype>
<offset x="0" y="0"/>
<off2 x="-0.292972" y="0"/>
</Segment>
</Pedal>
<next>
<location>
<fractions>1/2</fractions>
</location>
</next>
</Spanner>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<Chord>
<durationType>quarter</durationType>
<Note>
<pitch>74</pitch>
<tpc>16</tpc>
</Note>
</Chord>
<BarLine>
<subtype>end</subtype>
</BarLine>
<Spanner type="Pedal">
<prev>
<location>
<fractions>-1/2</fractions>
</location>
</prev>
</Spanner>
</voice>
</Measure>
</Staff>
</Score>
</museScore>