540

Capítulo 12 Gráfi cos y Java 2D™

12.1 Introducción

En este capítulo veremos varias de las herramientas de Java para dibujar fi guras bidimensionales, controlar colores 
y fuentes. Uno de los principales atractivos de Java era su soporte para gráfi cos, el cual permitía a los programa-
dores mejorar la apariencia visual de sus aplicaciones. Ahora, Java contiene muchas más herramientas sofi sticadas 
de dibujo como parte de la API Java 2D™. Comenzaremos este capítulo con una introducción a muchas de las 
herramientas de dibujo originales de Java. Después presentaremos varias de las más poderosas herramientas de 
Java 2D, como el control del estilo de líneas utilizadas para dibujar fi guras y el control del relleno de las fi guras 
con colores y patrones. [

Nota: ya hemos cubierto varios de los conceptos de este capítulo en el ejemplo práctico 

opcional de GUI y gráfi cos de los capítulos 3 a 10. Por lo tanto, parte del material será repetitivo si usted leyó el 
ejemplo práctico; sin embargo, si no lo ha leído, nos es necesario para comprender este capítulo].

En la fi gura 12.1 se muestra una porción de la jerarquía de clases de Java que incluye varias de las clases de 

gráfi cos básicas y las clases e interfaces de la API Java2 que cubriremos en este capítulo. La clase 

Color

 contiene 

métodos y constantes para manipular los colores. La clase 

JComponent

contiene el método 

paintComponent

, que 

se utiliza para dibujar gráfi cos en un componente.La clase 

Font

 contiene métodos y constantes para manejar los 

tipos de letras. La clase 

FontMetrics

 contiene métodos para obtener información sobre los tipos de letras. La 

clase

Graphics

 contiene métodos para dibujar cadenas, líneas, rectángulos y demás fi guras. La clase 

Graphics2D

,

que extiende a la clase 

Graphics

, se utiliza para dibujar con la API Java 2D. La clase 

Polygon

 contiene métodos 

para crear polígonos. La mitad inferior de la fi gura muestra varias clases e interfaces de la API Java 2D. La clase 

BasicStroke

 ayuda a especifi car las características de dibujo de las líneas. Las clases 

GradientPaint

 y 

Texture-

Paint

 ayudan a especifi car las características para rellenar fi guras con colores o patrones. Las clases 

GeneralPath

,

Line2D

,

Arc2D

,

Ellipse2D

,

Rectangle2D

 y 

RoundRectangle2D

 representan varias fi guras de Java 2D. [

Nota:

empezaremos el capítulo hablando sobre las herramientas de gráfi cos originales de Java, y después pasaremos a la 
API Java 2D. Ahora, las clases que formaron parte de las herramientas de gráfi cos originales de Java se consideran 
parte de la API Java 2D].

Para empezar a dibujar en Java, primero debemos entender su 

sistema de coordenadas

 (fi gura 12.2), el cual 

es un esquema para identifi car a cada uno de los posibles puntos en la pantalla. De manera predeterminada, la 
esquina superior izquierda de un componente de la GUI (como una ventana) tiene las coordenadas (0,0). Un 
par de coordenadas está compuesto por una 

coordenada x

 (la 

coordenada horizontal

) y una 

coordenada y

(la

coordenada vertical

). La coordenada 

x es la distancia horizontal que se desplaza hacia la derecha, desde la parte 

izquierda de la pantalla. La coordenada 

y es la distancia vertical que se desplaza hacia abajo, desde la parte superior 

de la pantalla. El 

eje x

 describe cada una de las coordenadas horizontales, y el 

ejey

 describe cada una de las coor-

denadas verticales. Las coordenadas se utilizan para indicar en dónde deben mostrarse los gráfi cos en una pantalla. 
Las unidades de las coordenadas se miden en 

píxeles

 (“elementos de imagen”). Un píxel es la unidad más pequeña 

de resolución de un monitor de computadora.

Tip de portabilidad 12.1

Existen distintos tipos de monitores de computadora con distintas resoluciones (es decir, la densidad de los píxeles 
varía). Esto puede hacer que los gráfi cos aparezcan de distintos tamaños en distintos monitores, o en el mismo moni-
tor con distintas confi guraciones.

 12.1 

Introducción

 12.2 

Contextos y objetos de gráfi cos

 12.3 

Control de colores

 12.4 

Control de tipos de letra

 12.5 

Dibujo de líneas, rectángulos y óvalos

 12.6 

Dibujo de arcos

 12.7 

Dibujo de polígonos y polilíneas

 12.8 

La API Java 2D

 12.9 

Conclusión

Resumen | Terminología | Ejercicios de autoevaluación | Respuestas a los ejercicios de autoevaluación | Ejercicios

Plan gener

al

12_MAQ_CAP_12_DEITEL.indd540

4/19/081:26:51AM