LINUX.ORG.RU

Сообщения swfvova

 

Шаблон Flyweight (C++)

Здравствуйте. Делаю небольшую игру на С++ в которой есть карта, которая состоит из 50х50 ячеек, в итоге выходит 2500 объектов, но есть отличный шаблон для таких целей - Flyweight, который дает возможность создать для поля 50х50 не 2500 объектов, а напр. 5 объектов.

Приспособленец сохраняет уникальные объекты в коллекцию ключ-значение

std::map<int, Tile *> m_tiles;
Саму реализацию проводить не буду, она типичная. После отрисовки самой карты все хорошо, но если нужно изменить хотя бы один объект, аналогичные объекты по типу, меняются тоже, оно и понятно (все аналогичные объекты имеют одинаковый адрес). А есть какая-то альтернатива для решения этой проблемы, чтобы создавалось напр. не 2500 объектов, а поменьше, но с разными адресами, чтобы после изменения одного, не изменялись остальные?

 

swfvova
()

Проблема отображения данных в Qml

Здравствуйте. Произошла проблема с отображение данных с C++ в qml. Есть 2-ва класса: BaseBlock и его наследник Block.

- BaseBlock

class BaseBlock : public QObject
{
    Q_OBJECT

    Q_PROPERTY(int row READ GetRow NOTIFY rowChanged)
    Q_PROPERTY(int column READ GetColumn NOTIFY columnChanged)
    Q_PROPERTY(int imgSize READ GetImgSize CONSTANT)
    Q_PROPERTY(QString imgAddress READ GetImgAddress CONSTANT)
public:
    explicit BaseBlock(QObject *parent = 0);
    explicit BaseBlock(int row, int column, QObject *parent = 0);

- Block

class Block : public BaseBlock
{
public:
    Block();
    Block(int row, int column, bool isTraversable, BLOCK_TYPE type);

И кусок кода, который отображает данных в qml-файлах

Q_PROPERTY(QQmlListProperty<BaseBlock> blocks READ GetBlocks NOTIFY block_Changed)
...
QList<BaseBlock*> _tiles;
...
QQmlListProperty<BaseBlock> GameBoard::GetBlocks() {
    return QQmlListProperty<BaseBlock> (static_cast<QObject*>(this), _tiles);
}
И регистрация типа для qml
qmlRegisterType<BaseBlock>("org.my.project", 1, 0, "BaseBlock");
Все хорошо работает, если отображать данные с BaseBlock, но если пробовать отображать с Block (после полной замены с BaseBlock на Block), то высвечивается сообщение и при роботе программы в окне не отображаются данные.
QMetaProperty::read: Unable to handle unregistered datatype 'QQmlListProperty<Block>' for property 'GameBoard::blocks'
Как решить проблему отображения данных Block?

 ,

swfvova
()

Repeater в QML

Здравствуйте. Начал изучать QT/QML под Android, хочу сделать небольшую проект, на подобии Pacman, но никак не могу понять как работает Repeater с Grid'ом, фактически в Pacman'не есть 4-ри сущности - стены, мой шарик, шарики соперников и шарики, которые я собираю. Для каждой сущности я создаю по qqmllistproperty в классе, qqmllistproperty уже работает с qml'ем, как задать нужное позиционирование объектов?, например, когда я запускаю игру, чтобы мой шарик отображался на позиции (2,2), а стена была бы на позиции (1,1), (1,2) и т.д. Для того чтобы разобраться с repeater, я создал простенький Grid 4х4 и в него поместил несколько repeater'ов с rectangle'ми в качестве моделей я указал числа и в итоге получилось не то что я хотел.

Можете, пожалуйста, объяснить как правильно с помощью repeater, задавать позиционирование объектов с C++ в qml'льном grid. И что лучше для таких целей canvas или grid?

 ,

swfvova
()

Идея для pet-проекта на C++ (многопоточность)

Здравствуйте.

Можете, пожалуйста, подкинуть интересную идею для pet-проекта на плюсах в которой нужно будет использовать многопоточность, просто в голову ничего не идет.

 ,

swfvova
()

Проблема при установке Android Studio в ubuntu x64

Привет, возникла проблема с установкой Android Studio в ubuntu 15.10 x64, несколько месяцев назад, установилось сразу, а сейчас сразу при запуске качает зависимости SDK (ошибка - mkscard решается установкой lib32stdc++6) и потом появляются ошибки The following SDK component was not installed: platform-tools - Текст ошибки:

( читать дальше... )

Далее качает SDK под разные версии андроида. Можете, пожалуйста, помочь с решение этой ошибки, заранее спасибо)

 

swfvova
()

Распознавание положение шарика

Здравствуйте. Можете, пожалуйста, объяснить мне алгоритм распознавание шарика для пинг-понга (белого цвета) на плоскости темного цвета с помощью библиотеки OpenCV (еще бы было хорошо услышать как сделать так, чтобы возвращало позицию шарика на этой плоскости - но это уже нагло просить:) или дать толковую ссылку где это можно почитать. Заранее спасибо)

 

