Refactor arc to include drawing direction.

This commit is contained in:
Michael Jumper
2012-03-13 18:59:57 -07:00
parent 6df9fe2871
commit cc6c2671ac
2 changed files with 7 additions and 7 deletions

View File

@@ -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);
},

View File

@@ -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);
});
};