Real head_encompass_penalty_;
Real stem_encompass_penalty_;
- Real closeness_factor_;
Real edge_attraction_factor_;
Real same_slope_penalty_;
Real steeper_slope_factor_;
demerit += stem_dem;
}
- else if (!edge)
- {
- Interval ext;
- ext.add_point (state.encompass_infos_[j].stem_);
- ext.add_point (state.encompass_infos_[j].head_);
-
- // ?
- demerit += -state.parameters_.closeness_factor_
- * min (state.dir_
- * (y - (ext[state.dir_] + state.dir_ * state.parameters_.free_head_distance_)), 0.0)
- / state.encompass_infos_.size ();
- }
}
add_score (demerit, "encompass");
= get_detail (details, ly_symbol2scm ("head-encompass-penalty"));
stem_encompass_penalty_
= get_detail (details, ly_symbol2scm ("stem-encompass-penalty"));
- closeness_factor_
- = get_detail (details, ly_symbol2scm ("closeness-factor"));
edge_attraction_factor_
= get_detail (details, ly_symbol2scm ("edge-attraction-factor"));
same_slope_penalty_
"Demerit to apply when note heads collide with a slur.\n"
"@item stem-encompass-penalty\n"
"Demerit to apply when stems collide with a slur.\n"
- "@item closeness-factor\n"
- "Additional demerit used when scoring encompasses.\n"
"@item edge-attraction-factor\n"
"Factor used to calculate the demerit for distances"
" between slur endpoints and their corresponding base"
/* properties */
"annotation "
- "avoid-slur " /* UGH. */
+ "avoid-slur " /* UGH. */
"control-points "
"dash-definition "
"details "
'((region-size . 4)
(head-encompass-penalty . 1000.0)
(stem-encompass-penalty . 30.0)
- (closeness-factor . 10)
(edge-attraction-factor . 4)
(same-slope-penalty . 20)
(steeper-slope-factor . 50)