(get_variations): new function. Try flipping dirs for collisions.
(generate_optimal_chord_configuration): new function. 1-opt search
for better configuration.
* lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
(score_ties_configuration): new function.
(generate_ties_configuration): new function.
(generate_base_chord_configuration): new function.
(set_ties_config_standard_directions): Move body from tie-column-format.cc
(set_manual_tie_configuration): Move body from tie-column-format.cc
* lily/tie-formatting-problem.cc (score_configuration): score
tie/dot collisions.
{
Tie_configuration * ptr = get_configuration (ties_config[i].position_, ties_config[i].dir_);
if (specifications_[i].has_manual_position_)
- ptr->delta_y_ = specifications_[i].manual_position_;
-
+ {
+ ptr->delta_y_
+ = (specifications_[i].manual_position_ - ties_config[i].position_)
+ * 0.5 * details_.staff_space_;
+ }
copy.push (*ptr);
}
if (scm_is_number (scm_car (entry)))
{
spec.has_manual_position_ = true;
- spec.manual_position_ = scm_to_double (scm_cdr (entry));
+ spec.manual_position_ = scm_to_double (scm_car (entry));
}
k ++;