- Real rad = Staff_symbol_referencer::staff_radius (me);
- Drul_array<int> edge_beam_counts
- (Stem::beam_multiplicity (stems[0]).length () + 1,
- Stem::beam_multiplicity (stems.back ()).length () + 1);
-
- Real beam_translation = get_beam_translation (me) / ss;
-
- Real reasonable_score = (is_knee) ? 200000 : 100;
- for (vsize i = qscores.size (); i--;)
- if (qscores[i].demerits < reasonable_score)
- {
- Real d = score_forbidden_quants (qscores[i].yl, qscores[i].yr,
- rad, slt, thickness, beam_translation,
- edge_beam_counts, ldir, rdir, ¶meters);
- qscores[i].demerits += d;
-
-#if DEBUG_BEAM_SCORING
- qscores[i].score_card_ += to_string (" F %.2f", d);
-#endif
- }
-
- for (vsize i = qscores.size (); i--;)
- if (qscores[i].demerits < reasonable_score)
- {
- Real d = score_stem_lengths (stems, stem_infos,
- base_lengths, stem_xposns,
- xl, xr,
- is_knee,
- qscores[i].yl, qscores[i].yr, ¶meters);
- qscores[i].demerits += d;
-
-#if DEBUG_BEAM_SCORING
- qscores[i].score_card_ += to_string (" L %.2f", d);
-#endif
- }