List of usage examples for com.badlogic.gdx.utils.viewport Viewport getWorldWidth
public float getWorldWidth()
From source file:com.jmolina.orb.widgets.game.TiledLayer.java
License:Open Source License
/** * Constructor/* www.jav a2 s . co m*/ * * @param am AssetManager * @param region Regin de textura * @param viewport Viewport */ public TiledLayer(AssetManager am, TextureRegion region, Viewport viewport) { super(am); int viewportTilesX = MathUtils.round(viewport.getWorldWidth() / region.getRegionWidth()); int viewportTilesY = MathUtils.round(viewport.getWorldHeight() / region.getRegionHeight()); TiledDrawable tiledDrawable = new TiledDrawable(region); tiledDrawable.setMinWidth(TIMES_X * viewportTilesX * region.getRegionWidth()); tiledDrawable.setMinHeight(TIMES_Y * viewportTilesY * region.getRegionHeight()); image = new Image(tiledDrawable); image.setPosition(0, 0); addActor(image); }
From source file:com.dongbat.game.screen.PickSkillScreen.java
@Override public void show() { stage.setViewport(new ExtendViewport(800, 480)); Viewport viewport = stage.getViewport(); float worldHeight = viewport.getWorldHeight(); float worldWidth = viewport.getWorldWidth(); stage.getViewport().update((int) worldWidth, (int) worldHeight); button.setPosition(-400, 120);/* w ww .j a v a2 s . c o m*/ button.setSize(80, 80); button1.setPosition(-280, 120); button1.setSize(80, 80); button2.setPosition(-160, 120); button2.setSize(80, 80); button3.setPosition(-40, 120); button3.setSize(80, 80); button4.setPosition(-400, 0); button4.setSize(80, 80); button5.setPosition(-280, 0); button5.setSize(80, 80); button6.setPosition(-160, 0); button6.setSize(80, 80); button7.setPosition(-40, 0); button7.setSize(80, 80); stage.addActor(button); stage.addActor(button1); stage.addActor(button2); stage.addActor(button3); stage.addActor(button4); stage.addActor(button5); stage.addActor(button6); stage.addActor(button7); InputUtil.addProcessor(stage, 0); }
From source file:com.jmolina.orb.widgets.ui.StaticBackground.java
License:Open Source License
/** * Constructor//from w w w .ja v a2 s. co m * * @param am AssetManager * @param viewport Viewport */ public StaticBackground(AssetManager am, Viewport viewport) { super(am); TextureRegion region = findRegion(Atlas.UI_BACKGROUND); tiledDrawable = new TiledDrawable(region); tiledDrawable.setMinWidth(viewport.getWorldWidth()); tiledDrawable.setMinHeight(viewport.getWorldHeight()); image = new Image(tiledDrawable); image.setPosition(0, 0); addActor(image); }
From source file:com.dongbat.game.system.GameStageSystem.java
@Override protected void initialize() { Viewport viewport = stage.getViewport(); float worldHeight = viewport.getWorldHeight(); float worldWidth = viewport.getWorldWidth(); float width = worldWidth / 60; float height = worldHeight / 60; buttonFleeAbility = new AbilityButton("Flee", skin, "flee"); buttonFleeAbility.setSize(width * 7, width * 7); buttonFleeAbility.setPosition(worldWidth - width * 7, height * 2); buttonBlowAbility = new AbilityButton("HotBlow", skin, "blow"); buttonBlowAbility.setSize(width * 7, width * 7); buttonBlowAbility.setPosition(worldWidth - width * 7, height * 2 + width * 7); buttonSplitAbility = new AbilityButton("SplitAndJoin", skin, "split"); buttonSplitAbility.setSize(width * 7, width * 7); buttonSplitAbility.setPosition(worldWidth - width * 7, height * 2 + width * 14); buttonVacuumAbility = new AbilityButton("Vacuum", skin, "vacuum"); buttonVacuumAbility.setSize(width * 7, width * 7); buttonVacuumAbility.setPosition(worldWidth - width * 7, height * 2 + width * 21); // title.setPosition(worldWidth - width * 30, worldHeight - height * 2); Touchpad.TouchpadStyle touchpadStyle = new Touchpad.TouchpadStyle(skin.get(Touchpad.TouchpadStyle.class)); SpriteDrawable bg = new SpriteDrawable(new Sprite(AssetUtil.joyBg)); bg.setMinWidth(worldHeight / 2.5f);//from w w w. j a v a 2s. co m bg.setMinHeight(worldHeight / 2.5f); touchpadStyle.background = bg; SpriteDrawable knob = new SpriteDrawable(new Sprite(AssetUtil.joyKnob)); knob.setMinWidth(worldHeight / 5f); knob.setMinHeight(worldHeight / 5f); touchpadStyle.knob = knob; touchpad = new Touchpad(10, touchpadStyle); touchpad.setBounds(15, 15, 200, 200); touchpad.setSize(worldHeight / 2.5f, worldHeight / 2.5f); stage.addActor(touchpad); stage.addActor(buttonVacuumAbility); stage.addActor(buttonSplitAbility); stage.addActor(buttonBlowAbility); stage.addActor(buttonFleeAbility); // stage.addActor(title); InputUtil.addProcessor(stage, 0); }
From source file:com.bladecoder.engine.actions.ScreenPositionAction.java
License:Apache License
@Override public boolean run(VerbRunner cb) { Scene s = actor.getScene();// w w w .java2s . c o m BaseActor a = s.getActor(actor.getActorId(), true); if (position != null) { float scale = EngineAssetManager.getInstance().getScale(); Viewport viewport = ((SceneScreen) BladeEngine.getAppUI().getScreen(Screens.SCENE_SCREEN)) .getViewport(); Vector3 v = new Vector3(position.x * scale, position.y * scale, 0); if (anchor == Anchor.CENTER) { v.x += viewport.getWorldWidth() / 2; v.y += (viewport.getWorldHeight() - a.getBBox().getBoundingRectangle().getHeight()) / 2; } else if (anchor == Anchor.TOP_LEFT) { v.x += a.getBBox().getBoundingRectangle().getWidth() / 2; v.y += viewport.getWorldHeight() - a.getBBox().getBoundingRectangle().getHeight(); } else if (anchor == Anchor.TOP_RIGHT) { v.x += viewport.getWorldWidth() - a.getBBox().getBoundingRectangle().getWidth() / 2; v.y += viewport.getWorldHeight() - a.getBBox().getBoundingRectangle().getHeight(); } else if (anchor == Anchor.DOWN_RIGHT) { v.x += viewport.getWorldWidth() - a.getBBox().getBoundingRectangle().getWidth() / 2; } else if (anchor == Anchor.DOWN_LEFT) { v.x += a.getBBox().getBoundingRectangle().getWidth() / 2; } // viewport.project(v); v.x *= viewport.getScreenWidth() / viewport.getWorldWidth(); v.y *= viewport.getScreenHeight() / viewport.getWorldHeight(); // v.y = viewport.getScreenHeight() - v.y; v.y = Gdx.graphics.getHeight() - v.y; World.getInstance().getCurrentScene().getCamera().unproject(v, 0, 0, viewport.getScreenWidth(), viewport.getScreenHeight()); a.setPosition(v.x, v.y); } return false; }
From source file:com.jmolina.orb.elements.Element.java
License:Open Source License
/** * Sincroniza solo la posicion del actor con la del cuerpo * * @param viewport Viewport//w ww. j a v a 2 s.c o m */ private void syncActorPosition(Viewport viewport) { float cameraX = viewport.getCamera().position.x; float cameraY = viewport.getCamera().position.y; float offsetX = viewport.getWorldWidth() * 0.5f; float offsetY = viewport.getWorldHeight() * 0.5f; float bodyPositionX = getBody().getPosition().x; float bodyPositionY = getBody().getPosition().y; float actorWidth = actor.getWidth(); float actorHeight = actor.getHeight(); float actorPositionX = getPPM() * (bodyPositionX - cameraX + offsetX) - 0.5f * actorWidth; float actorPositionY = getPPM() * (bodyPositionY - cameraY + offsetY) - 0.5f * actorHeight; actor.setPosition(actorPositionX, actorPositionY); }
From source file:com.jmolina.orb.stages.HUDStage.java
License:Open Source License
/** * Constructor/*from w w w . ja v a 2 s .com*/ * @param levelManager LevelManager * @param assetManager AssetManager * @param viewport Viewport */ public HUDStage(LevelManager levelManager, AssetManager assetManager, Viewport viewport) { super(viewport); this.levelManager = levelManager; createActors(assetManager); addActors(); createRunnables(); getRoot().setOrigin(viewport.getWorldWidth() * 0.5f, viewport.getWorldHeight() * 0.5f); getRoot().setSize(viewport.getWorldWidth(), viewport.getWorldHeight()); getRoot().setScale(1f); getRoot().setPosition(0f, 0f); }
From source file:com.uwsoft.editor.view.stage.Sandbox.java
License:Apache License
public Vector2 worldToScreen(Vector2 vector) { // TODO: WTF, project had to work instead I am back to this barbarian methods of unholy land! //vector = getViewport().project(vector); int pixelPerWU = sceneControl.sceneLoader.getRm().getProjectVO().pixelToWorld; OrthographicCamera camera = Sandbox.getInstance().getCamera(); Viewport viewport = Sandbox.getInstance().getViewport(); vector.x = vector.x / camera.zoom + (viewport.getWorldWidth() / 2 - (camera.position.x) / camera.zoom); vector.y = vector.y / camera.zoom + (viewport.getWorldHeight() / 2 - (camera.position.y) / camera.zoom); vector.scl(pixelPerWU);//from w ww .ja va 2 s .c o m return vector; }
From source file:com.o2d.pkayjava.editor.view.stage.Sandbox.java
License:Apache License
public Vector2 worldToScreen(Vector2 vector) { // TODO: WTF, project had to work instead I am back to this barbarian methods of unholy land! //vector = getViewport().project(vector); int pixelPerWU = sceneControl.sceneLoader.getRm().getProjectVO().pixelToWorld; OrthographicCamera camera = com.o2d.pkayjava.editor.view.stage.Sandbox.getInstance().getCamera(); Viewport viewport = com.o2d.pkayjava.editor.view.stage.Sandbox.getInstance().getViewport(); vector.x = vector.x / camera.zoom + (viewport.getWorldWidth() / 2 - (camera.position.x) / camera.zoom); vector.y = vector.y / camera.zoom + (viewport.getWorldHeight() / 2 - (camera.position.y) / camera.zoom); vector.scl(pixelPerWU);/*from w ww .j a va 2 s .c o m*/ return vector; }
From source file:com.jmolina.orb.stages.GestureStage.java
License:Open Source License
/** * Constructor/*from www . j av a 2 s. c o m*/ * * @param am AssetManager * @param vp Viewport * @param pixelsPerMeter Factor de conversion de pixeles a metros */ public GestureStage(AssetManager am, Viewport vp, float pixelsPerMeter) { super(vp); this.vp = vp; bufferedArrow = new Image(); buffer = new FrameBuffer(Pixmap.Format.RGBA8888, vp.getScreenWidth() + (int) (OVERSIZE_RATIO * vp.getScreenWidth()), vp.getScreenHeight() + (int) (OVERSIZE_RATIO * vp.getScreenHeight()), false); start = new Vector2(); end = new Vector2(); arrow = new Arrow(am, pixelsPerMeter); pulse = new Pulse(am, pixelsPerMeter); pulse.setPosition(0.5f * vp.getWorldWidth() - 0.5f * pulse.getWidth(), 0.5f * vp.getWorldHeight() - 0.5f * pulse.getHeight()); bufferedArrow.setSize(Var.SCREEN_WIDTH + OVERSIZE_RATIO * Var.SCREEN_WIDTH, Var.SCREEN_HEIGHT + OVERSIZE_RATIO * Var.SCREEN_HEIGHT); float ratioX = Var.SCREEN_WIDTH / vp.getScreenWidth(); float ratioY = Var.SCREEN_HEIGHT / vp.getScreenHeight(); float offsetX = 0.5f * ratioX * (Gdx.graphics.getWidth() - vp.getScreenWidth()); float offsetY = 0.5f * ratioY * (Gdx.graphics.getHeight() - vp.getScreenHeight()); bufferedArrow.setPosition(-offsetX, -offsetY); arrow.setVisible(false); pulse.reset(); addActor(pulse); addActor(arrow); addActor(bufferedArrow); }