From 7d7bc911a5c2679831af4fc5a4b80d59a8bf77f7 Mon Sep 17 00:00:00 2001 From: benfry Date: Fri, 23 Nov 2012 17:38:27 +0000 Subject: [PATCH] partial arc implementation for Android (issue 711) --- .../processing/core/PGraphicsAndroid2D.java | 33 +++++++++++++++---- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/android/core/src/processing/core/PGraphicsAndroid2D.java b/android/core/src/processing/core/PGraphicsAndroid2D.java index 3f36cbcba..b477976cc 100644 --- a/android/core/src/processing/core/PGraphicsAndroid2D.java +++ b/android/core/src/processing/core/PGraphicsAndroid2D.java @@ -715,7 +715,7 @@ public class PGraphicsAndroid2D extends PGraphics { @Override protected void arcImpl(float x, float y, float w, float h, - float start, float stop) { + float start, float stop, int mode) { // 0 to 90 in java would be 0 to -90 for p5 renderer // but that won't work, so -90 to 0? @@ -740,11 +740,32 @@ public class PGraphicsAndroid2D extends PGraphics { float sweep = stop - start; rect.set(x, y, x+w, y+h); - if (fill) { - canvas.drawArc(rect, start, sweep, true, fillPaint); - } - if (stroke) { - canvas.drawArc(rect, start, sweep, false, strokePaint); + + if (mode == 0) { + if (fill) { + canvas.drawArc(rect, start, sweep, true, fillPaint); + } + if (stroke) { + canvas.drawArc(rect, start, sweep, false, strokePaint); + } + } else if (mode == OPEN) { + if (fill) { + showMissingWarning("arc"); + } + if (stroke) { + canvas.drawArc(rect, start, sweep, false, strokePaint); + } + } else if (mode == CHORD) { + showMissingWarning("arc"); + + } else if (mode == PIE) { + if (fill) { + canvas.drawArc(rect, start, sweep, true, fillPaint); + } + if (stroke) { + canvas.drawArc(rect, start, sweep, true, strokePaint); + } + } } }