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