bug-gnu-music
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Stem-attachment


From: Rune Zedeler
Subject: Re: Stem-attachment
Date: Mon, 02 Apr 2001 21:25:50 +0200

Rune Zedeler wrote:

> The crosses are not connected to the stem at the bottom - as they should
> be according to output-lib.scm

Lets see if I can attach the correct file, for a change... (Stupid files
cut out by hand)

1.3.145.rz1
===========

* Stem/notehead attach bug fixed (still probs with mensural head and
  other head on same stem)

* Minor font changes


-Rune
Generated by (address unknown),
>From = lilypond-1.3.145, To = lilypond-1.3.145.rz1

usage 

    cd lilypond-source-dir; patch -E -p1 < lilypond-1.3.145.rz1.diff

Patches do not contain automatically generated files 
or (urg) empty directories, 
i.e., you should rerun autoconf, configure

diff -urN ../lilypond-1.3.145/CHANGES ./CHANGES
--- ../lilypond-1.3.145/CHANGES Sun Apr  1 15:26:59 2001
+++ ./CHANGES   Mon Apr  2 21:15:22 2001
@@ -1,3 +1,11 @@
+1.3.145.rz1
+===========
+
+* Stem/notehead attach bug fixed (still probs with mensural head and
+  other head on same stem)
+
+* Minor font changes
+
 1.3.144.jcn4
 ============
 
diff -urN ../lilypond-1.3.145/VERSION ./VERSION
--- ../lilypond-1.3.145/VERSION Sun Apr  1 16:03:14 2001
+++ ./VERSION   Mon Apr  2 21:09:22 2001
@@ -2,7 +2,7 @@
 MAJOR_VERSION=1
 MINOR_VERSION=3
 PATCH_LEVEL=145
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=rz1
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
diff -urN ../lilypond-1.3.145/input/regression/note-head-style.ly 
./input/regression/note-head-style.ly
--- ../lilypond-1.3.145/input/regression/note-head-style.ly     Wed Mar 28 
01:26:11 2001
+++ ./input/regression/note-head-style.ly       Mon Apr  2 21:08:54 2001
@@ -11,26 +11,31 @@
 }
 
 
+\include "paper23.ly"
 
