2011-03-07 24 views
5

cómo configurar el sistema de coordenadas de la pantalla de Android como primer cuadrante del plano XY , iwant la posición (0,0) para estar en la parte inferior izquierda, y quiero saber si puedo usar la ecuación trignométrica en la pantalla de Android ya que el plano Android XY no es como el plano XySistema de coordenadas de la pantalla de Android: cómo establecer (0,0) en la parte inferior izquierda de la pantalla de Android como primer cuadrante del plano xy

Respuesta

0

No sé si eres va a tener mucha suerte cambiando dónde (0,0) se encuentra, pero se puede establecer una constante que las tenga en cuenta. myY = y menos screenHeight entonces (x, myY) ajusta y a la parte inferior de la pantalla y funciona desde allí +/-.

0

No creo que exista una forma de hacerlo que afecte a todo el sistema, como los archivos de diseño XML. Pero si solo desea dibujar con Canvas, puede usar translate() y scale().

Primero use translate() para deslizar el lienzo hacia abajo de modo que 0,0 esté en la parte inferior. Ahora la parte superior de la pantalla sería un número negativo, así que llame al scale() para darle la vuelta. Ahora 0,0 todavía está en la parte inferior, y la parte superior de la pantalla es un número positivo.

Estoy trabajando con información de this answer and its comments. Use algo como:

canvas.save();       // need to restore after drawing 
canvas.translate(0, canvas.getHeight()); // reset where 0,0 is located 
canvas.scale(1, -1);      // invert 
...          // draw to canvas here 
canvas.restore();       // restore to normal 

Y sí, puede usar las funciones trigonométricas 2D normales con los coords XY. Puedes hacerlo incluso si no están traducidos, solo tienes que pensarlo con más cuidado.

Cuestiones relacionadas