From 0b26c4e2dfab53e60010252348ab39d796fa4c66 Mon Sep 17 00:00:00 2001 From: fred Date: Wed, 27 Mar 2002 02:06:59 +0000 Subject: [PATCH] lilypond-1.5.42 --- ps/music-drawing-routines.ps | 6 ++++++ scm/ps.scm | 19 +++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/ps/music-drawing-routines.ps b/ps/music-drawing-routines.ps index a4c8311465..93e82f9aaf 100644 --- a/ps/music-drawing-routines.ps +++ b/ps/music-drawing-routines.ps @@ -232,6 +232,12 @@ stroke } bind def +/draw_dot % x1 y2 R +{ +% 0 360 arc fill stroke + 0 360 arc closepath fill stroke +} bind def + /draw_dashed_line % dash thickness dx dy { 1 setlinecap diff --git a/scm/ps.scm b/scm/ps.scm index 496bc521e6..e002e8b23c 100644 --- a/scm/ps.scm +++ b/scm/ps.scm @@ -203,8 +203,23 @@ (define (bezier-sandwich l thick) (string-append (apply string-append (map control->string l)) - (ly-number->string thick) - " draw_bezier_sandwich")) + (ly-number->string thick) + " draw_bezier_sandwich " + (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-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"))) ; TODO: use HEIGHT argument (define (start-line height) -- 2.39.2