Как стать автором
Обновить
22
Карма
0
Рейтинг
Егор Егоров @egorF

Программист

QtWebApp — пошаговый разжёванный пример с подробными комментариями

Блог компании Edison Разработка веб-сайтов *Программирование *C++ *Qt *


В процессе разработки приложения на Qt, может понадобиться добавить в данное приложение веб-интерфейс, что особенно может быть актуально при разработке встраиваемых систем с использованием Qt. Для решения данной задачи можно либо написать собственное решение, либо воспользоваться готовыми решениями. Например, библиотекой QtWebApp, которая предоставляет необходимый функционал для создания web-интерфейса.

К достоинствам данной библиотеки можно отнести:
  1. формирование страниц с динамическим содержанием по шаблонам;
  2. формирование полностью динамических страниц;
  3. работу с Cookie, что позволит добавить авторизацию на приложении;
  4. работу со статическими файлами, например, style.css или изображения;
  5. реализацию загрузки файлов.

Предлагаю подробно рассмотреть один из вариантов запуска небольшого приложения на Qt, которое будет иметь несколько web-страниц, работающих с применением библиотеки QtWebApp.

На момент написания статьи изначально использовалась библиотека QtWebApp 1.6.3 и Qt 5.6. Проект успешно был запущен с комплектами сборки MSVC2013 и MinGW. В процессе отладки был замечен баг в классе Template библиотеки QtWebApp. После исправления бага и связи с разработчиком версия библиотеки была повышена до 1.6.4. Исходя из этого, можно отметить также плюс библиотеки, что разработчик ответил в течение суток на информацию о баге, и в тот же день версия библиотеки была повышена. Окончательный вариант примера приложения был подготовлен на версии 1.6.4.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Просмотры 24K
Комментарии 7

Фильтр Калмана — Введение

Программирование *Алгоритмы *
Фильтр Калмана — это, наверное, самый популярный алгоритм фильтрации, используемый во многих областях науки и техники. Благодаря своей простоте и эффективности его можно встретить в GPS-приемниках, обработчиках показаний датчиков, при реализации систем управления и т.д.

Про фильтр Калмана в интернете есть очень много статей и книг (в основном на английском), но у этих статей довольно большой порог вхождения, остается много туманных мест, хотя на самом деле это очень ясный и прозрачный алгоритм. Я попробую рассказать о нем простым языком, с постепенным нарастанием сложности.
Читать дальше →
Всего голосов 157: ↑151 и ↓6 +145
Просмотры 244K
Комментарии 50

Захват видео с USB камер на устройствах под управлением Linux

Работа с видео *DIY или Сделай сам
Из песочницы

Предыстория


Некоторое время назад я загорелся желанием “улучшить” танк из известного набора “Танковый бой”, добавив возможность играть, как «если бы я был водителем танка». Идея появилась после прочтения нескольких статей на Хабре (например здесь: geektimes.ru/post/257528), в них же я нашел, как это можно сделать имея маленький WiFi-роутер и USB-камеру. Решение выглядело подкупающе простым: роутер прошивается специальной прошивкой, к нему подключается камера, танк управляется родным пультом, а видео смотрится в браузере. Быстро собрав прототип, я обнаружил, что видео захватывается в отвратительном качестве. Это было либо 320х240х30, либо 640х480х30. При включении режима 1280х720 в лучшем случае было рваное видео с артефактами, в худшем — его не было вообще. Режим 1920х1080 не работал в принципе. Меня это сильно расстроило, так как на PC камера поддерживала режимы вплоть до 1920х1080х30 и имела аппаратное MJPG сжатие. Моя интуиция подсказывала, что реализация далека от совершенства.
Читать дальше →
Всего голосов 25: ↑25 и ↓0 +25
Просмотры 35K
Комментарии 12

О том, как рисовать кривые графики в стиле XKCD

Ненормальное программирование *Разработка веб-сайтов *JavaScript *Программирование *Визуализация данных *
Недавно я публиковал статью на Хабре про гитарный тюнер, и многих заинтересовали анимированные графики которые я использовал для иллюстрации звуковых волн, в том числе технология создания таких графиков. Поэтому в этой статье я поделюсь своим подходом и библиотечкой на Node.js которая поможет строить подобные графики.


Читать дальше →
Всего голосов 132: ↑129 и ↓3 +126
Просмотры 38K
Комментарии 22

OEM-активация Windows Vista/7/8/8.1 под гипервизором QEMU

