]> git.donarmstrong.com Git - lilypond.git/commitdiff
add TODO comment.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 29 Jul 2003 16:34:37 +0000 (16:34 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 29 Jul 2003 16:34:37 +0000 (16:34 +0000)
16 files changed:
ChangeLog
VERSION
config.make.in
lily/include/lilypond-input-version.hh
lily/lexer.ll
lily/lilypond-version.cc
lily/lookup.cc
lily/tie.cc
ps/music-drawing-routines.ps
scm/output-ascii-script.scm
scm/output-pdf.scm
scm/output-pdftex.scm
scm/output-ps.scm
scm/output-sketch.scm
scm/output-sodipodi.scm
scm/output-tex.scm

index dc4dd7dd0ef829c275b02b4e2cebc83b287cff53..b4402b20f94f169d223005bcaae6c5d2858d918b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,11 +1,22 @@
+
+2003-07-29  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
+
+       * lily/tie.cc: add TODO comment.
+
+       * lily/bezier.cc: replace bezier-bow with bezier-sandwich.
+
+       * scm/*.scm: remove bezier-bow. Use bezier-sandwich with rounded
+       linejoins and linecaps. This fixes problems with occasional spikes
+       on slur/tie endings.
+       
 2003-07-29  Heikki Junes <hjunes@cc.hut.fi>
 
         * { many }: Use two uppercase letters in LilyPond.
 
        * lily/main.cc, po/{ many }, scripts/{ many }: add verbs.
 
-2003-07-29  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
-
+       * VERSION: 1.7.29 released.
+       
        * input/regression/font-name.ly: don't use PS fonts for
        compatibility reasons. 
 
diff --git a/VERSION b/VERSION
index 4d9bc08ea06ef1bcf7ec1f57d2a4de9ea7e29958..24b6520a9be79a98a406215dec3265e32b46ea3c 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -1,7 +1,7 @@
 PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=7
-PATCH_LEVEL=29
+PATCH_LEVEL=30
 MY_PATCH_LEVEL=
 
 # Use the above to send patches: MY_PATCH_LEVEL is always empty for a
index fdfadb5a3497354ff34ee7fe74ce8e337560c036..a9e7a6f10eab13d53924533fa456ae27be5fd804 100644 (file)
@@ -1,6 +1,6 @@
 # -*-Makefile-*-
 
-MISSING_OPTIONAL = @OPTIONAL@
+gMISSING_OPTIONAL = @OPTIONAL@
 MISSING_REQUIRED = @REQUIRED@
 
 # @configure_input@
index 1333a556ad080a9565f8a5cf5a65a584b45482f7..e71f6f4b2dafb26cb2be0fe17dd6eeb65b3ff6c6 100644 (file)
 
 #include "string.hh"
 
-struct LilyPond_version 
+struct Lilypond_version 
 {
-  LilyPond_version (int major, int minor, int patch);
-  LilyPond_version (String str);
+  Lilypond_version (int major, int minor, int patch);
+  Lilypond_version (String str);
 
   String to_string () const;
   operator int () const;
@@ -26,6 +26,6 @@ struct LilyPond_version
   String extra_patch_string_;
 };
 
-extern LilyPond_version oldest_version;
+extern Lilypond_version oldest_version;
 
 #endif // LILYPOND_VERSION_HH
index 11dc326517491b342cd8ebcb387271833e9baa70..7fc5828206eef619feb4a24bec0ceeda232ee15c 100644 (file)
@@ -729,14 +729,14 @@ strip_trailing_white (String&s)
 
 
 /* 1.3.146 == removal of ; */ 
-LilyPond_version oldest_version ("1.3.146");
+Lilypond_version oldest_version ("1.3.146");
 
 
 bool
 valid_version_b (String s)
 {
-  LilyPond_version current ( MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL );
-  LilyPond_version ver (s);
+  Lilypond_version current ( MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL );
+  Lilypond_version ver (s);
   if (! ((ver >= oldest_version) && (ver <= current)))
        {       
                non_fatal_error (_f ("Incorrect lilypond version: %s (%s, %s)", ver.to_string (), oldest_version.to_string (), current.to_string ()));
index 385497271452b545ac6f75f85611aba39cf804c0..ca293c9a784276c6cafb0ae08aa93ac5876ceaa7 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  lilypond-version.cc -- implement LilyPond_version
+  lilypond-version.cc -- implement Lilypond_version
 
   source file of the GNU LilyPond music typesetter
 
 #include "string-convert.hh"
 #include "array.hh"
 
-LilyPond_version::LilyPond_version (int major, int minor, int patch)
+Lilypond_version::Lilypond_version (int major, int minor, int patch)
 {
   major_ = major;
   minor_ = minor;
   patch_ = patch;
 }
 
-LilyPond_version::LilyPond_version (String str)
+Lilypond_version::Lilypond_version (String str)
 {
   Array<String> version;
   version = String_convert::split (str, '.');
@@ -34,12 +34,12 @@ LilyPond_version::LilyPond_version (String str)
 }
 
 String
-LilyPond_version::to_string () const
+Lilypond_version::to_string () const
 {
   return ::to_string (major_) + "." + ::to_string (minor_) + "." + ::to_string (patch_);
 }
 
-LilyPond_version::operator int () const
+Lilypond_version::operator int () const
 {
     // ugh
   return 100000 * major_ + 1000 * minor_ + patch_;
index b439d28c9148c928cedb3fcd9d2e0864936b179c..8fd4b2fb13c5dbb7b112419a5ab632312f08e9a8 100644 (file)
@@ -400,7 +400,7 @@ Lookup::slur (Bezier curve, Real curvethick, Real linethick)
     }
   
   
-  SCM at = (scm_list_n (ly_symbol2scm ("bezier-bow"),
+  SCM at = (scm_list_n (ly_symbol2scm ("bezier-sandwich"),
                     ly_quote_scm (list),
                     gh_double2scm (linethick),
                     SCM_UNDEFINED));
index 99cf426d5c77a5ce8d09aa7d2e89ae8f1b72543a..21eaac68f61a8088f21ac975f53e0ded4b28982e 100644 (file)
@@ -100,7 +100,11 @@ Tie::get_default_dir (Grob*me)
   return UP;
 }
 
-
+/*
+  TODO: we should also use thickness for computing the clearance
+  between head and tie. Very thick ties will now touch the note head.
+  
+  */
 SCM
 Tie::get_control_points (SCM smob)
 {  
index dd2f6efec9fd84db33b795d5493875a2c7a5946a..b665aff49a98416b292921c35f73a48ee74aec36 100644 (file)
 
 % this is for drawing slurs. 
 /draw_bezier_sandwich  % thickness controls 
-{ 
+{
+    % round ending and round beginning
+    1 setlinejoin 1 setlinecap
        setlinewidth 
        moveto 
        curveto 
        lineto 
-       curveto 
+       curveto
+       closepath
        gsave 
        fill 
        grestore 
index b955214ffb415c500c28d321ce9b33d0dbde6fe8..db24d96eb00697473d6d1afcbbf8c8bc899dda42 100644 (file)
@@ -49,7 +49,7 @@
    ))
 
                                        ; simple flat slurs
-(define (bezier-bow l thick)
+(define (bezier-sandwich thick)
   (let (
        (c0 (cadddr l))
        (c1 (cadr l))
index 898c996b2c39317bfc9d90de0159af8a294fb329..eaaca5fa5b7adec407bf3fdd2d17dd5c774f0ba7 100644 (file)
 
 (define (placebox x y s) "")
 
-(define (bezier-bow l thick)
-  (bezier-sandwich l thick))
-
 (define (bezier-sandwich l thick)
   (string-append (setlinewidth thick)
                 (moveto-pair (list-ref l 7))
index ceb35e65d698006acc44b858c8740b9409d631e4..96e576ffbac18af695c12bf2f5d88a32e3899310 100644 (file)
                 (ly:number->string x) "}{"
                 s "}%\n"))
 
-(define (bezier-bow l thick)
-  (embedded-pdf (list 'bezier-bow  `(quote ,l) thick)))
-
 (define (bezier-sandwich l thick)
   (embedded-pdf (list 'bezier-sandwich  `(quote ,l) thick)))
 
index 9471f9afc8f4a03aacb9f0b31134851a468ab030..22a9c9110718017bacac91b5e9267756f28b2c75 100644 (file)
   (string-append
    (numbers->string (list slope width thick)) " draw_beam" ))
 
-;; two beziers with round endings
-(define (bezier-bow l thick)
-  
-  (define (bezier-ending z0 z1 z2)
-    (let ((x0 (car z0))
-         (y0 (cdr z0))
-         (x1 (car z1))
-         (y1 (cdr z1))
-         (x2 (car z2))
-         (y2 (cdr z2)))
-      (string-append
-       " "
-       (numbers->string
-       (list x0 y0
-             (/ (sqrt (+ (* (- x1 x2) (- x1 x2))
-                         (* (- y1 y2) (- y1 y2)))) 2)))
-       " draw_dot")))
-
-  (string-append
-   (bezier-sandwich l thick)
-   (bezier-ending (list-ref l 3) (list-ref l 0) (list-ref l 5))
-   (bezier-ending (list-ref l 7) (list-ref l 0) (list-ref l 5))))
-
 ;; two beziers
 (define (bezier-sandwich l thick)
   (string-append 
index ad914a92e4a8157ffbc2fe08045205efa254de56..c5fcd6c985cc42ceaf0c011451c17dcb448cf629 100644 (file)
@@ -41,7 +41,6 @@
 ;  (let ((keyword (car expr))) 
 ;    (cond
 ; ((eq? keyword 'beam x y width slope thick)
-; ((eq? keyword 'bezier-bow x y l thick)
 ; ((eq? keyword 'bezier-sandwich x y l thick)
 ; ((eq? keyword 'bracket arch_angle arch_width arch_height  height arch_thick thick)
 ; ((eq? keyword 'char x y i)
@@ -286,10 +285,6 @@ layer('Layer 1',1,1,0,0,(0,0,0))
 (define (invoke-char s i)
   "")
 
-;; TODO: bezier-ending, see ps.scm
-(define (bezier-bow x y l thick)
-  (bezier-sandwich x y l thick))
-
 (define (bezier-sandwich x y l thick)
   (apply
    sketch-beziers (list x y (primitive-eval l) thick)))
index 4c8675cc3d977321b4abed386b5e1bb8f6e473c2..23afde99a610b4418cc6377c21a65910a1be3275 100644 (file)
                                   (* -1 (/ y z))
                                   1 1)))))
 
-;; TODO: bezier-ending, see ps.scm
-(define (bezier-bow urg-l thick)
-  
-  (define (bezier-ending z0 z1 z2)
-    (let ((x0 (car z0))
-         (y0 (cdr z0))
-         (x1 (car z1))
-         (y1 (cdr z1))
-         (x2 (car z2))
-         (y2 (cdr z2)))
-      (let ((r (/ (sqrt (+ (* (- x1 x2) (- x1 x2))
-                         (* (- y1 y2) (- y1 y2)))) 2)))
-      (tagify "circle" ""
-             `(fill . "#000000;")
-             `(cx . ,(number->string (* output-scale x0)))
-             `(cy . ,(number->string (* output-scale (- 0 y0))))
-             `(r . ,(number->string (* output-scale r)))))))
-  
-  (let ((l (eval urg-l this-module)))
-    (string-append
-     (bezier-sandwich l thick)
-     (bezier-ending (list-ref l 3) (list-ref l 0) (list-ref l 5))
-     (bezier-ending (list-ref l 7) (list-ref l 0) (list-ref l 5)))))
 
 (define (bezier-sandwich l thick)
   (let* (;;(l (eval urg-l this-module))
index 8a531626f6e531beca556d763f4942c192638e42..408319655bd3aca72b3ec4fe4efbf6f546d73011 100644 (file)
                 (ly:number->string x) "}{"
                 s "}%\n"))
 
-(define (bezier-bow l thick)
-  (embedded-ps (list 'bezier-bow  `(quote ,l) thick)))
-
 (define (bezier-sandwich l thick)
   (embedded-ps (list 'bezier-sandwich  `(quote ,l) thick)))