From: aragorn Date: Tue, 9 Jun 1992 16:32:25 +0000 (+0000) Subject: changed to deal with the changes to the way pictures are represented X-Git-Tag: 20090517-FFI~9265 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=c4cb69b349d27d819b40fe7812fd65ba966be573;p=mit-scheme.git changed to deal with the changes to the way pictures are represented --- diff --git a/v7/src/6001/pic-ops.scm b/v7/src/6001/pic-ops.scm index bea12c2c4..4c41b8fc7 100644 --- a/v7/src/6001/pic-ops.scm +++ b/v7/src/6001/pic-ops.scm @@ -274,7 +274,7 @@ (let y-loop ((y 0)) (if (fix:< y hgt) (begin - (floating-vector-set! new-data y + (vector-set! new-data y (floating-vector-copy (vector-ref data (fix:- y-max y)))) (y-loop (fix:+ y 1))))) @@ -290,11 +290,20 @@ (let y-loop ((y 0)) (if (fix:< y hgt) (begin - (floating-vector-set! new-data y - (list->vector - (reverse - (vector->list (vector-ref data y))))) + (vector-set! new-data y + (floating-vector-reverse (vector-ref data y))) (y-loop (fix:+ y 1))))) (picture-set-data! new-pic new-data) new-pic)) +(define (floating-vector-reverse vector) + (let* ((length (floating-vector-length vector)) + (new-vector (floating-vector-cons length)) + (length-1 (- length 1))) + (do + ((i 0 (+ i 1))) + ((= i length)) + (floating-vector-set! new-vector i + (floating-vector-ref vector (- length-1 i)))) + new-vector)) +