From 2d75602728907f70f61b439c129f89c5e6beaca1 Mon Sep 17 00:00:00 2001 From: Ce Gao Date: Sun, 7 May 2017 22:51:11 +0800 Subject: [PATCH] builtin: Add color setting function Signed-off-by: Ce Gao --- examples/hello-processing.R | 4 +- src/rprocessing/applet/BuiltinApplet.java | 90 ++++++++++++++++++++++- 2 files changed, 91 insertions(+), 3 deletions(-) diff --git a/examples/hello-processing.R b/examples/hello-processing.R index 762e5e1..501e881 100644 --- a/examples/hello-processing.R +++ b/examples/hello-processing.R @@ -1,3 +1,5 @@ +processing$background(255, 204, 0) + processing$line(11, 22, 33, 22) processing$arc(50, 55, 50, 50, 0, 100) @@ -10,7 +12,7 @@ processing$quad(38, 31, 86, 20, 69, 63, 30, 76) processing$bezierDetail(as.integer(12)) -bezier(85, 20, 10, 10, 90, 90, 15, 80) +processing$bezier(85, 20, 10, 10, 90, 90, 15, 80) # for (i in 1:16) { # t = i / float(steps); diff --git a/src/rprocessing/applet/BuiltinApplet.java b/src/rprocessing/applet/BuiltinApplet.java index 7afd526..4b6f679 100644 --- a/src/rprocessing/applet/BuiltinApplet.java +++ b/src/rprocessing/applet/BuiltinApplet.java @@ -2,6 +2,11 @@ import processing.core.PApplet; +/** + * BuiltinApplet is the type to refactor the function calls. + * + * @author github.com/gaocegege + */ public class BuiltinApplet extends PApplet { /* @@ -31,8 +36,7 @@ public void ellipse(double posX, double posY, double width, double height) { super.ellipse((float) posX, (float) posY, (float) width, (float) height); } - public void arc(double posX, double posY, double width, double height, double start, - double stop) { + public void arc(double posX, double posY, double width, double height, double start, double stop) { super.arc((float) posX, (float) posY, (float) width, (float) height, (float) start, (float) stop); } @@ -118,4 +122,86 @@ public double curveTangent(double posAX, double posAY, double posBX, double posB public void curveTightness(double tightness) { super.curveTightness((float) tightness); } + + /* + * Colors + */ + + public void backgroud(int rgb, double alpha) { + super.background(rgb, (float) alpha); + } + + public void background(double gray) { + super.background((float) gray); + } + + public void background(double gray, double alpha) { + super.background((float) gray, (float) alpha); + } + + public void background(double v1, double v2, double v3) { + super.background((float) v1, (float) v2, (float) v3); + } + + public void background(double v1, double v2, double v3, double alpha) { + super.background((float) v1, (float) v2, (float) v3, (float) alpha); + } + + public void colorMode(int mode, double max) { + super.colorMode(mode, (float) max); + } + + public void colorMode(int mode, double max1, double max2, double max3) { + super.colorMode(mode, (float) max1, (float) max2, (float) max3); + } + + public void colorMode(int mode, double max1, double max2, double max3, double maxA) { + super.colorMode(mode, (float) max1, (float) max2, (float) max3, (float) maxA); + } + + public void fill(int rgb, double alpha) { + super.fill(rgb, (float) alpha); + } + + public void fill(double gray) { + super.fill((float) gray); + } + + public void fill(double gray, double alpha) { + super.fill((float) gray, (float) alpha); + } + + public void fill(double v1, double v2, double v3) { + super.fill((float) v1, (float) v2, (float) v3); + } + + public void fill(double v1, double v2, double v3, double alpha) { + super.fill((float) v1, (float) v2, (float) v3, (float) alpha); + } + + public void stroke(int rgb, double alpha) { + super.fill(rgb, (float) alpha); + } + + public void stroke(double gray) { + super.fill((float) gray); + } + + public void stroke(double gray, double alpha) { + super.fill((float) gray, (float) alpha); + } + + public void stroke(double v1, double v2, double v3) { + super.fill((float) v1, (float) v2, (float) v3); + } + + public void stroke(double v1, double v2, double v3, double alpha) { + super.fill((float) v1, (float) v2, (float) v3, (float) alpha); + } + + // TODO: Blocked until pre-processor. + // See https://github.com/gaocegege/Processing.R/issues/9#issuecomment-299710866 + // public double alpha(int rgb) { + // return 0; + // } }