From: Han-Wen Nienhuys Date: Mon, 15 Nov 2004 23:47:48 +0000 (+0000) Subject: (beam): add function. X-Git-Tag: release/2.5.14~546 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=1402552f254811abfc219770ec3a2fff82752e20;p=lilypond.git (beam): add function. (draw-line): new routine. (dashed-line): stub; call draw-line (polygon): new routine. --- diff --git a/scm/output-gnome.scm b/scm/output-gnome.scm index 2d137c2775..94e258ed3b 100644 --- a/scm/output-gnome.scm +++ b/scm/output-gnome.scm @@ -280,6 +280,34 @@ lilypond -fgnome input/simple-song.ly props)) +(define (list->offsets accum coords) + (if (null? coords) + accum + (cons (cons (car coords) (cadr coords)) + (list->offsets accum (cddr coords)) + ))) + +(define (polygon coords blotdiameter) + (let* + ((def (make )) + (props (make + #:parent (canvas-root) + #:fill-color "black" + #:outline-color "black" + #:width-units blotdiameter)) + (points (list->offsets '() coords)) + (last-point (car (last-pair points)))) + + (reset def) + (moveto def (car last-point) (cdr last-point)) + (for-each (lambda (x) + (lineto def (car x) (cdr x)) + ) points) + (closepath def) + (set-path-def props def) + props)) + + (define (round-filled-box breapth width depth height blot-diameter) ;; FIXME: no rounded corners on rectangle... ;; FIXME: blot?