Виртуализация *
OEM-версии ОС от Microsoft, начиная с Vista, используют проверку подлинности, основанную на сличении трех компонентов:

  • OEM-сертификата, вшитого в дистрибутив ОС
  • бинарного ключа, вшитого в BIOS, а конкретно — в таблицу ACPI SLIC
  • лицензионного 25-значного ключа производителя, вшитого в дистрибутив ОС

При успешном сличении трех этих компонентов происходит оффлайн-активация ОС. На корпусе ПК в этом случае имеется наклейка, содержащая лицензионный ключ конкретного экземпляра ОС (а не производителя), которым можно произвести онлайн-активацию ОС в случае ее установки не с образа, предоставляемого производителем ПК, а с «чистого» (MSDN) OEM-образа от Microsoft.

Кроме того, лицензионный ключ конкретного экземпляра ОС может быть вшит в текстовом виде в BIOS, в таблицу ACPI MSDM. В этом случае, при установке ОС ключ будет извлечен из BIOS и вшит в конкретный экземпляр ОС. OEM-наклейка на корпусе ноутбука в этом случае может уже не содержать лицензионный ключ. Такой способ используется для активации Windows 8/8.1
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Просмотры 193K
Комментарии 22

MS-DOS, который мы никогда не видели

История IT
Из песочницы
Порой встречаются такие артефакты природы, что начинаешь невольно задумывать о разных конспирологических теориях и альтернативной истории. Сегодня я хотел бы поговорить о разных малоизвестных и не очень аспектах операционной системы MS-DOS. Историй про дос на хабре было огромное множество: краткие очерки, подробная хронология, мемуары ностальгирующих, но никто ни разу не отмечал про MS-DOS 4.0 от 1985 года. Я считаю это очень важным звеном развития операционных систем для IBM PC, но удивительно мало информации о таком важном переходном этапе. Это буквально утерянная ветка доса и найти про нее информацию большая проблема. Что бы вы подумали если бы услышали о поддержке в DOS вытесняющей многозадачности, виртуальной памяти, свопа, семафоров и IPC. Фантастика?
Читать дальше →
Всего голосов 197: ↑192 и ↓5 +187
Просмотры 228K
Комментарии 71

Пилотируемая посадка космического аппарата

Космонавтика
Всем доброго времени суток, насыщенным у нас выдался прошлый месяц. Сначала старт корабля «Союз ТМА-11М», потом спуск «Союза ТМА-09М», и на десерт, старт корабля «Прогресс М-21М» по 4-х суточной схеме стыковки со сближением с МКС на 2-ые сутки полета на очень небольшое расстояние. Так как основная моя работа это обеспечение спусков космических аппаратов, в этой статье я расскажу об особенностях организации завершения пилотируемых программ на примере крайней посадки (“олимпийского” Союза ТМА-09М).
Читать дальше →
Всего голосов 103: ↑101 и ↓2 +99
Просмотры 54K
Комментарии 64

Почему балансирует бухгалтерский баланс?

Научно-популярное Финансы в IT
Туториал
image

Если вам известно, что такое бухгалтерский баланс, можете закончить чтение на этом. Если же баланс ускользнул от внимания, тогда, возможно, вас заинтересует его нехитрое, вместе с тем неординарное устройство.

Сейчас я коротко и по возможности доступно объясню, что бухгалтерский баланс такое и с какой стати ему балансировать.
Читать дальше →
Всего голосов 62: ↑50 и ↓12 +38
Просмотры 27K
Комментарии 60

Коррекция духовности интернет-трафика

Гаджеты
За десятки тысяч лет существования, человечество сформировало великое множество религиозных, философских и мировоззренческих учений. Однако с бурным развитем естественных наук в последнюю сотню лет, в обществе появилась и укрепилась тенденция все наблюдаемые явления пытаться описать в материалистических терминах, не принимая во внимание духовную сторону вопроса.

В мире IT не принято относиться всерьез к нематериальному, но всем известна шутка про сисадминов, настраивающих сервер при помощи нло или шаманского бубна. И очень многим, кто имел дело с достаточно большими и сложными системами, встречалась ситуация, когда некие явления невозможно объяснить в терминах физических процессов.

дальше - интереснее..
Всего голосов 143: ↑118 и ↓25 +93
Просмотры 62K
Комментарии 43

Веб-патология: Сайт для себя, а не для клиентов

