summaryrefslogtreecommitdiff
path: root/lily/include/misc.hh
Commit message (Collapse)AuthorAgeFilesLines
* Issue 4847: Let intlog2 adapt to argument precisionDavid Kastrup2016-05-101-1/+20
| | | | Makes a few warnings disappear without compromising precision.
* Issue 4468/1: stencil-integrate.cc: root out "slopes"David Kastrup2015-07-051-1/+0
| | | | | | | | | They are quite unsuitable for the computational geometry performed here. Their use rendered the code inefficient, obtuse, and unreliable. Contains several other fixes like removing duplicate calculations and wrong values. The C++ <complex> module is no longer used. It had only been used for calculating sin and cos in an obscure manner.
* Run grand replace for 2015.Werner Lemberg2015-01-041-1/+1
|
* Run grand-replace (issue 3765)Carl Sorensen2014-01-111-1/+1
| | | | Run make grand-replace to update all coopyright statements
* Issue 3531: replaced function argument 'string' by 'const string&' where it ↵Frédéric Bron2013-09-101-1/+1
| | | | | | | | | | | | | | makes sense to avoid unnecessary copying of 'string' objects. Measurements on x86_64 (i7-2760QM, 2.40GHz) Fedora 19 with g++ 4.8.1, with configure --enable-optimising --disable-debugging; tests run 10 times, average elapsed time compared (/usr/bin/time) * Bach, Concerto in E major or violin and strings, BWV 1042 (Mutopia source), 38 pages: $ lilypond score.ly -> master: 15.4s, with patch: -0.1% * lilypond regression tests (1153 .ly files): $ lilypond *.ly -> master: 276.6s, with patch: -2.5%
* Improvements in vertical skyline approximations (issue 2148).Mike Solomon2012-08-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The file stencil-integral.cc provides a suite of functions that traverse a stencil and do linear approximations of its components. These are then turned into boxes that are passed to the Skyline constructor. This approximation is used for several vertical skylines including those of VerticalAxisGroup and System. As a result of these more accurate approximations, vertical spacing is more snug between grobs. Additionally, in axis-group-interface.cc, skylines of grobs are no longer compared to a monolithic axis-group skyline but rather all of the component skylines of the axis-group, allowing grobs to be fit under other ones if there is space instead of always shifted over. Two new python scripts allow to visualize the position of skylines. All other changes provide functions that allow for better debugging of Skylines, better approximations of grobs via skylines, and changes to the measurement of distance between grobs via the new Skyline API. This results in a significant time increase in score compilation for objects with complex skylines such as all text grobs. For orchestral scores, the increase is not as steep.
* Run grand-replace for 2012Graham Percival2012-01-091-1/+1
|
* misc.cc: remove utf8_char_len, change callers.David Kastrup2012-01-021-1/+0
| | | | | This was too fragile when fed invalid UTF-8. Callers still are far from pretty.
* Fixes issue 307 (intersection between slurs and extra objects).Mike Solomon2011-10-151-0/+6
| | | | | | Does this by increasing the slur region based on the height of the extremal extra encompass object plus a padding controled by encompass-object-range-overshoot.
* Grand fixcc.py run on all .hh .cc files.Graham Percival2011-08-011-3/+3
| | | | | | | | | | | Apologies for the inconvenience in patch handling, but getting this done at once will cause less long-term problems than trying to do this piecemeal. Note for future git historians: this patch was created by running scripts/auxiliar/fixcc.py \ $(find flower lily -name '*cc' -o -name '*hh' | grep -v /out) with astyle 2.02 installed. No manual changes were made.
* Admin: run yearly grand-replace.Graham Percival2011-01-131-1/+1
|
* Run grand-replace for 2010.Neil Puttock2010-01-231-1/+1
|
* Update source file headers. Fixes using standard GNU package conventions.Jan Nieuwenhuizen2009-11-251-3/+14
| | | | | | | | | | | | | | | | Signed-off-by: Han-Wen Nienhuys <hanwen@xs4all.nl> Signed-off-by: Jan Nieuwenhuizen <janneke@gnu.org> Signed-off-by: John Mandereau <john.mandereau@gmail.com> Signed-off-by: Graham Percival <graham@percival-music.ca> Signed-off-by: Reinhold Kainhofer <reinhold@kainhofer.com> Signed-off-by: Joe Neeman <joeneeman@gmail.com> Signed-off-by: Heikki Johannes Junes <hjunes@gmail.com> Signed-off-by: Neil Puttock <n.puttock@gmail.com> Signed-off-by: Carl D. Sorensen <c_sorensen@byu.edu> Signed-off-by: Mats Bengtsson <mats.bengtsson@s3.kth.se> Signed-off-by: Werner Lemberg <wl@gnu.org> Signed-off-by: Patrick McCarty <pnorcks@gmail.com> Signed-off-by: Nicolas Sceaux <nicolas.sceaux@free.fr>
* Move UTF-8 char length routine into separate function.Patrick McCarty2009-11-121-0/+1
|
* This fixes an endless loop in duration.cc:67.Michael Käppler2009-03-011-0/+7
| | | | | | | | The loop occurred when Duration::Duration(Rational r, bool scale) was called with r.num() >= 2 * r.den(), f.e. the duration of a longa: r.num = 2, r.den = 1. If k < 0, the left-shifting-operator << returns an undefined value instead of right-shifting bits. The fix introduces a new function shift_left() in misc.hh, which behaves different.
* Run grand-replace for 2009.Jan Nieuwenhuizen2009-01-061-1/+1
|
* Run `make grand-replace'.Jan Nieuwenhuizen2008-12-011-1/+1
|
* only do staffline avoidance if we're inside the staff or inside theHan-Wen Nienhuys2007-01-121-1/+1
| | | | ledgers.
* Fix #138 & #139Han-Wen Nienhuys2007-01-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | - use chord formatting for single tie - add all notes + accidentals to chord outline - separate file for Tie_specification - use convex_amplifier for distance penalties: penalties increase superlinearly in distance - tunable padding for skyline - semi tie: set direction with ^ and _ - debug output for semities - for single tie case, introduce penalty for wrong direction - only add symmetry penalties for more than 1 tie. - use exactness to determine whether to override delta_y_ too.
* add 2007 to (c) year.Han-Wen Nienhuys2007-01-081-1/+1
|
* c++ interface for camel_case_to_lisp_identifierHan-Wen Nienhuys2006-11-291-0/+2
|
* * lily/slur-configuration.cc (fit_factor): oops, skip point ifHan-Wen Nienhuys2006-02-221-0/+1
| | | | | | | | | | | | | | | | | | | | intersection gets smaller. This fixes slurs over extreme points. * lily/melody-engraver.cc (stop_translation_timestep): ignore stems with neutral-direction set. * lily/piano-pedal-engraver.cc (create_text_grobs): idem. * lily/open-type-font.cc (load_table): format error. * lily/change-iterator.cc (process): format fix. * flower/include/international.hh (_f): idem. * flower/include/std-string.hh: add format printf attribute. * scm/define-grobs.scm (all-grob-descriptions): height of all PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
* *** empty log message ***Jan Nieuwenhuizen2006-02-161-2/+0
|
* * flower/include/std-string.hh:Jan Nieuwenhuizen2006-02-111-1/+1
| | | | | | | | * flower/include/std-vector.hh: Finish std:: conversion; move flower extensions from std:: namespace. Update users. * lily/include/lily-proto.hh: Replace Link_array__*_ macros by their expansion to vector<*>. Update users.
* * configure.in (--enable-std-vector): New option.Jan Nieuwenhuizen2006-01-311-2/+2
| | | | | | | (--enable-std-string): On by default. * flower/include/std-vector.hh: New file. Enable switch to std::vector, update client code.
* *** empty log message ***Jan Nieuwenhuizen2006-01-261-1/+1
|
* * The grand 2005-2006 replace.Jan Nieuwenhuizen2006-01-061-1/+1
|
* * lily/rest.cc (y_offset_callback): merge function of 3 callbacks.Han-Wen Nienhuys2005-11-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lily/grob.cc (y_parent_positioning): remove axis argument from parent_positioning callbacks. (Grob): junk init code (get_offset): use generic property callbacks for X-offset, Y-offset. Remove Grob::{add,has}_offset_callback. (axis_parent_positioning): new function (axis_offset_symbol): new function (chain_offset_callback): new function (add_offset_callback): new function * lily/beam.cc (rest_collision_callback): change signature; this is now a chained callback. * lily/include/dimension-cache.hh (class Dimension_cache): remove callback administration. * lily/simple-closure.cc: new file. Smob type that allows "grob" member functions * lily/slur-engraver.cc (acknowledge_extra_object): use chained callbacks. * lily/slur.cc (outside_slur_callback): take 2 arguments. * lily/rest.cc (polyphonic_offset_callback): remove. * lily/script-engraver.cc (try_music): remove bool* argument. * scm/script.scm (default-script-alist): set quantize-position appropriately. * lily/script-engraver.cc: remove follow_into_staff_ special coding. * lily/side-position-interface.cc (aligned_side): move staff position quantization from Side_position_interface::quantised_position(). (quantised_position): remove
* * lily/tie-column.cc (set_manual_tie_configuration): new function.Han-Wen Nienhuys2005-09-121-0/+1
| | | | | | | | | | * lily/laissez-vibrer-tie.cc: new file. * lily/tie-column.cc (set_tie_config_directions): new function (final_shape_adjustment): new function. (shift_small_ties): new function. * lily/tie-column.cc (set_chord_outline): new function.
* * flowerJan Nieuwenhuizen2005-03-101-6/+5
| | | | | * lily * kpath-guile: Nitpick run: buildscripts/fixcc.py.
* * scm/lily.scm (completize-formats): new functionHan-Wen Nienhuys2005-01-041-3/+10
| | | | | | | | | | (postprocess-output): new function * lily/paper-book.cc (classic_output): change calling convention. Give basename as first argument. remove Paper_book::post_processing(). * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
* * configure.in: Test for and accept lmodern if EC fonts not found.Jan Nieuwenhuizen2004-11-181-2/+1
| | | | | | | | | | | | | | | | | | | | * Debian lmodern support. * scm/framework-tex.scm (font-load-command): TeX font name mangling for latin1 encoded cork-lm fonts. (convert-to-ps): Load lm.map if available. * ly/paper-defaults.ly: Use cork-lm encoding if ec is not available. * scm/encoding.scm (coding-alist): Add cork-lm encoding. * scm/font.scm: Add header. Autoload cork-lm and ec fonts if available. * lily/kpath.cc (ly_kpathsea_find_file): Rename. Do not use path for absolute file name, that is silly. * lily/score-engraver.cc (initialize):
* * lily/include/slur-scoring.hh (struct Slur_score_state): new fileHan-Wen Nienhuys2004-10-081-0/+9
| | | | | | | | | | | | | | | | | * lily/include/slur-configuration.hh (class Slur_configuration): new file. * lily/slur-configuration.cc: new file. move scoring functions into Slur_configuration. * lily/slur-scoring.cc (Slur_score_state): change static functions to methods of Slur_score_state. * lily/bezier-bow.cc (Message): * flower/include/interval-set.hh (Message): new file. * flower/interval-set.cc (Message): new file.
* ''Han-Wen Nienhuys2002-04-211-1/+1
|
* patch::: 1.3.136.jcn3Jan Nieuwenhuizen2001-03-111-2/+2
| | | | | | | | | | | | | | | | | | | 1.3.136.jcn3 ============ * Finished () beautification. * Bugfix: grob-description.scm: Script::after_line_breaking -> before_line_breaking. 1.3.136.hwn1 ============ * Percent style repeats. * Named music creation: (ly-make-music "Note_req") 1.3.136.jcn2
* release: 1.3.13Han-Wen Nienhuys1999-12-181-22/+8
|
* release: 1.1.28Han-Wen Nienhuys1999-02-081-1/+1
|
* release: 1.0.1Han-Wen Nienhuys1998-08-111-2/+8
|
* release: 0.1.61Han-Wen Nienhuys1998-05-041-5/+11
|
* release: 0.1.45Han-Wen Nienhuys1998-02-111-0/+2
|
* release: 0.1.8Han-Wen Nienhuys1997-08-151-4/+4
|
* release: 0.0.65Han-Wen Nienhuys1997-05-261-1/+1
|
* release: 0.0.39-1Han-Wen Nienhuys1997-03-061-0/+26