From: espen Date: Fri, 6 Apr 2007 14:12:09 +0000 (+0000) Subject: Added optional NEGATIVE-P argument to function CIRCLE X-Git-Tag: clg-0-93~179 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~mdw/git/clg/commitdiff_plain/54a15367e0b7b4f086bbfb94d1b84dd542ee95a8 Added optional NEGATIVE-P argument to function CIRCLE --- diff --git a/cairo/cairo.lisp b/cairo/cairo.lisp index 63b1f70..74bf02a 100644 --- a/cairo/cairo.lisp +++ b/cairo/cairo.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: cairo.lisp,v 1.11 2007/02/19 14:37:52 espen Exp $ +;; $Id: cairo.lisp,v 1.12 2007/04/06 14:12:09 espen Exp $ (in-package "CAIRO") @@ -498,8 +498,13 @@ (defpath line-to (x y) t) (defpath move-to (x y) t) (defpath rectangle (x y width height)) -(defun circle (cr x y radius) - (arc cr x y radius 0.0 (* pi 2))) +(defun circle (cr x y radius &optional negative-p) + (move-to cr radius 0.0d0) + (if negative-p + (arc-negative cr x y radius (* pi 2) 0.0d0) + (arc cr x y radius 0.0d0 (* pi 2))) + (close-path cr)) + (defbinding glyph-path (cr glyphs) nil (cr context)