Дизайн
Довольно часто в консультациях по UX дизайну приходиться повторять одно и тоже многим клиентам и меня это слегка нервирует. Поэтому я решил периодически кратко публиковать наиболее популярные темы, в наивной надежде, что люди их прочитают и эти темы не будут возникать так часто. Что-то вроде Лебедевского “Ководства”. В моём случае это получается какое-то UX-водство, что по русски забавно читается как “уховодство”. Логически верное название этой предполагаемой серии статей — “Частые патологии UX дизайна”, что можно сократить до “Веб-патологии”. Не бойтесь страшного слова “патология”, оно означает всего лишь систематическое отклонение от нормального развития и в целом безвредно.

Многие компании относятся к созданию собственного сайта, как к обустройству собственной квартиры. Скрупулёзно подбирают рисунок обоев, цвет паркета, ткань для штор, форму люстры, расставляют иконки, развешивают картины охоты и портреты глав семейств с пойманным лососем. Русский стиль на кухне, арт-деко в гостиной, супрематизм в спальне. Заботливо приоткрывают страницы семейных альбомов на серванте и протирают от пыли все три тысячи томов романистов прошлого века (чтобы гостям было что почитать). После того как всё готово, происходит открытие сайта и первые посетители банковского сайта тихо сползают по стенке…
Читать дальше →
Всего голосов 98: ↑57 и ↓41 +16
Просмотры 1.8K
Комментарии 48

Разработка привлекательных реалистичных пользовательских интерфейсов

Дизайн
Перевод
Cекрет разработки привлекательных интерфейсов заключается в реализме. Ваша задача — придать плоским элементам объём, используя свойства реальных объектов, вроде неровностей и шероховатостей, бликов и теней, различных текстур поверхностей. В идеале они должны выглядеть как предметы на вашем столе. Создавая классный интерфейс, в первую очередь нужно думать не «как», а «почему».
Читать дальше →
Всего голосов 212: ↑205 и ↓7 +198
Просмотры 15K
Комментарии 49

Добавляем рекламные баннеры iAd в ваши приложения для iPhone

Смартфоны
В апреле этого года во время презентации новой операционной системы iOS 4 (бывшая iPhone OS) Стив Джобс также представил и новую платформу компании Apple для мобильной рекламы – iAd. По заверению Apple, их главная задача — дать возможность заработать разработчикам бесплатных и недорогих приложений за счет размещения в последних рекламных баннеров. Оплата будет идти как за показ рекламного баннера, так и за клики по нему. Во втором случае оплата будет существенно выше.

Основная идея iAd – соединение интерактивности, которую дает использование смартфона или планшета, с эмоциональностью рекламного объявления, в котором задействованы и аудио, и видео. Для этих целей при создании рекламы используются Java Script, HTML5, CSS3 и мультитач. Все это позволяет создавать интересные и привлекающие внимание рекламные ролики-приложения. Примеры таких реклам мы могли видеть на презентации новой операционной системы (на английском языке).

Основной проблемой мобильной рекламы сегодня, по мнению Apple, является то, что кликая по рекламному баннеру, пользователь покидает приложение – переходя, чаще всего, на сайт рекламодателя. С помощью iAd мы можем обойти эту неприятность. После клика по баннеру рекламное объявление появляется поверх вашего приложения. Пользователь может в любой момент закрыть его и вернуться в ваше приложение точно в тот момент, в котором он его покинул.

На основе iAd Programming Guide и видео с WWDC 2010 я набросал краткий обзор-перевод этой новой технологии. Речь пойдет не о создании самих красочных рекламок, а именно о размещении таковых в ваших приложениях.

Читать дальше →
Всего голосов 66: ↑41 и ↓25 +16
Просмотры 34K
Комментарии 23

Ebay. Украина. О таможне и пересылках

Интернет-маркетинг *
О работе с Ebay написано много. Зачастую русскоязычные ресурсы описывают российские реалии и большая часть написанного применима к Украине, однако есть нюансы, на которые стоит обратить внимание.
Читать дальше →
Всего голосов 126: ↑119 и ↓7 +112
Просмотры 64K
Комментарии 135

WebMoney Keeper Mini Extension

Чулан
image
В связи с постоянно растущей популярностью браузера Google Chrome, а также для многочисленных пользователей WebMoney, хочу представить почитателям этого браузера полезное расширение для WebMoney Keeper Mini. Судя по счетчику загрузок на странице установки, о нем еще знают единицы…

