Open o-sapov opened 4 years ago
The problem still exists. Maybe it is helpful to break the @o-sapov example above down to a more reduced one (minimal running code):
<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="https://music-encoding.org/schema/5.0/mei-all.rng" type="application/xml" schematypens="http://purl.oclc.org/dsdl/schematron"?>
<mei xmlns="http://www.music-encoding.org/ns/mei">
<meiHead>
<fileDesc>
<titleStmt>
<title label="NMA digital" type="unit">tie / stem collision</title>
</titleStmt>
<pubStmt/>
</fileDesc>
</meiHead>
<music>
<body>
<mdiv n="1" xml:id="mdiv_72">
<score xml:id="score_78">
<scoreDef key.mode="major" key.pname="c" meter.count="2" meter.unit="4" xml:id="scoreDef_01">
<staffGrp bar.thru="true" xml:id="staffGrp_01">
<staffDef clef.line="4" clef.shape="F" lines="5" n="2" xml:id="staffDef_P2"/>
</staffGrp>
</scoreDef>
<section xml:id="section_A_m1-2">
<measure n="1" xml:id="kv330-3-m155">
<staff n="2" xml:id="staff_252">
<layer n="1" xml:id="layer_258">
<note dur="2" oct="4" pname="c" tstamp="1" xml:id="note_264"/>
</layer>
<layer n="2" xml:id="layer_270">
<note dots="1" dur="4" oct="3" pname="g" stem.dir="up" tstamp="1" xml:id="note_276"/>
<note accid="f" dur="8" oct="3" pname="b" stem.dir="up" tstamp="2.5" xml:id="note_282"/>
</layer>
</staff>
<tie color="green" endid="#note_426" staff="2" startid="#note_264" xml:id="tie_324"/>
</measure>
<measure n="2" xml:id="kv330-3-m156">
<staff n="2" xml:id="staff_408">
<layer n="1" xml:id="layer_414">
<chord dur="4" tstamp="1" xml:id="chord_420">
<note oct="4" pname="c" xml:id="note_426"/>
<note oct="3" pname="a" xml:id="note_432"/>
</chord>
<rest dur="4" oloc="3" ploc="d" tstamp="2" xml:id="rest_438"/>
</layer>
</staff>
</measure>
</section>
</score>
</mdiv>
</body>
</music>
</mei>
The problem is that ties do not have collision avoidance. Note in this example that there is a tie between the two C4 notes in the first two measures, but I convert it to a slur in the second pair of measures, where it then renders properly:
Transcoded from Humdrum
So either collision avoidance should be added to ties, or some new attribute should be added to allow a tie to be treated as if it were a slur to enable the collision avoidance.
Thanks for this very helpful insider tip @craigsapp š
In this example, the tie does not recognizes the stem. Note that the beam direction is explicitly defined by
@stem.dir="up"
.Verovio, versions 3.0.1-7cda52c, 3.1.0-dev-b649cbf:
Correct version would be:
(Neue Mozart Ausgabe, K. 330/003)
MEI: