public static boolean isPointAnIntersectGiveArcBetweenTwoLines(final Point2D l1a, final Point2D l1b, final Point2D p, final Point2D l2a, final double r) { final Point2D dv = l1b.sub(l1a); final Point2D dx = dv.unit(); final Point2D dy = dx.perpendicular(); final Point2D arcCenter = l1b.add(dy.mul(r)); final double angle = getAngleBetweenTwoLines(l1b, arcCenter, l2a); final double l = getLengthFromASA(angle, r, RADIANS_90); final double l4 = Math.sqrt((l * l) - (r * r)); final Point2D intersection = dx.mul(l4); final boolean interseects = intersection.equals(p); return interseects; }
public static boolean isPointAnIntersectGiveArcBetweenTwoLines(final Point2D l1a, final Point2D l1b, final Point2D p, final Point2D l2a, final double r) { final Point2D dv = l1b.sub(l1a); final Point2D dx = dv.unit(); final Point2D dy = dx.perpendicular(); final Point2D arcCenter = l1b.add(dy.mul(r)); final double angle = getAngleBetweenTwoLines(l1b, arcCenter, l2a); final double l = getLengthFromASA(angle, r, RADIANS_90); final double l4 = Math.sqrt((l * l) - (r * r)); final Point2D intersection = dx.mul(l4); final boolean interseects = intersection.equals(p); return interseects; }
public static boolean isPointAnIntersectGiveArcBetweenTwoLines(final Point2D l1a, final Point2D l1b, final Point2D p, final Point2D l2a, final double r) { final Point2D dv = l1b.sub(l1a); final Point2D dx = dv.unit(); final Point2D dy = dx.perpendicular(); final Point2D arcCenter = l1b.add(dy.mul(r)); final double angle = getAngleBetweenTwoLines(l1b, arcCenter, l2a); final double l = getLengthFromASA(angle, r, RADIANS_90); final double l4 = Math.sqrt((l * l) - (r * r)); final Point2D intersection = dx.mul(l4); final boolean interseects = intersection.equals(p); return interseects; }
if (within && (t.sub(ps).dot(pe.sub(ps).perpendicular()) >= 0)) if (within && (t.sub(ps).dot(pe.sub(ps).perpendicular()) >= 0))
if (within && (t.sub(ps).dot(pe.sub(ps).perpendicular()) >= 0)) if (within && (t.sub(ps).dot(pe.sub(ps).perpendicular()) >= 0))
if (within && (t.sub(ps).dot(pe.sub(ps).perpendicular()) >= 0)) if (within && (t.sub(ps).dot(pe.sub(ps).perpendicular()) >= 0))
final Point2D dv = e.sub(s); final Point2D dx = dv.unit();// unit vector in the direction of SE final Point2D dy = dx.perpendicular();
final Point2D dv = e.sub(s); final Point2D dx = dv.unit();// unit vector in the direction of SE final Point2D dy = dx.perpendicular();
Point2D dy = dx.perpendicular();
final Point2D dv = e.sub(s); final Point2D dx = dv.unit();// unit vector in the direction of SE final Point2D dy = dx.perpendicular();