Читать дальше →
Всего голосов 42: ↑28 и ↓14 +14
Просмотры 2.1K
Комментарии 29

NSA публикует историю компьютеров, используемых в агентстве до 1964 года

История IT
image
Одно из самых закрытых американских секретных агенств NSA (National Security Agency) раскрыло книгу об истории самого раннего использования компьютеров внутри агентства до 1964 года. То есть там рассказывает о том, как создавались и использовались ATLAS, ранние машины от IBM и UNIVAC.
Ссылка на материал: http://www.governmentattic.org/3docs/NSA-HGPEDC_1964.pdf
Текст довольно крупный (чуть больше 100 страниц), но очень полный и интересный. Советую.
PS: Например интересно почитать как была устроена память у машины ABNER: на акустических волнах в ртути.
Всего голосов 37: ↑34 и ↓3 +31
Просмотры 1.5K
Комментарии 22

Я разрежу тебя на тайлы. Часть первая

IT-компании
image Несмотря на все мои попытки к исправление ситуации с технологиями загрузки данных на карту, люди все продолжают и продолжают работать по старинке, загружая либо все данные вьюпорта при малейшем движении карты, либо просто загружая все данные вообще.
Покуда метры направления растеризует маркеры в картинки, строят супер системы группировок и кластеризаций и дрожат над каждым лишним килобайтом в скриптах, давайте я расскажу самый простой, стабильны, и банальный способ сделать жизнь свою, своих пользователей, своих карт и своего сервера чуть прекрасней.
Как будет сказано чуть позже покорение карт состоит из 5ти шагов.
Первый из них это загрузка карты( не все так просто как думается ), а вот второй — это загрузка на эти самые карты данных.
Он то нам и интересен.
Читать дальше →
Всего голосов 60: ↑43 и ↓17 +26
Просмотры 11K
Комментарии 11

Год с Roomba

Гаджеты
Туториал

Около года назад мне довелось стать счастливым обладателем iRobot Roomba 564 pet, с тех пор он исправно несёт боевое дежурство на просторах нашей 4-х комнатной квартиры по схеме: 4 раза в неделю (минимум). Намедни, мои руки наконец добрались и до него, я решил досконально почистить «борца за чистоту», а заодно провести фотосессию и рассказать Хабру о некоторых особенностях обслуживания сего зверя.
Надеюсь, что топик поможет вам выбрать оптимальный для себя робот-пылесос, а я приложу максимум усилий, что бы поведать — какие подводные камни ожидают Вас в пылесосах Roomba.

Осторожно!
Под катом много фото разобранного пылесоса, шерсти и чуть-чуть плавленой пластмассы.

Читать дальше →
Всего голосов 177: ↑170 и ↓7 +163
Просмотры 198K
Комментарии 177

Освобождаем свободное место на жестком диске: WIMBoot

Блог компании Microsoft
Сегодня стационарные компьютеры начинают медленно уходить на задний план. Их место прочно занимают ноутбуки, а затем идут и планшетные компьютеры. Сочетание мобильности, высокой производительности и высокой скорости получения информации – все это является несомненным плюсом планшетов. Однако, и своя ложка дегтя у планшетов есть: это малый размер жестких дисков. Если диск 16, 32 и даже 64 ГБ, вовсе не хочется разбрасываться ценным пространством на установочные файлы. С выходом Windows 8.1 Update появилось решение этой проблемы – WIMBoot – новый способ установки ОС, обеспечивающий большее свободное пространство для пользователя.


Читать дальше →
Всего голосов 36: ↑25 и ↓11 +14
Просмотры 69K
Комментарии 19

Один крутой Gist: whiteboardCleaner

Обработка изображений *
Доброго времени суток уважаемые хабравчане. На просторах интернета мне повстречался один миниатюрный и очень интересный Bash скрипт. С помощью ImageMagick он потрясающим образом обрабатывает фотографии белой учебной доски, очищая «содержимое» от всего лишнего:

#!/bin/bash
convert $1 -morphology Convolve DoG:15,100,0 -negate -normalize -blur 0x1 -channel RBG -level 60%,91%,0.1 $2


До:


image

После:


image
Читать дальше →
Всего голосов 137: ↑122 и ↓15 +107
Просмотры 30K
Комментарии 42
1

Информация

В рейтинге
Не участвует
Откуда
Киевская обл., Украина
Дата рождения
Зарегистрирован
Активность