Фрагмент кода
Итак, выберите папку Classes и создайте новый файл, используя шаблон Objective-C Class из раздела Cocoa Touch Class. Выберите вариант NSObject из раскрывающегося списка Subclass of и присвойте новому файлу имя GLFunView. m. Убедитесь также в том, что создан заголовочный файл.
Щелкните один раз на заголовочном файле GLFunView.h и внесите в него изменения.
Приведенный выше класс подобен классу из заголовочного файла QuartzFunView.h, но для упрощения процесса рисования изображений в контексте OpenGL ES вместо класса Ullmage для хранения изображения в данном случае используется класс Texture2D. Кроме того, суперкласс UlView заменен на 0penGLES2DView, чтобы текущее представление поддерживалось средствами OpenGL, настроенными на двухмерное рисование.
Перейдите к исходному файлу GLFunView.m и внесите в него изменения.
Как видите, применять библиотеку OpenGL не легче, чем библиотеку Quartz, а код приложения получается отнюдь не более кратким. Несмотря на то что OpenGL ES считается более эффективной библиотекой, чем Quartz 2D, она в то же время ближе, так сказать, к "железу". Но иногда библиотека OpenGL способна привести пользователя в полное отчаяние.
Данное представление загружается из nib-файла, и поэтому мы добавили метод initWithCoder в нем создали экземпляр объекта типа UlColor и присвоили его переменной currentColor. Кроме того, мы присвоили переменной useRandomColor исходное значение но и создали объект типа Texture2D.
После метода initWithCoder следует метод рисования. Именно в нем и проявляются существенные отличия между двумя рассматриваемыми здесь библиотеками графических функций.
В библиотеке OpenGL нам потребуется предпринять намного больше шагов, чтобы нарисовать ту же самую линию. Прежде всего устанавливаем виртуальный трехмерный мир в исходное состояние, чтобы исключить любые виды преобразования (вращения, переноса и прочего), которые могут быть произведены в нем.
- Дата: 15-01-2015, 20:44