pl 23.ms2
- property noteheadStyle
- first attempt to make harmonics : see input/test/harmonics.fly
---
Generated by (address unknown) using package-diff 0.62,
From = lilypond-1.1.23.ms1, To = lilypond-1.1.23.ms2
usage
cd lilypond-source-dir; patch -E -p1 < lilypond-1.1.23.ms2.diff
Patches do not contain automatically generated files
or (urg) empty directories,
i.e., you should rerun autoconf, configure
and possibly make outdirs.
--state
1.1.23.ms1
1.1.23.ms2
++state
---- ../lilypond-1.1.23/NEWS Tue Jan 19 16:29:41 1999
+--- ../lilypond-1.1.23.ms1/NEWS Mon Jan 25 10:22:34 1999
+++ b/NEWS Mon Jan 25 13:34:19 1999
+@@ -1,3 +1,7 @@
+pl 23.ms2
+ - property noteheadStyle
+ - first attempt to make harmonics : see input/test/harmonics.fly
+
+ pl 23.ms1
+ - sinfonia.ly: several fixes
+ - dynamics--- ../lilypond-1.1.23/NEWS Tue Jan 19 16:29:41 1999
++ b/NEWS Mon Jan 25 10:22:34 1999
@@ -1,3 +1,13 @@
pl 23.ms1
++ b/NEWS Mon Jan 25 10:22:34 1999
@@ -1,3 +1,13 @@
pl 23.ms1
MAJOR_VERSION=1
MINOR_VERSION=1
PATCH_LEVEL=23
MAJOR_VERSION=1
MINOR_VERSION=1
PATCH_LEVEL=23
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
--- /dev/null
+% this should be normal notes:
+c'1 | d2 d | e4 e
+
+% and this should be harmonics:
+\property Voice.noteheadStyle = "harmonic"
+e8 e e16 e e e32 e
+
+
note_p->steps_i_ = note_req_l->pitch_.steps ();
// note_p->position_i_ = note_req_l->pitch_.steps ();
note_p->steps_i_ = note_req_l->pitch_.steps ();
// note_p->position_i_ = note_req_l->pitch_.steps ();
+ String noteheadstyle = get_property ("noteheadStyle", 0);
+ if (noteheadstyle.length_i ())
+ note_p->note_head_type_str_ = noteheadstyle;
Score_element_info itinf (note_p,note_req_l);
announce_element (itinf);
Score_element_info itinf (note_p,note_req_l);
announce_element (itinf);
void add (String, Symtable*);
Atom afm_find (String, bool warn=true) const;
Atom ball (int) const;
void add (String, Symtable*);
Atom afm_find (String, bool warn=true) const;
Atom ball (int) const;
+ //
+ Atom special_ball (int, String) const;
+ //
Atom bar (String, Real height) const;
Atom beam (Real, Real, Real) const;
Atom clef (String) const;
Atom bar (String, Real height) const;
Atom beam (Real, Real, Real) const;
Atom clef (String) const;
class Note_head : public Rhythmic_head {
public:
class Note_head : public Rhythmic_head {
public:
+ String note_head_type_str_;
+
/// position of top line (5 linestaff: 8)
int position_i_;
/// position of top line (5 linestaff: 8)
int position_i_;
return afm_find (String ("balls") + String ("-") + to_str (j));
}
return afm_find (String ("balls") + String ("-") + to_str (j));
}
+Atom
+Lookup::special_ball (int j, String kind_of_ball) const
+{
+ if (j > 2)
+ j = 2;
+
+ return afm_find (String ("balls") + String ("-") + kind_of_ball);
+}
+
Atom
Lookup::bar (String str, Real h) const
{
Atom
Lookup::bar (String str, Real h) const
{
? 0
: (abs(position_i_) - staff_size_i_/2) /2;
? 0
: (abs(position_i_) - staff_size_i_/2) /2;
- Atom s = lookup_l()->ball (balltype_i_);
+ //Atom s = lookup_l()->ball (balltype_i_);
+
+ Atom s; // = lookup_l()->ball (balltype_i_);
+
+ if (note_head_type_str_.length_i ()) {
+ if (note_head_type_str_ == "normal")
+ note_head_type_str_ = "";
+ s = lookup_l()->special_ball (balltype_i_, note_head_type_str_);
+ }
+ else
+ s = lookup_l()->ball (balltype_i_);
out = new Molecule (Atom (s));
out->translate_axis (x_dir_ * s.dim_[X_AXIS].length (), X_AXIS);
out = new Molecule (Atom (s));
out->translate_axis (x_dir_ * s.dim_[X_AXIS].length (), X_AXIS);
+
+ //out = new Molecule (Atom (s));
+ //out->translate_axis (x_dir_ * s.dim_[X_AXIS].length (), X_AXIS);
+
if (streepjes_i)
{
int dir = sign (position_i_);
if (streepjes_i)
{
int dir = sign (position_i_);
def draw_harmonic_notehead(expr harmwid) =
save beamheight, head_width, head_char_width;
save holeheight, stem_width;
def draw_harmonic_notehead(expr harmwid) =
save beamheight, head_width, head_char_width;
save holeheight, stem_width;
% ht# = noteheight#;
head_char_width = 1.54 noteheight;
head_char_width# := 1.54 ht#;
% ht# = noteheight#;
head_char_width = 1.54 noteheight;
head_char_width# := 1.54 ht#;
- schuif_op = head_char_width - head_width; %ugh
- schuif_op# := head_char_width# - head_width#;
+ %schuif_op = head_char_width - head_width; %ugh
+ %schuif_op# := head_char_width# - head_width#;
% set_char_box(0, head_char_width#, noteheight#/2, noteheight#/2);
set_char_box(0, head_width#, head_width#/2, head_width#/2);
% 2 beamheight + holeheight = noteheight;
% set_char_box(0, head_char_width#, noteheight#/2, noteheight#/2);
set_char_box(0, head_width#, head_width#/2, head_width#/2);
% 2 beamheight + holeheight = noteheight;
penpos8(thick, 225);
% 1.5 noteheight = head_width;
penpos8(thick, 225);
% 1.5 noteheight = head_width;
-% z3l = (schuif_op + head_width/2,-head_width/2);
- z3l = (schuif_op + head_width/2, -noteheight/2);
+% z3l = (head_width/2,-head_width/2);
+ z3l = (head_width/2, -noteheight/2);
- z5l = (schuif_op + head_width, 0);
-% z7l = (schuif_op + head_width/2, head_width/2);
- z7l = (schuif_op + head_width/2, noteheight/2);
+% z7l = (head_width/2, head_width/2);
+ z7l = (head_width/2, noteheight/2);
z8l = z7l;
pickup pencircle; %scaled stemthick;
z8l = z7l;
pickup pencircle; %scaled stemthick;
fet_beginchar("Harmonic ledger", "harmonicl", "harmonicledger")
draw_ledger(harmonic_wid#);
fet_endchar;
fet_beginchar("Harmonic ledger", "harmonicl", "harmonicledger")
draw_ledger(harmonic_wid#);
fet_endchar;