along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <complex>
-
#include "misc.hh"
#include "offset.hh"
#include "warn.hh"
-/*
- Return the 2-log, rounded down
-*/
-int
-intlog2 (int d)
-{
- if (d <= 0)
- error ("intlog2 with negative argument: " + ::to_string (d));
- int i = 0;
- while ((d != 1))
- {
- d /= 2;
- i++;
- }
-
- assert (! (d / 2));
- return i;
-}
-
double
log_2 (double x)
{
return result;
}
-
-Offset
-get_point_in_y_direction (Offset orig, Real slope, Real dist, Direction dir)
-{
- if (slope == infinity_f)
- return orig + Offset (dir * dist, 0.0);
-
- Real x = slope == 0.0 ? 1.0 * dir : 1.0 * sign (slope) * dir;
- Real y = slope * x;
- Real angle = atan2 (y, x);
-
- complex<Real> orig_c (orig[X_AXIS], orig[Y_AXIS]);
- complex<Real> to_move = polar (dist, angle);
- complex<Real> res = orig_c + to_move;
-
- return Offset (real (res), imag (res));
-}