Pull to refresh

Qt и мобильная камера. Часть 1, Symbian

Development of mobile applications *
Sandbox
Доброго времени суток, Хабр!

За время моей работы в области разработки мобильных приложений, в частности для Symbian, было создано несколько решений для работы с камерой телефона. Со временем решения эти эволюционировали, о чем я и хочу рассказать в двух следующих статьях.
В первой речь пойдет о нетривиальном, но гибком получении изображения с Symbian-телефона средствами QtMobility 1.1.3, во второй — о проблемах и их решениях при переносе кода на платформу Meego 1.2 Harmattan под управлением которой в данный момент работают Nokia N900, N950, N9.
Данный материал может быть полезен начинающим Qt-разработчикам мобильных приложений.

Итак, Qt для работы с Symbian-камерой.
Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Views 4.3K
Comments 18

Qt и мобильная камера. Часть 2, Meego

Development of mobile applications *
Здравствуйте, Хабравчане!

В прошлой статье я рассказал о том, как создать удобный Qt-видоискатель для камеры на Symbian устройствах. Теперь пришло время сделать наш код более универсальным и добавить совместимость с Meego 1.2, что, как оказалось, является задачей не самой тривиальной.

Вкратце напомню, что мы получили в прошлой части:
  • Класс позволяющий получить и обработать каждый фрейм видеопотока в отдельности
  • Виджет видоискателя, перерисовываемый на каждом новом фрейме, что позволяет делать с входящим изображением все, что угодно
Теперь о том, почему мы не можем просто взять и добавить этот виджет в приложение для Nokia N9 (N900, N950). Все дело в формате изображения, возвращаемого камерой — UYVY. При запуске нашего видоискателя все что мы получим — лишь сообщение в дебаг-лог о неподходящем формате. Что такое UYVY я не знаю, но, к счастью, не без помощи зарубежных пользователей Maemo/Meego, мне удалось найти решение этой проблемы. Далее я приведу лишь отрывки кода из первой статьи с новыми модификациями.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views 2.4K
Comments 15

Введение в разработку картографических и геолокационных мобильных приложений с применением QtMobility.location

Qt *
Этот пост участвует в конкурсе „Умные телефоны за умные посты

Никогда ранее не приходилось участвовать в разработке картографических и геолокационных мобильных приложений, поэтому эта конкурсная тема мне стала интересна как в плане профессионального роста, так и в плане обычного человеческого любопытства. Я, естественно, подозревал, что QtQuick значительно облегчит мне задачу изучения сабжа, но он в очередной раз приятно удивил элегантной простотой решения задачи.


Речь пойдет о QtMobility.location. Кстати, изображенное на скриншоте приложение содержит менее страницы кода на QML и ни строчки на C++.
Читать дальше →
Total votes 33: ↑15 and ↓18 -3
Views 2.8K
Comments 10

Разработка картографических мобильных приложений на С++/Qt, с использованием Qt Mobility

Development of mobile applications *

Этот пост участвует в конкурсе „Умные телефоны за умные посты"


imageВ предыдущей статье мы научились писать картографическое приложение на QML, а сегодня мы рассмотрим разработку приложения на базе архитектуры графических представлений Qt Graphics View, с использованием API модуля QtLocation. Статью можно поделить на две части: теоретическую и практическую. В теоретической части рассматриваются архитектура Graphics View и основные моменты использования модуля QtLocation. В практической части я не буду описывать создание проекта с нуля, а предоставлю код наиболее интересного функционала из проекта, такого как инерционное перемещение карты, анимированный переход на заданную координату, определения местоположения по GPS, элементы для масштабирования и вывода текстовой информации.
Если вы собирали дополнительные плагины из предыдущей статьи их можно использовать и в этом проекте.
Читать дальше →
Total votes 21: ↑13 and ↓8 +5
Views 14K
Comments 8

Связывание модели данных в C++ c представлением в QML на примере карты

Qt *


Этот пост участвует в конкурсе „Умные телефоны за умные посты“.

Попробуем решить следующую задачу: показать в приложении карту с пинами, то есть сделать стандартную функциональность, нужную для любого LBS приложения. Причем, сделать это в парадигме MVC – то есть модель данных и контроллер в C++, а QML занимается только отображением и логикой, связанной с UI. Для карты будем использовать использовать стандартный элемент Map, а заодно разберемся со связыванием модели данных из C++ и QML.
Читать дальше →
Total votes 22: ↑11 and ↓11 0
Views 4.8K
Comments 7