/** Transforms the specified point in screen coordinates to the actor's local coordinate system. * @see Stage#screenToStageCoordinates(Vector2) */ public Vector2 screenToLocalCoordinates (Vector2 screenCoords) { Stage stage = this.stage; if (stage == null) return screenCoords; return stageToLocalCoordinates(stage.screenToStageCoordinates(screenCoords)); }
/** Converts coordinates for this actor to those of another actor, which can be anywhere in the stage. */ public Vector2 localToActorCoordinates (Actor actor, Vector2 localCoords) { localToStageCoordinates(localCoords); return actor.stageToLocalCoordinates(localCoords); }
private void stageToLocalAmount (Vector2 amount) { actor.stageToLocalCoordinates(amount); amount.sub(actor.stageToLocalCoordinates(tmpCoords2.set(0, 0))); } });
/** Converts coordinates for this actor to those of another actor, which can be anywhere in the stage. */ public Vector2 localToActorCoordinates (Actor actor, Vector2 localCoords) { localToStageCoordinates(localCoords); return actor.stageToLocalCoordinates(localCoords); }
private void stageToLocalAmount (Vector2 amount) { actor.stageToLocalCoordinates(amount); amount.sub(actor.stageToLocalCoordinates(tmpCoords2.set(0, 0))); } });
/** Transforms the specified point in screen coordinates to the actor's local coordinate system. * @see Stage#screenToStageCoordinates(Vector2) */ public Vector2 screenToLocalCoordinates (Vector2 screenCoords) { Stage stage = this.stage; if (stage == null) return screenCoords; return stageToLocalCoordinates(stage.screenToStageCoordinates(screenCoords)); }
/** Sets actorCoords to this event's coordinates relative to the specified actor. * @param actorCoords Output for resulting coordinates. */ public Vector2 toCoordinates (Actor actor, Vector2 actorCoords) { actorCoords.set(stageX, stageY); actor.stageToLocalCoordinates(actorCoords); return actorCoords; }
/** Sets actorCoords to this event's coordinates relative to the specified actor. * @param actorCoords Output for resulting coordinates. */ public Vector2 toCoordinates (Actor actor, Vector2 actorCoords) { actorCoords.set(stageX, stageY); actor.stageToLocalCoordinates(actorCoords); return actorCoords; }
public boolean pinch (Vector2 stageInitialPointer1, Vector2 stageInitialPointer2, Vector2 stagePointer1, Vector2 stagePointer2) { actor.stageToLocalCoordinates(initialPointer1.set(stageInitialPointer1)); actor.stageToLocalCoordinates(initialPointer2.set(stageInitialPointer2)); actor.stageToLocalCoordinates(pointer1.set(stagePointer1)); actor.stageToLocalCoordinates(pointer2.set(stagePointer2)); ActorGestureListener.this.pinch(event, initialPointer1, initialPointer2, pointer1, pointer2); return true; }
public boolean pinch (Vector2 stageInitialPointer1, Vector2 stageInitialPointer2, Vector2 stagePointer1, Vector2 stagePointer2) { actor.stageToLocalCoordinates(initialPointer1.set(stageInitialPointer1)); actor.stageToLocalCoordinates(initialPointer2.set(stageInitialPointer2)); actor.stageToLocalCoordinates(pointer1.set(stagePointer1)); actor.stageToLocalCoordinates(pointer2.set(stagePointer2)); ActorGestureListener.this.pinch(event, initialPointer1, initialPointer2, pointer1, pointer2); return true; }
public boolean tap (float stageX, float stageY, int count, int button) { actor.stageToLocalCoordinates(tmpCoords.set(stageX, stageY)); ActorGestureListener.this.tap(event, tmpCoords.x, tmpCoords.y, count, button); return true; }
public boolean longPress (float stageX, float stageY) { actor.stageToLocalCoordinates(tmpCoords.set(stageX, stageY)); return ActorGestureListener.this.longPress(actor, tmpCoords.x, tmpCoords.y); }
public boolean tap (float stageX, float stageY, int count, int button) { actor.stageToLocalCoordinates(tmpCoords.set(stageX, stageY)); ActorGestureListener.this.tap(event, tmpCoords.x, tmpCoords.y, count, button); return true; }
public boolean longPress (float stageX, float stageY) { actor.stageToLocalCoordinates(tmpCoords.set(stageX, stageY)); return ActorGestureListener.this.longPress(actor, tmpCoords.x, tmpCoords.y); }
public boolean pan (float stageX, float stageY, float deltaX, float deltaY) { stageToLocalAmount(tmpCoords.set(deltaX, deltaY)); deltaX = tmpCoords.x; deltaY = tmpCoords.y; actor.stageToLocalCoordinates(tmpCoords.set(stageX, stageY)); ActorGestureListener.this.pan(event, tmpCoords.x, tmpCoords.y, deltaX, deltaY); return true; }
public boolean pan (float stageX, float stageY, float deltaX, float deltaY) { stageToLocalAmount(tmpCoords.set(deltaX, deltaY)); deltaX = tmpCoords.x; deltaY = tmpCoords.y; actor.stageToLocalCoordinates(tmpCoords.set(stageX, stageY)); ActorGestureListener.this.pan(event, tmpCoords.x, tmpCoords.y, deltaX, deltaY); return true; }
public void dragStop (InputEvent event, float x, float y, int pointer) { if (pointer != activePointer) return; activePointer = -1; if (payload == null) return; if (System.currentTimeMillis() - dragStartTime < dragTime) isValidTarget = false; if (dragActor != null) dragActor.remove(); if (isValidTarget) { float stageX = event.getStageX() + touchOffsetX, stageY = event.getStageY() + touchOffsetY; target.actor.stageToLocalCoordinates(tmpVector.set(stageX, stageY)); target.drop(source, payload, tmpVector.x, tmpVector.y, pointer); } source.dragStop(event, x, y, pointer, payload, isValidTarget ? target : null); if (target != null) target.reset(source, payload); dragSource = null; payload = null; target = null; isValidTarget = false; dragActor = null; } };
public void dragStop (InputEvent event, float x, float y, int pointer) { if (pointer != activePointer) return; activePointer = -1; if (payload == null) return; if (System.currentTimeMillis() - dragStartTime < dragTime) isValidTarget = false; if (dragActor != null) dragActor.remove(); if (isValidTarget) { float stageX = event.getStageX() + touchOffsetX, stageY = event.getStageY() + touchOffsetY; target.actor.stageToLocalCoordinates(tmpVector.set(stageX, stageY)); target.drop(source, payload, tmpVector.x, tmpVector.y, pointer); } source.dragStop(event, x, y, pointer, payload, isValidTarget ? target : null); if (target != null) target.reset(source, payload); dragSource = null; payload = null; target = null; isValidTarget = false; dragActor = null; } };
public boolean handle (Event e) { if (!(e instanceof InputEvent)) return false; InputEvent event = (InputEvent)e; switch (event.getType()) { case touchDown: actor = event.getListenerActor(); touchDownTarget = event.getTarget(); detector.touchDown(event.getStageX(), event.getStageY(), event.getPointer(), event.getButton()); actor.stageToLocalCoordinates(tmpCoords.set(event.getStageX(), event.getStageY())); touchDown(event, tmpCoords.x, tmpCoords.y, event.getPointer(), event.getButton()); return true; case touchUp: if (event.isTouchFocusCancel()) { detector.reset(); return false; } this.event = event; actor = event.getListenerActor(); detector.touchUp(event.getStageX(), event.getStageY(), event.getPointer(), event.getButton()); actor.stageToLocalCoordinates(tmpCoords.set(event.getStageX(), event.getStageY())); touchUp(event, tmpCoords.x, tmpCoords.y, event.getPointer(), event.getButton()); return true; case touchDragged: this.event = event; actor = event.getListenerActor(); detector.touchDragged(event.getStageX(), event.getStageY(), event.getPointer()); return true; } return false; }
public boolean handle (Event e) { if (!(e instanceof InputEvent)) return false; InputEvent event = (InputEvent)e; switch (event.getType()) { case touchDown: actor = event.getListenerActor(); touchDownTarget = event.getTarget(); detector.touchDown(event.getStageX(), event.getStageY(), event.getPointer(), event.getButton()); actor.stageToLocalCoordinates(tmpCoords.set(event.getStageX(), event.getStageY())); touchDown(event, tmpCoords.x, tmpCoords.y, event.getPointer(), event.getButton()); return true; case touchUp: if (event.isTouchFocusCancel()) { detector.reset(); return false; } this.event = event; actor = event.getListenerActor(); detector.touchUp(event.getStageX(), event.getStageY(), event.getPointer(), event.getButton()); actor.stageToLocalCoordinates(tmpCoords.set(event.getStageX(), event.getStageY())); touchUp(event, tmpCoords.x, tmpCoords.y, event.getPointer(), event.getButton()); return true; case touchDragged: this.event = event; actor = event.getListenerActor(); detector.touchDragged(event.getStageX(), event.getStageY(), event.getPointer()); return true; } return false; }