連桁を細分する

16 分音符 (あるいはそれより短い音符) の連桁は、デフォルトでは細分されません。つまり、3 つ以上の音符全体が分かれることなく平等に連桁で繋がれます。この挙動は、subdivideBeams プロパティをセットすることで、連桁を細分するように変更することができます。このプロパティがセットされると、連桁が現在の beatBase の間隔で細分されて表示されるようになります。分割された後の音符全体の長さが分割長より短い (不完全な連桁) 場合は、連桁の本数は可能な最長分割グループが基になります。しかし、分割された後の音符が 1 つしか存在しない場合、この制限は適用されません。 beatBase は、明示的にセットされなければ、現在の拍子記号の分母分の 1 に設定されます。beatBase は、このスニペットのように ly:make-moment 関数を用いて、連桁を分割する単位となる長さを分数で指定する必要があります。また、beatBase が変更された場合、beatStructure も新たな beatBase に合わせて変更する必要があります:

\relative c'' {
  c32[ c c c c c c c]

  \set subdivideBeams = ##t
  c32[ c c c c c c c]

  % Set minimum beam subdivision interval to 1/8 just for this beam
  \once \set minimumBeamSubdivisionInterval = \musicLength 8
  c32[ c c c c c c c]

  % Set maximum beam subdivision interval to 1/16 just for this beam
  \once \set maximumBeamSubdivisionInterval = \musicLength 16
  c32[ c c c c c c c]

  % Set maximum beam subdivision interval to 3/8 just for this beam
  \once \set maximumBeamSubdivisionInterval = \musicLength 8*3
  [ \repeat unfold 16 c64 ] r2.

  % Set maximum beam subdivision interval to 1/64 to limit subdivision depth,
  % despite not being metrically correct
  \once \set minimumBeamSubdivisionInterval = \musicLength 32
  \once \set maximumBeamSubdivisionInterval = \musicLength 64
  [ \repeat unfold 32 c128 ] r2.

  % Shorten beam by 1/32
  c32[ c c c c c c] r32

  % Shorten beam by 3/32
  c32[ c c c c] r16.

  % Respect the incomplete beams of the previous two examples
  \set respectIncompleteBeams = ##t
  c32[ c c c c c c] r32
  % no visual change here as last two stems are exempt from this
  % special rule
  c32[ c c c c] r16.
}

[image of music]


LilyPond snippets v2.25.22 (development-branch).