Мы с Vass записали и выложили вторую серию второго сезона подкаста «Заметки о Qt».
Сам подкаст на rpod.ru — qt-notes.rpod.ru/287388.html
Результаты конкурса внутри!
Читать полностью »
Рубрика «qt» - 34
Подкаст «Заметки о Qt» s02e02
2012-11-01 в 10:00, admin, рубрики: c++, Digia, QML, qt, qt creator, Qt Software, qt5, конкурс, Программирование, метки: c++, Digia, QML, Qt, qt creator, qt5, конкурсEvo, часть 2 — о скрещивании
2012-10-28 в 10:30, admin, рубрики: evo, qt, qt4, Алгоритмы, естественный отбор, игра жизнь, искусственный интеллект, метки: evo, Qt, qt4, естественный отбор, игра жизнь Приветствую вас, читатели!
В продолжение поста «Аналог игры «Жизнь» — Evo» хотелось бы дать более подробное описание команд «языка генов», который используется в Evo, и поделиться своими соображениями по методам скрещивания особей в этой игре.
Читать полностью »
Аналог игры «Жизнь» — Evo
2012-10-27 в 14:04, admin, рубрики: evo, qt, Qt Software, qt4, Алгоритмы, естественный отбор, игра жизнь, искусственный интеллект, метки: evo, Qt, qt4, естественный отбор, игра жизнь Приветствую вас, читатели!
Недавно прочитал статью про игру Жизнь, и вспомнилось мне, что я в мае этого года начинал писать свой проект подобной направленности. Только вот интерес к нему за рутиной работы быстро угас, хотя написано было немало. И сейчас, вдохновлённый этой статьёй, я взял этот проект с пыльной полки и добавил несколько фич, о которых расскажу далее.
Вкратце, мой вариант имеет следующие условия:
- жизнь развивается на поле 256*256 клеток;
- на поле могут размещаться объекты трёх типов: живность, пища(назовем её травой) и камень (препятствие);
- живность представляет собой фактически модифицированную машину Тьюринга, если точнее, то это больше похоже на Автомат с магазинной памятью, т.е. живность является «процессором», выполняющим свой «генетический» код;
- живность имеет возможность совершать определенные действия (двигаться, есть, размножаться (пока только клонированием, мутации будут со дня на день, скрещивание в перспективе)), отдавая соответствующие команды;
- наступив на траву, живность её вытаптывает;
- для поглощения еды надо дать команду «Ешь в этом направлении!», находясь в соседней клетке;
- живность имеет память, что позволяет строить циклы, условия и т.п., т.е. полная по Тьюрингу (поправьте меня, если не прав!), объем памяти неограничен;
- живность может складывать и вычитать значения в уме, разрядность ограничена одним байтом;
- существует возможность реализации генетических алгоритмов (пока не реализовано).
Кому интересны подробности, прошу под кат!
Ленивый map на Qt
2012-10-18 в 13:29, admin, рубрики: map, qt, Qt Software, параллельные вычисления, метки: map, Qt, параллельные вычисленияВ Qt есть возможность параллельного выполнения вашей функции для каждого члена последовательности — QtConcurrent::mapped() и его друзья.
Проблема только в одном — результаты сохраняются в QVector. Поэтому, когда мне понадобилось выполнить свою функцию для 65 миллионов кусочков данных, я не стал мучать оперативку, а написал примерно то же самое, только чуть более ленивое, то есть новые значения будут вычисляться, только если старые уже использовались.
Читать полностью »
Есть интересная задача: Поиск двух пропущенных чисел в массиве целых чисел
2012-10-14 в 18:36, admin, рубрики: qt, ruby, Алгоритмы, Программирование, метки: Qt, ruby, Алгоритмы Есть интересная задача: есть массив целых чисел. Числа идут подряд от 1 до k. Но в
массиве пропущены два числа. Как найти эти числа?
Решил поделиться своим решением и реализацией (на Ruby) самого простого из них (еще два приведу в виде алгоритмов).
Способ 1.
Читать полностью »
Qt виджет для добавления и удаления строк в таблицe QTableView
2012-10-01 в 8:18, admin, рубрики: c++, GUI, mvc, opensource, qt, Qt Software, Программирование, метки: gui, mvc, opensource, Qt
В этой статье я хотел бы поделиться своим опытом разработки одного виджета (элемента графического интерфейса), попутно осветив некоторые технологии и техники Qt.
Очень часто бывает необходимо дать пользователю возможность вставки строк и столбцов в таблицу или удаление их из неё. Как правило это реализуется так: надо выделить строку кликнув по хидеру и выбрать пункт в меню: select > menu > insert | delete. Это не совсем очевидно и интуитивно, как и то что строка вставляется перед текущей а не, например, после неё. Поэтому я написал виджет который снимает эту проблему.
Виджет выглядит как четыре кнопки, следующие за курсором по границе таблицы (хаха, это совсем как те пчелки, которые бегали за курсором на сайтах в эпоху вэб 1.0!). Можно было бы перегрузить QTableView, но тогда придется изменять все инстансы; вместо этого я написал отдельный виджет которые представляет из себя как бы панельку которая прикрепляется к уже имеющемуся QTableView. Читать полностью »
Qt SDK 4.8 статическая сборка проекта
2012-09-26 в 14:49, admin, рубрики: qt, Qt Software, qt4, линковка, сборка проекта, метки: Qt, qt4, линковка, сборка проектаВступление:
В данном уроке я расскажу в картинках как собрать приложение статически/провести статическую линковку/ отучить ваш *.exe от библиотек Qt — кажется это всё одно и тоже по своей сути
Лично я всё проделывай со свеженькой на данный момент Qt SDK с сайта Nokia( Qt 4.8 и SDK 1.2.1)
Сам я полный нуб в Windows, так как всё жизнь сижу на Linux, так что всё сопровождается картинками, для таких же нубов в винде, как я сам
Читать полностью »
Редизайн Qt Creator своими руками
2012-09-26 в 14:26, admin, рубрики: css, qt, Qt Software, метки: css, Qt
Многие из тех кто занимаются разработкой на C++/Qt знакомы с такой средой как Qt Creator, создатели которой потрудились над дизайном не меньше чем над функциональностью. Но меня, как любителя темных цветовых схем и плоского минимализма, всегда не устраивали светлый фон панелек и градиентные заголовки.
Казалось бы, открытый исходный код — бери да меняй, но неопытность и лень останавливали меня, пока я не узнал про такую вещь как Qt Style Sheets, позволяющюю описать вид виджетов в формате css.
Подкаст «Заметки о Qt» s02e01
2012-09-19 в 9:32, admin, рубрики: c++, Digia, qt, qt creator, Qt Developer Conference, Qt Software, qt5, Raspberry Pi, Visual Studio, конкурс, подкасты, Программирование, метки: c++, Digia, Qt, qt creator, Qt Developer Conference, qt5, Raspberry Pi, Visual Studio, конкурс Мы с Vass записали и выложили первую серию второго сезона подкаста «Заметки о Qt».
Сам подкаст на rpod.ru — qt-notes.rpod.ru/284337.html
Теперь с конкурсом!
Читать полностью »
Приходилось часто работать с классом QDataStream. В результате накопил некоторый опыт, как правильно его использовать.