-
-\score { \notes \relative c{
-
-c''4 c2 c8  c16 c16 c1 c\breve
+\score { \notes \relative c''{
+% \property Voice.Stem \override #'thickness = #5.0
+\property Voice.NoteHead \set #'style = #'default
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
 \property Voice.NoteHead \set #'style = #'diamond
-c4 c2 c8  c16 c16  c1 c\breve
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
 \property Voice.NoteHead \set #'style = #'transparent
-c4 c2 c8  c16 c16  c1 c\breve
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
 \property Voice.NoteHead \set #'style = #'cross
-c4 c2 c8  c16 c16  c1 c\breve
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
+\property Voice.NoteHead \set #'style = #'xcircle
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
+\property Voice.NoteHead \set #'style = #'slash
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
 \property Voice.NoteHead \set #'style = #'mensural
-c4 c2 c8  c16 c16  c1 c\breve c\longa
+c4 c2 c8  c16 c16  c1 c\breve c\longa b4 b2 b8  b16 b16 b1 b\breve b\longa 
\break
 \property Voice.NoteHead \set #'style = #'harmonic
-c4 c2 c8  c16 c16  c1 c\breve
+c4 c2 c8  c16 c16 c1 c\breve b4 b2 b8  b16 b16 b1 b\breve \break
 \property Voice.NoteHead \set #'style = #'baroque
-c4 c2 c8  c16 c16  c1 c\breve c\longa
+c4 c2 c8  c16 c16  c1 c\breve c\longa b4 b2 b8  b16 b16 b1 b\breve b\longa 
\break
 
 
-   \context Voice <
+   \context Voice = another <
     \context Thread = TA
       {
         \property Thread.NoteHead \set #'style = #'cross
@@ -46,18 +51,18 @@
   >
 
 
-   \context Voice <\context Thread = TA {
-   \property Thread.NoteHead \set #'style = #'default
-   c4 c4 }
-\context Thread = TB {
-   \property Thread.NoteHead \set #'style = #'mensural
-  c'4 \stemDown c
+   \context Voice <
+     \context Thread = TA {
+       \property Thread.NoteHead \set #'style = #'cross
+       c4 c4 c4 c4 }
+     \context Thread = TB {
+       \property Thread.NoteHead \set #'style = #'mensural
+       c'4 \stemDown c
+       \property Thread.NoteHead \set #'style = #'slash
+       \stemUp c4 \stemDown c
 } >
 
 }
 
-    \paper {
-
-
-}
+    \paper {}
 }
diff -urN ../lilypond-1.3.145/lily/stem.cc ./lily/stem.cc
--- ../lilypond-1.3.145/lily/stem.cc    Wed Mar 28 01:26:12 2001
+++ ./lily/stem.cc      Mon Apr  2 20:29:45 2001
@@ -477,31 +477,6 @@
 
   Real dy = Staff_symbol_referencer::staff_space (me)/2.0;
   Real head_wid = 0;
-
-  /*
-TODO:
-
-    I don't really get the idea of the attachment-angle.
-    It seems like that you attach the Stem to the NoteHead at point
-    (1,tan(aa)/2), making it still nessesary to have special CENTER-STEMS
-    option - and if I would like to attach stem i.e. here:
-
-      |
-      |
-      |
-    XXX
-   XXXXX
-   XXXXX
-    XXX
-
-   That would be impossible.
-   Why haven't you just made ATTACHMENT-COORDINATES as a pair of reals,
-   with (0 . 0) meaning CENTER, (1 . 1) upper right, etc...?
-   
--Rune
-
- 
-  */
     
   if (Grob *hed = support_head (me))
     {
@@ -511,7 +486,7 @@
       Real y_attach = Note_head::stem_attachment_coordinate ( hed, Y_AXIS);
 
       y_attach = head_height.linear_combination (y_attach);
-      stem_y[Direction (-d)] += d * y_attach;
+      stem_y[Direction (-d)] += d * 2*y_attach;
     }
 
   
diff -urN ../lilypond-1.3.145/mf/feta-bolletjes.mf ./mf/feta-bolletjes.mf
--- ../lilypond-1.3.145/mf/feta-bolletjes.mf    Tue Mar 27 14:09:54 2001
+++ ./mf/feta-bolletjes.mf      Mon Apr  2 20:38:07 2001
@@ -546,13 +546,18 @@
 fet_endchar;
 
 fet_beginchar("X-Circled notehead", "2xcircle", "xcircledhead")
-       set_char_box(0, noteheight#+stafflinethickness#,
-         
noteheight#/2+stafflinethickness#/2,noteheight#/2+stafflinethickness#/2);
-       pickup pencircle scaled 1.2stafflinethickness;
-       draw fullcircle scaled 2h shifted (h,0);
-       pos := h/sqrt2;
-       draw (-pos+h,-pos) -- (pos+h,pos);
-       draw (-pos+h,pos) -- (pos+h,-pos);
+       wid# := black_notehead_width#;
+       hei# := noteheight#+stafflinethickness#;
+       set_char_box(0, wid#,hei#/2,hei#/2);
+       cthick := 1.2stafflinethickness;
+       cxr := w/2-cthick/2;
+       cyr := h-cthick/2;
+       pickup pencircle scaled cthick;
+       draw fullcircle xscaled 2cxr yscaled 2cyr shifted (w/2,0);
+       xpos := cxr/sqrt2;
+       ypos := cyr/sqrt2;
+       draw (-xpos+w/2,-ypos) -- (xpos+w/2,ypos);
+       draw (-xpos+w/2,ypos) -- (xpos+w/2,-ypos);
 fet_endchar;
 
 fet_endgroup("noteheads");
diff -urN ../lilypond-1.3.145/scm/output-lib.scm ./scm/output-lib.scm
--- ../lilypond-1.3.145/scm/output-lib.scm      Wed Mar 28 01:26:12 2001
+++ ./scm/output-lib.scm        Mon Apr  2 21:07:57 2001
@@ -70,7 +70,7 @@
                   (if (< duration 0) "mensural" "")))
    ((default) (number->string duration))
    (else
-    (string-append (number->string duration) (symbol->string style)))))
+    (string-append (number->string (max 0 duration)) (symbol->string style)))))
 
 
 (define (note-head-style->attachment-coordinates style)
@@ -79,9 +79,9 @@
 centered, X==1 is at the right, X == -1 is at the left."
 
   (case style
-    ((default) '(1.0 . 0.8))
-    ((cross) '(1.0 . -1.0))
-    ((mensural) '(0.0 . 1.0))
+    ((default) '(1.0 . 0.5))
+    ((cross) '(1.0 . 0.75))
+    ((mensural) '(0.0 . 0.6))
     ((diamond) '(1.0 . 0.8))
     ((transparent) '(1.0 . 1.0))
     ((slash) '(1.0 . 1.0))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]