# HG changeset patch # User Jamie Forth # Date 1302520489 -3600 # Node ID 89c20fd8abc00eda1a0ee6814b8641884ae4cf8f # Parent d605fd37b0eede02a279594a6c212dea144baaae make sure ioi-from-bar is normalised to crotchet duration diff -r d605fd37b0ee -r 89c20fd8abc0 base/methods.lisp --- a/base/methods.lisp Sun Apr 10 18:28:27 2011 +0100 +++ b/base/methods.lisp Mon Apr 11 12:14:49 2011 +0100 @@ -570,14 +570,16 @@ time-signatures? We should at least be checking." (cond ((within-short-bar-p event) - (+ (timepoint (onset event)) - (- (duration (bar-period (car (get-applicable-time-signatures - event (composition event))) - event)) - (duration (current-bar event (composition event)))))) + (/ (+ (timepoint (onset event)) + (- (duration (bar-period (car (get-applicable-time-signatures + event (composition event))) + event)) + (duration (current-bar event (composition event))))) + (duration (crotchet event)))) (t - (- (timepoint (onset event)) - (timepoint (current-bar event (composition event))))))) + (/ (- (timepoint (onset event)) + (timepoint (current-bar event (composition event)))) + (duration (crotchet event)))))) (defmethod ioi-from-bar ((constituent constituent)) "FIXME: Check for short bars, or maybe just use the first event?" diff -r d605fd37b0ee -r 89c20fd8abc0 implementations/mtp/methods.lisp --- a/implementations/mtp/methods.lisp Sun Apr 10 18:28:27 2011 +0100 +++ b/implementations/mtp/methods.lisp Mon Apr 11 12:14:49 2011 +0100 @@ -319,4 +319,5 @@ ;;; Metre related (defmethod ioi-from-bar ((event mtp-event)) - (mod (timepoint event) (%mtp-barlength event))) + (/ (mod (timepoint event) (%mtp-barlength event)) + (duration (crotchet event))))