/** * Returns a new point by diving the coordinates of this point by 'd', * i.e. (this.x / d, this.y / d) * <p> * This Point2D is not modified. * * @param d double * @return a new Point2D */ public final Point2D div(final double d) throws GeometryException { if (d == 0.0) { throw new GeometryException("can't divide by 0"); } return mul(1.0 / d); }
/** * Returns a new point by diving the coordinates of this point by 'd', * i.e. (this.x / d, this.y / d) * <p> * This Point2D is not modified. * * @param d double * @return a new Point2D */ public final Point2D div(double d) throws GeometryException { if (d == 0.0) { throw new GeometryException("can't divide by 0"); } return mul(1.0 / d); }
/** * Returns a new point by diving the coordinates of this point by 'd', * i.e. (this.x / d, this.y / d) * <p> * This Point2D is not modified. * * @param d double * @return a new Point2D */ public final Point2D div(final double d) throws GeometryException { if (d == 0.0) { throw new GeometryException("can't divide by 0"); } return mul(1.0 / d); }
public static Point2D getProjection(final Point2D center, final Point2D intersection, final double length) { final Point2D unit = intersection.sub(center).unit(); return center.add(unit.mul(length)); } }
public static Point2D getProjection(final Point2D center, final Point2D intersection, final double length) { final Point2D unit = intersection.sub(center).unit(); return center.add(unit.mul(length)); } }
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 Point2D getProjection(final Point2D center, final Point2D intersection, final double length) { final Point2D unit = intersection.sub(center).unit(); return center.add(unit.mul(length)); } }
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; }
@Override public void onStart(final IAnimation animation, final IAnimationHandle handle) { final Viewport vp = gridWidget.getViewport(); if (vp.getTransform() == null) { vp.setTransform(new Transform()); } startTranslation = getViewportTranslation().mul(-1.0); final Point2D endTranslation = new Point2D(gridWidget.getX(), gridWidget.getY()).mul(-1.0); delta = new Point2D(endTranslation.getX() - startTranslation.getX(), endTranslation.getY() - startTranslation.getY()); onStartCommand.execute(); gridWidget.getLayer().setListening(false); gridWidget.getLayer().batch(); }
@Override public void onStart(final IAnimation animation, final IAnimationHandle handle) { final Viewport vp = gridWidget.getViewport(); if (vp.getTransform() == null) { vp.setTransform(new Transform()); } startTranslation = getViewportTranslation().mul(-1.0); final Point2D endTranslation = new Point2D(gridWidget.getX(), gridWidget.getY()).mul(-1.0); delta = new Point2D(endTranslation.getX() - startTranslation.getX(), endTranslation.getY() - startTranslation.getY()); onStartCommand.execute(); gridWidget.getLayer().setListening(false); gridWidget.getLayer().batch(); }
@Override public void onStart(final IAnimation animation, final IAnimationHandle handle) { final Viewport vp = gridWidget.getViewport(); if (vp.getTransform() == null) { vp.setTransform(new Transform()); } startScaleX = vp.getTransform().getScaleX(); startScaleY = vp.getTransform().getScaleY(); startTranslation = getViewportTranslation().mul(-1.0); final Point2D endTranslation = new Point2D(gridWidget.getX(), gridWidget.getY()).mul(-1.0); delta = new Point2D(endTranslation.getX() - startTranslation.getX(), endTranslation.getY() - startTranslation.getY()); onStartCommand.execute(); gridWidget.getLayer().setListening(false); gridWidget.getLayer().batch(); }
@Override public void onFrame(final IAnimation animation, final IAnimationHandle handle) { final double pct = assertPct(animation.getPercent()); final Viewport vp = gridWidget.getViewport(); final Transform transform = vp.getTransform(); final double scaleX = transform.getScaleX(); final double scaleY = transform.getScaleY(); transform.reset(); final Point2D frameLocation = startTranslation.add(delta.mul(pct)); transform.scale(scaleX, scaleY).translate(frameLocation.getX(), frameLocation.getY()); gridWidget.getLayer().batch(); }
private void adjustViewportTransform(final Viewport vp, final Point2D delta) { final Transform transform = vp.getTransform(); final Transform t = transform.copy().getInverse(); final Point2D translation = new Point2D(t.getTranslateX(), t.getTranslateY()).mul(-1.0); final double scaleX = transform.getScaleX(); final double scaleY = transform.getScaleY(); transform.reset(); final Point2D frameLocation = translation.add(delta); transform.scale(scaleX, scaleY).translate(frameLocation.getX(), frameLocation.getY()); } }
private void adjustViewportTransform(final Viewport vp, final Point2D delta) { final Transform transform = vp.getTransform(); final Transform t = transform.copy().getInverse(); final Point2D translation = new Point2D(t.getTranslateX(), t.getTranslateY()).mul(-1.0); final double scaleX = transform.getScaleX(); final double scaleY = transform.getScaleY(); transform.reset(); final Point2D frameLocation = translation.add(delta); transform.scale(scaleX, scaleY).translate(frameLocation.getX(), frameLocation.getY()); } }
@Override public void onFrame(final IAnimation animation, final IAnimationHandle handle) { final double pct = assertPct(animation.getPercent()); final Viewport vp = gridWidget.getViewport(); final Transform transform = vp.getTransform(); transform.reset(); final Point2D frameLocation = startTranslation.add(delta.mul(pct)); final double frameScaleX = startScaleX + (endScaleX - startScaleX) * pct; final double frameScaleY = startScaleY + (endScaleY - startScaleY) * pct; transform.scale(frameScaleX, frameScaleY).translate(frameLocation.getX(), frameLocation.getY()); hideGridWidgets(pct); hideGridWidgetConnectors(pct); gridWidget.getLayer().batch(); }
@Override public void onFrame(final IAnimation animation, final IAnimationHandle handle) { final double pct = assertPct(animation.getPercent()); final Viewport vp = gridWidget.getViewport(); final Transform transform = vp.getTransform(); final double scaleX = transform.getScaleX(); final double scaleY = transform.getScaleY(); transform.reset(); final Point2D frameLocation = startTranslation.add(delta.mul(pct)); transform.scale(scaleX, scaleY).translate(frameLocation.getX(), frameLocation.getY()); gridWidget.getLayer().batch(); }
@Override public void onFrame(final IAnimation animation, final IAnimationHandle handle) { final double pct = assertPct(animation.getPercent()); final Viewport vp = gridWidget.getViewport(); final Transform transform = vp.getTransform(); transform.reset(); final Point2D frameLocation = startTranslation.add(delta.mul(pct)); final double frameScaleX = startScaleX + (endScaleX - startScaleX) * pct; final double frameScaleY = startScaleY + (endScaleY - startScaleY) * pct; transform.scale(frameScaleX, frameScaleY).translate(frameLocation.getX(), frameLocation.getY()); hideGridWidgets(pct); hideGridWidgetConnectors(pct); gridWidget.getLayer().batch(); }
@Override public void onFrame(final IAnimation animation, final IAnimationHandle handle) { final double pct = assertPct(animation.getPercent()); final Viewport vp = gridWidget.getViewport(); final Transform transform = vp.getTransform(); transform.reset(); final Point2D frameLocation = startTranslation.add(delta.mul(pct)); final double frameScaleX = startScaleX + (endScaleX - startScaleX) * pct; final double frameScaleY = startScaleY + (endScaleY - startScaleY) * pct; transform.translate(frameLocation.getX(), frameLocation.getY()).scale(frameScaleX, frameScaleY); showGridWidgets(pct); showGridWidgetConnectors(pct); gridWidget.getLayer().batch(); }
@Override public void onFrame(final IAnimation animation, final IAnimationHandle handle) { final double pct = assertPct(animation.getPercent()); final Viewport vp = gridWidget.getViewport(); final Transform transform = vp.getTransform(); transform.reset(); final Point2D frameLocation = startTranslation.add(delta.mul(pct)); final double frameScaleX = startScaleX + (endScaleX - startScaleX) * pct; final double frameScaleY = startScaleY + (endScaleY - startScaleY) * pct; transform.translate(frameLocation.getX(), frameLocation.getY()).scale(frameScaleX, frameScaleY); showGridWidgets(pct); showGridWidgetConnectors(pct); gridWidget.getLayer().batch(); }