swfvova
()

Распознавание положение шарика на RPi B

Привет. Начал делать проект «Ball on plate» на Raspberry Pi B, появилась проблема распознавание шарика, мне кажется что не хватит быстродействия в связке OpenCV + RPi и я решил попробовать написать свой велосипед, я в этому вопрос не очень квалифицирован, можете, пожалуйста подсказать как это можно будет сделать и что использовать? Я склоняюсь чтобы с помощью ffmpeg и/или video4linux2 как-то по быстрому разделять на кадры, находить на положение шарика и эти данные отравлять в регулятор платформы.

 ,

swfvova
()

Разложение музыкального файла в спектр с помощью преобразование Фурьє

Привет)

Несколько дней назад появилась интересна идея, и основная часть этой идеи - это разложение музыкального файла на спектр. Суть вопроса состоит в том, что нужно извлеченную информацию из файла, преобразовать в спектр с помощью (быстрого) преобразования Фурьє (другого метода не знаю), можете, пожалуйста, объяснить алгоритм как сделать это преобразование), я думаю что нужно получить сначала с файла частоту и амплитуду, а потом уже работать с Фурьє.

Заранее спасибо за ответ.

 ,

swfvova
()

Зачем нужна передаточная функция

Привет, хотел создать этот топик в «Science & Engineering», но у меня нету кнопки «Добавить», вопрос в том, зачем нужна передаточна функция из ТАУ (все ТАУ основано на пер. ф-ции), у меня ТАУ было целый год в институте, где набирали всякие модели в simulink, и где рассказывали про стойкость, статические и астатические системы, цифровые ф-ции и т.д. , но так и не рассказали про ёё реальное применение, как она применяется и где, я слышал что она применяется в электроники и АСУТП. Можете, пожалуйста, рассказать про применение пер. ф-ции в реальной жизни. Заранее спасибо.

 

swfvova
()

TCP\IP стек (lwIP) для МК (для stm32f3)

Здравствуйте)

Может вопрос немного не стандартен для этой ветки, но очень интересный для меня, недавно мне с Китая пришла посылка с разными модулями для мк, и одним из них был - enc28j60 (модуль ethernet), я думал что с ним будет как с другими модулями, которые работают по spi, то есть выставить CS, записать в какой-то регистр мк и прочитать данные, но когда я начал вникать в вопрос, то понял, что не так все просто, нужен еще TCP\IP стек, как я посмотрел в интернете TCP\IP стек для встраиваемых систем реализуют - lwIP и uIP и прочее, как я заметил самый популярный - это lwIP. Я так и не понял ЗАЧЕМ? эта обвертка (как я думаю она нужна для реализации разных сетевых протоколов), и особенно как она взаимодействует с самим железом!!!. Питался искать примеры, почти все реализации были на RTOS'ах с которыми я не знаком. На сайте st уже есть готовые решение для TCP\IP для всех мк, кроме моего stm32f3. Мне этот модуль нужен для отправки запросов (GET) на сервер по http.

Можете, пожалуйста, поделиться со мной, embedded-гуру, своими знаниями по этому вопросу. Заранее спасибо)

 ,

swfvova
()

Многопоточность в java

Привет, можете ,пожалуйста, подкинуть интересные статьи или какие-то мануалы по использованию потоков в Java и распараллеливанию задач, а еще в идеале было бы не плохо увидеть какой-то код ,напр., несложных мат. задач, где будет виден profit, от использования потоков.

Заранее спасибо за ответ)

 ,

swfvova
()

Помогите составить план изучения С++

Привет всем. У меня вопрос к людям знающим плюсы, можете помочь составить план изучения этого языка, в программировании я не полный нуб), есть неплохие знания Java, C# и базовые Python и Django, ну и в принципе я немного знаю C/C++, несколько лет назад написал пару простеньких программ на qt и на linux api, немного прожу на микроконтроллерах stm, есть какие-никакие знания паттернов. В этом году ходил на собеседование, на позицию Java Jun. Dev. - не получилось, не взяли, а может оно и к лучшему). Java - как-то уже изрядно надоеда, мне плюсы начали нравится тем, что нужно думать. Если честно мне не интересно и влом читать книги на 100500 страниц, в которых описана сырая теория, без практики, мне проще изучать все на практике. Может кто-то посоветует какой-то Open Source проект чтобы прокачать скилы или кому-то нужен помощник который за него будет делать простую роботу) Заранее спасибо за ответ.

 

swfvova
()

RSS подписка на новые темы