public Helper(final Item item) { node = ((Edge) item.getSource()).getSource(); Item nodeSource = item.getData(SOURCE); x = nodeSource.getData(NodeItem.X); y = nodeSource.getData(NodeItem.Y); Float size = nodeSource.getData(NodeItem.SIZE); v1 = new Vector(x, y); v1.add(size, -size); v2 = new Vector(x, y); v2.add(size, size); } }
@Override public void mouseDragged(MouseEvent e) { if (!previewController.sendMouseEvent(buildPreviewMouseEvent(e, PreviewMouseEvent.Type.DRAGGED))) { setMoving(true); Vector trans = target.getTranslate(); trans.set(e.getX(), e.getY()); trans.sub(ref); trans.mult(isRetina ? 2f : 1f); trans.div(target.getScaling()); // ensure const. moving speed whatever the zoom is trans.add(lastMove); refreshLoop.refreshSketch(); } }
@Override public void mouseDragged(MouseEvent e) { if (!previewController.sendMouseEvent(buildPreviewMouseEvent(e, PreviewMouseEvent.Type.DRAGGED))) { setMoving(true); Vector trans = target.getTranslate(); trans.set(e.getX(), e.getY()); trans.sub(ref); trans.mult(isRetina ? 2f : 1f); trans.div(target.getScaling()); // ensure const. moving speed whatever the zoom is trans.add(lastMove); refreshLoop.refreshSketch(); } }
private void fit(CanvasSize cs) { Vector box = new Vector(cs.getWidth(), cs.getHeight()); Vector semiBox = Vector.div(box, 2F); Vector topLeft = new Vector(cs.getX(), cs.getY()); Vector center = new Vector(width / 2F, height / 2F); Vector scaledCenter = Vector.add(topLeft, semiBox); trans.set(center); trans.sub(scaledCenter); } }