public static double divMod(double a, double b) { double result = a / b; return mod(result); }
public Vector2i(int x, int y) { super(); setLocation(x, y); }
public static boolean collideEllipsePoint(double cx, double cy, double angle, double a, double b, double px, double py) { final double cos = Math.cos(angle); final double sin = Math.sin(angle); double p = EtylMath.sqr(cos * (px - cx) + sin * (py - cy)) / (a * a); double q = EtylMath.sqr(sin * (px - cx) - cos * (py - cy)) / (b * b); return (p + q <= 1); }
@Override public boolean softValidateColor(int rgb, int j, int i, int reference) { float[] hsv = ColorHelper.getHSLArray(rgb); int diffH = (int) EtylMath.diffMod(hsv[0], h); int diffS = (int) EtylMath.diffMod(hsv[1], s); int diffV = (int) EtylMath.diffMod(hsv[2], v); return (diffH < hTolerance * weakFactor && diffS < sTolerance * weakFactor && diffV < vTolerance * weakFactor); }
public double distance(double px, double py) { return distance(px, py, this.x, this.y); }
/** * Locates the grid cell point covering the given coordinate * * @param coordinate world coordinate to locate * @return cell covering the coordinate */ private Vector2i getCellOf(Point3D coordinate) { int xCell = (int) ((coordinate.getX() - indexRegion.minX()) / x_size); int yCell = (int) ((coordinate.getY() - indexRegion.minY()) / y_size); return new Vector2i(xCell, yCell); }
public static double diffMod(double a, double b) { double result = a - b; return mod(result); }
public boolean contains(double px, double py) { final double a = Math.toRadians(angle); final double cos = Math.cos(a); final double sin = Math.sin(a); double p = EtylMath.sqr(cos * (px - center.x) + sin * (py - center.y)) / (w * w); double q = EtylMath.sqr(sin * (px - center.x) - cos * (py - center.y)) / (h * h); return (p + q <= 1); }
@Override public boolean validateColor(int rgb, int j, int i) { float[] hsl = ColorHelper.getHSLArray(rgb); int diffH = (int) EtylMath.diffMod(hsl[0], h); int diffS = (int) EtylMath.diffMod(hsl[1], s); int diffL = (int) EtylMath.diffMod(hsl[2], l); return (diffH < hTolerance && diffS < sTolerance && diffL < lTolerance); }
public double distance(Vector2i vector) { return distance(this.x, this.y, vector.x, vector.y); }
public boolean contains(double px, double py) { final double a = Math.toRadians(angle); final double cos = Math.cos(a); final double sin = Math.sin(a); double p = EtylMath.sqr(cos * (px - center.getX()) + sin * (py - center.getY())) / (w * w); double q = EtylMath.sqr(sin * (px - center.getX()) - cos * (py - center.getY())) / (h * h); return (p + q <= 1); }
@Override public boolean validateColor(int rgb, int j, int i) { float[] hsv = ColorHelper.getHSVArray(rgb); int diffH = (int) EtylMath.diffMod(hsv[0], h); int diffS = (int) EtylMath.diffMod(hsv[1], s); int diffV = (int) EtylMath.diffMod(hsv[2], v); return (diffH < hTolerance && diffS < sTolerance && diffV < vTolerance); }
@Override public boolean softValidateColor(int rgb, int j, int i, int reference) { float[] hsl = ColorHelper.getHSLArray(rgb); int diffH = (int) EtylMath.diffMod(hsl[0], h); int diffS = (int) EtylMath.diffMod(hsl[1], s); int diffL = (int) EtylMath.diffMod(hsl[2], l); return (diffH < hTolerance * weakFactor && diffS < sTolerance * weakFactor && diffL < lTolerance * weakFactor); }
@Override public boolean softValidateColor(int rgb, int j, int i, int reference) { int r = ColorHelper.getRed(rgb); int g = ColorHelper.getGreen(rgb); int b = ColorHelper.getBlue(rgb); int ry = ColorHelper.getY(r, g, b); int rcB = ColorHelper.getCB(r, g, b); int rcR = ColorHelper.getCR(r, g, b); int diffY = (int) EtylMath.diffMod(ry, y); int diffCB = (int) EtylMath.diffMod(rcB, cb); int diffCR = (int) EtylMath.diffMod(rcR, cr); return (diffY < lumaTolerance * weakFactor && diffCB < chromaBTolerance * weakFactor && diffCR < chromaRTolerance * weakFactor); }
@Override public boolean validateColor(int rgb, int j, int i) { int r = ColorHelper.getRed(rgb); int g = ColorHelper.getGreen(rgb); int b = ColorHelper.getBlue(rgb); int ry = ColorHelper.getY(r, g, b); int rcB = ColorHelper.getCB(r, g, b); int rcR = ColorHelper.getCR(r, g, b); int diffY = (int) EtylMath.diffMod(ry, y); int diffCB = (int) EtylMath.diffMod(rcB, cb); int diffCR = (int) EtylMath.diffMod(rcR, cr); return (diffY < lumaTolerance && diffCB < chromaBTolerance && diffCR < chromaRTolerance); }