lunes, 17 de octubre de 2016

Java 2D



El sistema de coordenadas de gráficos.


Los gráficos de Java se basan en píxeles. Un píxel es un pequeño punto en la pantalla que se puede cambia a un color especifico. Cada píxel se identifica mediante un par de números (sus coordenadas), empezando desde cero:
  • La posición horizontal, que a menudo se denomina x en las matemáticas (y también en la documentación en Java); este valor se incrementa de izquierda a derecha.
  • La posición vertical, que a menudo se denomina este valor se incrementa hacia abajo.

Utilizamos este sistema cuando pedimos a Java que dibuje formas simples. 



Para crear gráficos en java, se implementa la librería: AWT(Abstract Window Toolkit - Herramienta abstracta de ventanas).

import.java.awt.*;

De donde se despliegan las APIs (Application Programming Interface - Interfaz de programación de aplicaciones): Graphics y Graphics2D.

import java.awt.Graphics;
import java.awt.Graphics2D;


Métodos para dibujar.

Además de lineas, estas bibliotecas nos proporcionan herramientas para dibujar:

  • rectángulos
  • óvalos
  • polígonos
Así como otras figuras más avanzadas.

Los principales métodos más usados son:
  • drawLine
Cuyos parámetros son: el valor horizontal del inicio de la linea, el valor vertical del inicio de la linea, el valor horizontal del final de la linea y el valor vertical del final de la linea.
  • drawRect
Parámetros: valor horizontal de la esquina superior izquierda, valor vertical de la esquina superior izquierda, ancho del rectángulo y altura del rectángulo.
  • drawOval
Parámetros: (imaginando que esta dentro de un rectángulo)  valor horizontal de la esquina superior izquierda, valor vertical de la esquina superior izquierda, ancho del rectángulo y altura del rectángulo.

Además, podemos dibujar figuras solidas (con relleno), esto es utilizando los métodos:
  • fillRect
  • fillOval
Cuyos parámetros son los mismos que los métodos anteriores.


Dibujos a color

Java cuenta con 13 colores estándar:

Curvas

Java 2D proporciona curvas cuadráticas y cúbicas. Las cuadráticas son complejas de manipular para crearlas se utilizan dos coordenadas iniciales y dos finales más dos coordenadas de control de curva. 

QuadCurve2D c=new QuadCurve2D.Double(50,50,20,30,50,80);


Áreas

Una técnica muy interesante para construir formas consiste en usar operaciones lógicas para unir, restar o intersectar figuras. Hay cuatro operaciones de este tipo: 


Para realizar estas operaciones se requiere un objeto de área (clase Area). Es esta clase la que posee estos métodos. La clase Area posee un constructor en el que se pueden colocar objetos Shape. De esta forma se pueden combinar figuras como se muestra en el ejemplo:

Graphics2D g2=(Graphics2D) g; 
Area a1=new Area(new Rectangle2D.Double(100, 100, 400,200));
Area a2=new Area(new Ellipse2D.Double(150,50, 250, 400));
a1.add(a2);
g2.draw(a1); 


Transformaciones

Son operaciones que se realizan sobre el contexto gráfico, de forma que los siguientes dibujos aparecen distorsionados en la dirección marcada por la transformación. Lo que se transforma es el contexto gráfico. Esta transformación se ejecuta con algunos de estos métodos: 








No hay comentarios:

Publicar un comentario