| | Главная » 2013 » Июнь » 8 » Контекстно-ориентированная система рендеринга двухмерной графики для Mac OS X 
 
| Контекстно-ориентированная система рендеринга двухмерной графики для Mac OS X
Александр Хабаров8 класс
 |  |  |  |  | Целью проекта является cоздание системы двухмерного рендеринга для Mac OS X 10.8, работающей с низкоуровневым графическим контекстом системы. 
 В работе реализована система рендеринга TXLibMac, обеспечивающая попиксельный доступ к контексту низкоуровневого фреймворка Core Graphics операционной системы OS X. При использовании стандартных методов Core Graphics для вызова функций необходимо задавать 
множество низкоуровневых параметров, работать с матрицами и менять 
системы координат. Разработанная система предоставляет врапперы на языках С и Objective-C для методов контекста Core Graphics 
для работы с графическими примитивами, текстом, изображениями, 
контекстами графики, что сильно облегчает разработку графических программ. Некоторые возможности Core Graphics в качестве 
врапперов пока не реализованы, но за счет предоставления доступа к 
контексту ядра их можно использовать напрямую. Реализована полная поддержка Interface Builder, за счет использования Objective-C классов интерфейса пользователя в ядре.
 
 Также создана отдельная библиотека на основе Core Image для продвинутой фильтрации изображений. Она использует привязывающийся к контексту при инициализации динамический массив, что позволяет сильно ускорить изменение цветов отдельных пикселей. Массив хранит данные в формате RGBA, что позволяет использовать прозрачность.
 
 Помимо этого, для TXLibMac разработаны модули:
 
 1) Получения ввода с устройств на Mac - привычные для программистов Win32 функции GetAsyncKeyState и kbhit.
 2) Взаимодействия с консолью Mac - ввод и вывод в графическом окне программы с помощью стандартных методов С и С++.
 3) Работы с операционной системой Mac OS - многооконность и использование Cocoa.
 
 Все части системы объединены в едином фреймворке, представленным динамической библиотекой. Разработаны шаблоны проектов и мастер проектов для среды программирования Xcode.
 
 Работа выполнена на языке Objective-C в среде Xcode.
 
 Литература
 
 Mac Dev Center
 Mac Developer Library
 Coding Together: Developing Apps for iPhone and iPad (RSS feed)
 StackOverflow
 Wikipedia
 
 Материалы работы
 
 Создание проекта на основе фреймворка TXLibMac (видео в формате QuickTime)
 Текст доклада (для докладчика)
 
 
 |  | Категория: Семинар |
Просмотров: 6253 |
Добавил: ded32 |  | 
 | 
| > Инструменты 
 |  | 
   |  
 
 | О рекламе на сайте ↑ 
 |  | 
Сайт расположен на бесплатном хостинге, правила которого запрещают вырезать рекламу, вставляемую автоматически,
 в том числе в виде автоматического открытия страниц других сайтов. Автор этого сайта не имеет никакого отношения к этой рекламе.
  |  
 
 
| > Примеры проектов 
 |  | 
М. Андриенко. Заметки участника трех конференцийИ. Шаповалов. Платформа для машинно-независимого исполнения программного кода с возможностью JIT-компиляцииД. Байгушев. Модульная система трансляции с возможностью обратимой трансляции для ЯВУ, машинно-независимым исполнением программ и поддержкой JITТ. Борисова. Разработка дополнения к Visual Studio для синтаксически ориентированной фильтрации сообщенийЛ. Столяров, Ф. Петряйкин, Н. Уваров. Платформа для автоматной многоагентной системы в стиле 3D-ActionЛ. Столяров. Трансляция описаний конечных автоматов исходный код на языке СВ. Янушковский. Использование компиляции для построения графиков в MathToolsА. Пимкин. Эволюция игры PunkManiaВ. Зайцев. Программно-аппаратный комплекс AnalyticExpert (тезисы и презентация) М. Варенцов. Программа для тестирования по географии Globus++А. Переславцев, А. Поташев. Построение графиков произвольных функций (презентация)А. Татаринов, В. Устинов, В Федосеев. Мультиагентная система ElendorВ. Попов. Реализация подмножества DirectX в DOS (презентация),
 (доклад,
 статья)М. Давыдова. Сетевой резидентный клиент (презентация),
 (доклад,
 статья)П. Константинов. Интегрированная среда для разработки под PIC (презентация),
 (статья)А. Попов. Перехват функций Win32 API (презентация),
 (доклад,
 статья)А. Афанасьев. Компиляция выражений в машинный код (статья) |  
 
 |