@Override public void mousePressed(MouseEvent e) { previewController.sendMouseEvent(buildPreviewMouseEvent(e, PreviewMouseEvent.Type.PRESSED)); ref.set(e.getX(), e.getY()); lastMove.set(target.getTranslate()); refreshLoop.refreshSketch(); }
@Override public void mousePressed(MouseEvent e) { previewController.sendMouseEvent(buildPreviewMouseEvent(e, PreviewMouseEvent.Type.PRESSED)); ref.set(e.getX(), e.getY()); lastMove.set(target.getTranslate()); 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(); } }
@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 Vector screenPositionToModelPosition(Vector screenPos) { Vector center = new Vector(getWidth() / 2f, getHeight() / 2f); Vector scaledCenter = Vector.mult(center, target.getScaling()); Vector scaledTrans = Vector.sub(center, scaledCenter); Vector modelPos = new Vector(screenPos.x, screenPos.y); modelPos.sub(scaledTrans); modelPos.div(target.getScaling()); modelPos.sub(target.getTranslate()); return modelPos; }
private Vector screenPositionToModelPosition(Vector screenPos) { Vector center = new Vector(getWidth() / 2f, getHeight() / 2f); Vector scaledCenter = Vector.mult(center, target.getScaling()); Vector scaledTrans = Vector.sub(center, scaledCenter); Vector modelPos = new Vector(screenPos.x, screenPos.y); modelPos.sub(scaledTrans); modelPos.div(target.getScaling()); modelPos.sub(target.getTranslate()); return modelPos; }