/** Transforms the specified point in the actor's coordinates to be in screen coordinates. * @see Stage#stageToScreenCoordinates(Vector2) */ public Vector2 localToScreenCoordinates (Vector2 localCoords) { Stage stage = this.stage; if (stage == null) return localCoords; return stage.stageToScreenCoordinates(localToAscendantCoordinates(null, localCoords)); }
/** Transforms the specified point in the actor's coordinates to be in screen coordinates. * @see Stage#stageToScreenCoordinates(Vector2) */ public Vector2 localToScreenCoordinates (Vector2 localCoords) { Stage stage = this.stage; if (stage == null) return localCoords; return stage.stageToScreenCoordinates(localToAscendantCoordinates(null, localCoords)); }
public void draw (Batch batch, float parentAlpha) { // Use Stage#toScreenCoordinates, which we know is correct. toScreenCoordinates.set(testX, testY).sub(getOriginX(), getOriginY()).scl(getScaleX(), getScaleY()).rotate(getRotation()) .add(getOriginX(), getOriginY()).add(getX(), getY()); getStage().toScreenCoordinates(toScreenCoordinates, batch.getTransformMatrix()); // Do the same as toScreenCoordinates via Actor#localToParentCoordinates. localToAscendantCoordinates(null, localToParentCoordinates.set(testX, testY)); getStage().stageToScreenCoordinates(localToParentCoordinates); // System.out.println(name + " " + toScreenCoordinates + " " + localToParentCoordinates); batch.setColor(getColor()); batch.draw(region, getX(), getY(), getOriginX(), getOriginY(), getWidth(), getHeight(), getScaleX(), getScaleY(), getRotation()); super.draw(batch, parentAlpha); } }
/** Transforms the specified point in the actor's coordinates to be in screen coordinates. * @see Stage#stageToScreenCoordinates(Vector2) */ public Vector2 localToScreenCoordinates (Vector2 localCoords) { Stage stage = this.stage; if (stage == null) return localCoords; return stage.stageToScreenCoordinates(localToAscendantCoordinates(null, localCoords)); }
public void localToScreenCoords(Vector2 coords) { localToStageCoordinates(coords); getStage().stageToScreenCoordinates(coords); }
public void localToWorldCoords(Vector2 coords) { localToStageCoordinates(coords); getStage().stageToScreenCoordinates(coords); tmpV3.set(coords.x, coords.y, 0); camera.unproject(tmpV3, getX(), getY(), getWidth(), getHeight()); coords.set(tmpV3.x, tmpV3.y); }