source file of the GNU LilyPond music typesetter
- (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "bezier.hh"
#include "lily-proto.hh"
-
+#include "lily-guile.hh"
/**
Implement bow specific bezier curve. Calculate bezier curve for bow
from bow paratime_signatures. */
class Bezier_bow
{
- Bezier curve_;
- Array<Offset> encompass_;
+public:
+ Bezier_bow (Array<Offset> encompass, Direction dir);
+
+ Bezier get_bezier () const;
+ Bezier get_default_bezier (Real h_inf, Real r_0) const;
+ Real get_default_height (Real h_inf, Real r_0, Real length) const;
+ void set_default_bezier (Real h_inf, Real r_0);
- void blow_fit ();
- void calc_default (Real h);
- void to_canonic_form ();
- void calc_tangent_controls ();
- Real fit_factor () const;
+ /**
+ The canonical bezier.
+ */
+ Bezier curve_;
+protected:
+ Array<Offset> encompass_;
- Paper_def* paper_l_;
+private:
+ void to_canonical_form ();
Direction dir_;
Real alpha_;
Offset origin_;
-public:
- Real rc_factor_,
- height_limit_,
- ratio_;
-
-
- Bezier_bow (Array<Offset> points, Direction dir);
- void calculate ();
- Bezier get_curve () const;
};