From 28df095d8598ca51f4ca9a04b62ecc219826bf30 Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Tue, 13 Mar 2012 18:59:57 -0700 Subject: [PATCH] Refactor arc to include drawing direction. --- src/main/resources/guacamole.js | 3 ++- src/main/resources/layer.js | 11 +++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/resources/guacamole.js b/src/main/resources/guacamole.js index 0e2181b..4cd95d0 100644 --- a/src/main/resources/guacamole.js +++ b/src/main/resources/guacamole.js @@ -289,8 +289,9 @@ Guacamole.Client = function(tunnel) { var radius = parseInt(parameters[3]); var startAngle = parseFloat(parameters[4]); var endAngle = parseFloat(parameters[5]); + var negative = parseInt(parameters[6]); - layer.arc(x, y, radius, startAngle, endAngle); + layer.arc(x, y, radius, startAngle, endAngle, negative != 0); }, diff --git a/src/main/resources/layer.js b/src/main/resources/layer.js index 4d48983..8358fbb 100644 --- a/src/main/resources/layer.js +++ b/src/main/resources/layer.js @@ -619,10 +619,7 @@ Guacamole.Layer = function(width, height) { }; /** - * Add the specified arc to the current path. Drawing direction is - * determined by the start and end angles. To draw clockwise, ensure - * the end angle is greater than the start angle. To draw counterclockwise, - * ensure the end angle is less than the start angle. + * Add the specified arc to the current path. * * @param {Number} x The X coordinate of the center of the circle which * will contain the arc. @@ -631,8 +628,10 @@ Guacamole.Layer = function(width, height) { * @param {Number} radius The radius of the circle. * @param {Number} startAngle The starting angle of the arc, in radians. * @param {Number} endAngle The ending angle of the arc, in radians. + * @param {Boolean} negative Whether the arc should be drawn in order of + * decreasing angle. */ - this.arc = function(x, y, radius, startAngle, endAngle) { + this.arc = function(x, y, radius, startAngle, endAngle, negative) { scheduleTask(function() { // Start a new path if current path is closed @@ -642,7 +641,7 @@ Guacamole.Layer = function(width, height) { } if (layer.autosize != 0) fitRect(x, y, 0, 0); - displayContext.arc(x, y, radius, startAngle, endAngle, endAngle < startAngle); + displayContext.arc(x, y, radius, startAngle, endAngle, negative); }); }; -- 1.7.10.4