/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 1998--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ Copyright (C) 1998--2014 Han-Wen Nienhuys <hanwen@xs4all.nl>
LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include "warn.hh"
#include "ly-smobs.icc"
+#include <cmath>
Pitch::Pitch (int o, int n, Rational a)
{
if (n)
return n;
if (a)
- return a > (Rational)0;
+ return a > (Rational)0 ? 1 : -1;
return 0;
}
int
Pitch::rounded_semitone_pitch () const
{
- return int (double (tone_pitch () * Rational (2)));
+ return int (floor (double (tone_pitch () * Rational (2) + Rational (1, 2))));
}
int
Pitch::rounded_quartertone_pitch () const
{
- return int (double (tone_pitch () * Rational (4)));
+ return int (floor (double (tone_pitch () * Rational (4) + Rational (1, 2))));
}
void