Girar Rectángulo con LibGDX – android libgdx

Pregunta:


Estoy haciendo un programilla de prueba que se compone de :

  • 4 botones , arriba, abajo, izquierda y derecha.
  • Una nave espacial, formada por un Rectangulo(Rectangle) y su respectiva imagen (Texture).

Boton arriba, se mueve hacia arriba

Boton abajo, se mueve hacia abajo.

Boton izquierdo, gira en sentido antihorario sobre si mismo
Boton derecho , gira en sentido horario sobre si mismo

No encuentro ningun método para hacer funcionar el boton derecho e izquierdo. Gracias de antemano.

Preguntado por: Ramosaurio

centenond

Puedes utilizar también la clase Polygon en lugar de Rectangle

a diferencia del rectangulo el polygono se define segun sus vertices:
introducir la descripción de la imagen aquí

Polygon polygono = new Polygon(new float[]{
                rect.x, rect.y,                                 //vertice A
                rect.x, rect.y + rect.height,                   //vertice B
                rect.x + rect.width, rect.y + rect.height,     //vertice C
                rect.x + rect.width, rect.y                    //vertice D
            });


botonIzquierdo.addListener(new InputListener(){
    @Override
    public boolean touchDown(InputEvent event, float x, float y,
                    int pointer, int button) {

        polygono.rotate(5);
        return super.touchDown(event, x, y, pointer, button);
    }
});

En render();

shapeRenderer.begin();
shapeRenderer.setColor(Color.red);
shapeRenderer.polygon(polygono.getTransformedVertices());
shapeRenderer.end();

Bueno he conseguido ver como solucionar este error sencillito.

Si creamos el Rectangle no vamos a poder manipularlo mucho, deberiamos crear un ShapeRender :
Creamos cuatro puntos

float shapeX = new float[4];
float shapeY = new float[4];

y ahora en nuestro void draw()

shapeX[0] = x + MathUtils.cos(radians);
shapeY[0] = x + MathUtils.sin(radians);

Le damos valor a radians, al punto principal le doy pi/2 , y ya le vamos sumando su respectivo angulo a cada punto. Hacemos esto con cada punto del array.

Fuente

Related Posts:

Botones con android y LibGDX – android libgdx
Pregunta: Buenas, he creado un pequeño boton en android, con libGDX muy sencillo, pero el problema es el siguiente: Le tengo asignada una funcion que escribe ...
¿Location manager Android? Experiencias – android mysql android-studio
Pregunta: He desarrollado una aplicación Gps que envía información a Mysql cada 10 seg atraves de locationmanager. ¿Según su experiencia hasta cuanto es posible disminuir ...
Crear cuenta regresiva N segundos mientras se visualiza una Activity en Android – java android
Pregunta: Quiero implementar una cuenta regresiva de N segundos, que se inicie cuando la Activity se muestre, se pare el contador cuando el usuario decide ...
Crear prototipos para aplicaciones Android – android prototipos
Pregunta: estoy interesado en optar por una herramienta que me sea bastante util para poder realizar prototipos de aplicaciones móviles, especificamente para Android. Empece buscando ...
¿Como Se Instala Un Apk Y Como Se Ve Despues? – android
Pregunta: Tengo una duda sobre que pasa con ese archivo apk una vez instalado si se queda como uno solo o se separa en fragmentos ...
¿Como usar la clase Intent para mostrar las apps del usuario – android android-intent
Pregunta: Quiero que mi app muestre las aplicaciones del usuario en un ListView. He tratado de investigar y me salio en ingles la mención a esta ...
Calcular distancia entre dos coordenadas android – android
Pregunta: quisiera saber como puedo hallar la distancia entre 2 coordenadas en kilómetros en trayecto vía automóvil, estoy usando la API de google maps. Agradezco cualquier ...
¿Cómo puedo crear una aplicación Android que no se pueda cerrar así como WhatsApp? – android android
Pregunta: Esta pregunta ya tiene una respuesta aquí: ...
Spinner y EditText – java android
Pregunta: Tengo este código para cargar un spinner con datos de una base de datos: private class Getfrutas extends AsyncTask<Void, Void, Void> { ...
Crear listview en un Fragment en android – android
Pregunta: Estoy creando una aplicación en la cual incluyo un listview, en un Fragment. Dicho listview ya lo había ejecutado en un activity normal y ...
¿ Por qué se me detiene la aplicación al usar este pequeño código? – java android bottombar
Pregunta: Tengo un bottomBar donde tengo 5 opciones, la última es la del mapa de google API. Mi problema es que al hacer click en ...
¿ Cómo implemento este código para android 6.0? – java android
Pregunta: Tengo en un Fragment implementado el Google API y FUNCIONA. Pero funciona en mis 3 móviles que son jellybean, kitkat y lollipop. El ...
¿Cómo guardar un ImageView en Android? – java android
Pregunta: Mi aplicación está compuesta por un botón y un ImageView y cuando se aprieta el botón la ImageView recibe una imagen que tengo en ...
¿Como Se Puede Almacenar Una Imagen En Una Base De Datos SqlLite? – android
Pregunta: Quiero saber si es posible almacenar una imagen en una base de datos Sql Lite. Gracias. Preguntado por: PowerApp La imagen se guardaría ...
Como usar windowSoftInputMode=“adjustNothing” – android android-layout
Pregunta: Buenas, tengo un layout para una actividad en el cual cuando voy a utilizar el teclado android este oculta algunos views, he estado buscando ...

Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *