Иллюстрированный самоучитель по программированию мобильных телефонов

Рисование линий

Основной класс мидлета Main очень прост. В этом классе создается объект класса Line, добавляется команда выхода из приложения и отражается текущий экран. Класс Line, находящийся в файле Line.java листинга 7.1, рисует набор различных линий. Сам класс Line наследуется от абстрактного класса Canvas. В более сложных программах может использоваться интерфейс Run-nable и метод run (). Такая техника программирования обычно используется при создании игр, и будет обсуждаться в конце этой главы.

Конструктор класса Line использует метод super () позволяющий обратиться к конструктору своего суперкласса Canvas. Основные же события происходят в методе paint () класса Canvas.

В строке кода:

g.setColor(OxOOOOff)

Происходит назначение цвета для любого последующего отрисованного примитива. То есть вызов метода setColor () с заданным цветом действителен до момента последующего вызова метода setColor (), устанавливающего другой цвет. В этом примере используется метод setColor (RGB), поэтому значение цвета задается восьмеричным значением с помощью нулей и букв. В следующем примере из раздела 7.4 при рисовании прямоугольников будет показана работа метода setColor () с тремя целочисленными параметрами, задающими значение цвета.

В строках кода:

g.drawLine(20, 20, 90, 20)
g.drawLine(20, 20, 20, 90)
g.drawLine(90, 20, 80, 10)
g.drawLine(90, 20, 80, 30)
g.drawLine(20, 90, 10, 80)
g.drawLine(20, 90, 30, 80)

Рисуется шесть синих линий, образующих систему координат. Толщина всех линий равна одному пикселю – это значение по умолчанию и изменить его нельзя. Для того чтобы нарисовать широкую линию, придется рисовать несколько соприкасающихся одинаковых по размеру линий.

g.drawLine(30, 30, 70, 30);
g.drawLine 30, 31, 70, 31);
g.drawLine(30, 32, 70, 32);

Этими строками кода рисуется одна толстая линия шириной в три пикселя.

В конце в методе paint () рисуется линия толщиной в два пикселя в виде пунктирной линии. Для этого используется метод setStrokeStyle () и константа DOTTER. На рис. 7.3 изображен эмулятор телефона с результатом работы программы из листинга 7.1.

Иллюстрированный самоучитель по программированию мобильных телефонов › Программирование графики › Рисование линий
Рис. 7.3. Рисование разноцветных линий

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.