Главная » Программирование игр под Android » Рисование простых фигур – РАЗРАБОТКА ИГР ДЛЯ ОС ANDROID

0

Каких-то 150 страниц – и вот мы уже готовы нарисовать первый пиксел. Сейчас мы быстро пробежимся по некоторым методам прорисовки, предлагаемым классом Canvas

Рисование пикселов. Начнем с рисования одного пиксела, которое осуществляется следующим методом:

Первое, что бросается в глаза, – координаты пикселов определены в типе float. Кроме того, Canvas не дает нам определить цвет напрямую, требуя вместо этого от нас экземпляр класса Paifit.

Не волнуйтесь из-за того, что мы определили координаты как float. Canvas оснащен довольно мощным инструментарием, позволяющим нам перерисовывать не только целочисленные координаты, поэтому метод и принимает не только целые числа. Пока нам, правда, подобная функциональность не нужна; мы вернемся к ней в следующей главе.

Класс Pai nt хранит информацию о стиле и цвете, используемую для рисования фигур, текста и изображений. Для рисования фигур нам интересны только две вещи: цвет и стиль, хранимые в Paint. Поскольку пиксел не имеет стиля, сконцентрируемся на цвете. Вот так производится инициализация класса Paint и установка цвета в нем:

Создание экземпляра класса – довольно несложное упражнение. Метод Pai nt. setARGEK тоже не должен вызвать у вас затруднений. Каждый его аргумент представляет один из компонентов цвета и имеет диапазон от 0 до 255. Таким образом, в данном случае мы используем цветовую схему ARGB8888. Можно применять и другой метод для установки цвета для экземпляра Paint:

Здесь мы передаем методу один параметр – 32-битное целое число. Оно также закодировано в схеме ARGB8888 (в данном случае зеленая составляющая задана с полной непрозрачностью). Кроме того, класс Col or определяет несколько статических констант, кодирующих цвета (например, Col or. RED, Col or. YELLOW). Вы можете использовать их, если не хотите оперировать шестнадцатеричными числами.

Рисование линий. Чтобы нарисовать линию, мы используем следующий метод Canvas:

Первые два аргумента определяют координаты начальной точки линии, следующие два – конечные, последний задает экземпляр Paint. Полученная в результате линия будет в один пиксел толщиной. Если мы хотим, чтобы она была толще, то можем определить соответствующее значение в Paint:

Рисование прямоугольников. С помощью Canvas мы также можем рисовать прямоугольники:

Первые два аргумента определяют координаты левого верхнего угла прямоугольника, следующие два – координаты правого нижнего угла, Paint задает стиль и цвет прямоугольника. Что же понимается под стилем и как его определить?

Для установки стиля для экземпляра Paint используйте следующий метод:

Style – перечисление, имеющее значения Style. FILL, Style.STROKE и Style. FILL  ANDSTROKE. Если мы назначим стиль Style. FILL, прямоугольник будет заполнен цветом, определенным в Paint. При использовании Sty. е. STROKE будет прорисована только рамка прямоугольника (ее цвет и толщина также определены в Paint). Стиль Sty1е. FI LL AND STROKE объединяет два предыдущих – прямоугольник будет заполнен цветом, рамка будет нарисована.

Рисование окружностей. Окружности могут рисоваться как пустыми, так и заполненными:

Первые два аргумента определяют координаты центра окружности, следующий аргумент – ее радиус в пикселах, последний – все тот же Paint. Как и в случае с методом Canvas. drawRectangl е, цвет и стиль Paint будут использованы для рисования окружности.

Еще один важный момент, который стоит помнить, – все эти методы рисования выполняют альфа-смешивание. Просто определите альфа-составляющую цвета значением, отличающимся от 255 (Oxff), и ваши пикселы, линии, прямоугольники и окружности станут полупрозрачными.

Источник: Mario Zechner / Марио Цехнер, «Программирование игр под Android», пер. Егор Сидорович, Евгений Зазноба, Издательство «Питер»

По теме:

  • Комментарии