Реклама

GameDev. Работаем с QGraphicsObject вместо QGraphicsItem

Моё внимание обратили на то, что для работы с сигналами и слотами вместо класса наследованного от QGraphicsItem и от QObject можно использовать класс наследованный от QGraphicsObject. И действительно, если немного покопаться в исходниках QGraphicsObject, то обнаружится, что это класс наследованный от QGraphicsItem и от QObject. То есть также применяется множественное наследование, только в данном случае все…

Полиморфизм в Qt на примере геометрических фигур в QGraphicsScene

Полиморфизм является одной из парадигм ООП (объектно-ориентированное программирование). Полиморфизм реализует способность базового класса предоставлять свойства и методы, реализация которых не известна для будущих классов, которые будут наследованы от данного класса. То есть базовый класс в данном случае имеет весь необходимый набор методов для реализации поставленных задач, но конкретная реализация определённых методов возлагается на классы потомки. И,…
Advertisement

Перетаскивание QGraphicsItem на QGraphicsScene мышью

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

Как написать игру на Qt – Урок 4. Враг – смысл в выживании

Продолжаем тему того, как написать игру на Qt. После того, как в прошлых статьях была создана Муха, которая поедает яблоки, настало время создать ей врага. А Враг Мухи, как известно, Паук. Создание игровых персонажей, которые будут участвовать в непосредственной жизни Вашего главного героя – это не только отрисовка анимации действий и передвижения, а также логика реакций…

Как написать игру на Qt – Урок 3. Взаимодействие с другими объектами

После того, как в игре присутствует анимированная Муха, которая передвигается под воздействием клавиш клавиатуры, настало время добавить смысл в игру. Добавим цель Мухе, например, она будет поедать яблоки, которые будут подсчитываться. То есть необходимо настроить взаимодействие Мухи с другими объектами, в данном случае с яблоками. Для яблок необходимо создать отдельный класс, который также будет отнаследован…

Как написать игру на Qt – Урок 1. Управление объектом

С этого урока начинается серия статей о том, как написать игру на Qt. В предыдущей статье было рассказано о системе позиционирования графических элементов QGraphicsItem в графической сцене QGraphicsScene. Был нарисован треугольник и помещён в центр графической сцены, размеры которой были 500 на 500 пикселей. А теперь настало время этот треугольник оживить, а вернее начать им управлять. Составим…

Рисуем треугольник в Qt5. Позиционирование в QGraphicsScene

Рисование интерфейсов, формирование таблиц баз данных, работа с сетью – это всё хорошо, но иногда хочется просто, что-нибудь нарисовать, например треугольник. А потом конечно же оживить этот объект, чтобы им можно было управлять, и в последствии превратить этот проект в маленькую игру. Ну кто не хочет написать собственную игру, даже самую простую? Давайте тогда сделаем…

QGraphicsItem – наследование и СЛОТы

А теперь поговорим немного о наследовании от QGraphicsItem и применении системы СИГНАЛов и СЛОТов при взаимодействии с графическими объектами на графической сцене QGraphicsScene. В задачу данного урока входит создание приложения, в котором на графической сцене будет отображаться объект класса QGraphicsItem, по нажатию на который будет появляться диалоговое окно QMessageBox, сигнализирующее о событии нажатия на графический…