From a693c784fb5da47afb20cab26e3a42425bc57c4d Mon Sep 17 00:00:00 2001 From: Victor Date: Mon, 3 Mar 2014 15:20:39 +0200 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=B8=D0=BD=D1=82=D0=B5=D1=80=D1=84=D0=B5=D0=B9=D1=81?= =?UTF-8?q?=20Clippable=20=D0=B4=D0=BB=D1=8F=20=D0=BA=D0=BB=D0=B0=D1=81?= =?UTF-8?q?=D1=81=D0=BE=D0=B2=20Clip/PolygonClip?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/com/annimon/graphics/Clip.java | 5 +++-- src/com/annimon/graphics/PolygonClip.java | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/com/annimon/graphics/Clip.java b/src/com/annimon/graphics/Clip.java index 25ba74f..f3040ae 100644 --- a/src/com/annimon/graphics/Clip.java +++ b/src/com/annimon/graphics/Clip.java @@ -3,7 +3,7 @@ package com.annimon.graphics; /** * @author aNNiMON */ -public class Clip extends Rect { +public class Clip extends Rect implements Clippable { public Clip(double x, double y, double width, double height) { super(x, y, width, height); @@ -24,6 +24,7 @@ public class Clip extends Rect { return y + height; } + @Override public double[] clip(double x1, double y1, double x2, double y2) { int c1 = getClipCode(x1, y1); int c2 = getClipCode(x2, y2); @@ -68,7 +69,7 @@ public class Clip extends Rect { return new double[] { x1, y1, x2, y2 }; } - public int getClipCode(double x, double y) { + private int getClipCode(double x, double y) { int xmin = (x < super.x) ? 1 : 0; int xmax = (x > getXMax()) ? 1 : 0; int ymin = (y < super.y) ? 1 : 0; diff --git a/src/com/annimon/graphics/PolygonClip.java b/src/com/annimon/graphics/PolygonClip.java index 1f60fd4..22df2cb 100644 --- a/src/com/annimon/graphics/PolygonClip.java +++ b/src/com/annimon/graphics/PolygonClip.java @@ -4,7 +4,7 @@ package com.annimon.graphics; * * @author aNNiMON */ -public class PolygonClip extends Clip { +public class PolygonClip extends Clip implements Clippable { private final Polygon poly; @@ -54,11 +54,11 @@ public class PolygonClip extends Clip { Point dirV = new Point(p2.getX() - p1.getX(), p2.getY() - p1.getY()); Point F = new Point(); boolean visible = true; - int i = 0; + int i = 0; while ((i < poly.nPoints) && visible) { F.setX(p1.getX() - poly.v[i].getX()); F.setY(p1.getY() - poly.v[i].getY()); - + double num = pointProduction(n[i], F); double den = pointProduction(n[i], dirV);