/Materials Пн, 29.04.2024, 06:26

Сайт методики довузовского обучения программированию
и проектной деятельности в информатике


Главная страница, Контакты, RSS
 
> Меню сайта

> Разделы новостей
Семинар [36]
Семинар по системному и прикладному программированию
Etc [15]
Разное
Конференция [16]
Открытая конференция исследовательских и проектных работ

> Архив новостей

> Партнеры

> Поиск

> Статистика

Главная » 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)
Текст доклада (для докладчика)

Категория: Семинар | Просмотров: 5698 | Добавил: ded32
> Инструменты

Orphus


О рекламе на сайте ↑

Сайт рас­по­ло­жен на бес­плат­ном хос­тин­ге, пра­ви­ла ко­то­ро­го за­пре­ща­ют вы­ре­зать ре­к­ла­му, встав­ляе­мую авто­ма­ти­чес­ки, в том чис­ле в ви­де авто­ма­ти­чес­ко­го от­кры­тия стра­ниц дру­гих сай­тов. Ав­тор это­го сай­та не име­ет ни­ка­ко­го отно­ше­ния к этой ре­кла­ме.


> Загрузить

> Основные материалы

> Примеры проектов



Copyright (c) И.Р. Дединский, 2006-2024
Никакая часть материалов данного сайта или его подразделов не может быть прямо или косвенно процитирована или упомянута без действующей активной ссылки на данный сайт
...

Хостинг от uCoz

MasterHost Orphus