Russian Qt Forum
Май 06, 2024, 00:54 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало Форум WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  
  Просмотр сообщений
Страниц: 1 [2] 3 4 ... 188
16  Программирование / Алгоритмы / Re: Определить конечный угол вращения составного объекта : Март 19, 2021, 14:01
Т.е. грубо говоря, что то вроде:

Код
Entity { // Некий контейнер - большой куб, содержит под-объект - малый куб.
   components: [
       Mesh { source: "qrc:/assets/models/big-cube.obj" },
       Transform {
             // Содержит все 3-д свойства большого куба (матрицы и прочее)
       },
       PhongMaterial { ambient: "green" }
   ]
 
   Entity { // Некий чайлд - малый куб
       components: [
           Mesh { source: "qrc:/assets/models/small-cube.obj" },
           Transform {
                 // Содержит все 3-д свойства малого куба (матрицы и прочее)
           },
           PhongMaterial { ambient: "red" }
       ]
   }
}
 

Так вот, надо как то найти углы поворота малого куба относительно глобальной неподвижной системы координат (или как там она называется),
после того как мы повращали большой куб, а в нем - еще и малый вокруг их локальных координат.
17  Программирование / Алгоритмы / Re: Определить проекции вектора гравитации на три оси зная углы поворота по осям : Март 19, 2021, 13:48
Агаа, спасибо большое! Вроде это работает. Респект и уважуха!  Улыбающийся

Но теперь вытекает следующий вопрос.
18  Программирование / Алгоритмы / Определить конечный угол вращения составного объекта : Март 19, 2021, 13:47
Всем привет еще раз.

Этот вопрос следует из предыдущего поста,
где речь шла об определении проекций вектора гравитации на оси акселерометра.

Но теперь задачка немного другая..

А допустим что акселерометр (условно - некий объект) находится внутри какого-то другого объекта (ну, или лежит на нем).
И у каждого из объектов есть возможность их поворота по трем осям X,Y,Z (см рисунок).

1. Изначально угол поворота акселерометра и его "контейнера" равны нулю, относительно земли (некоей неподвижной системы отсчета).

2. Далее, допустим, что акселерометр крутанули вокруг какой-то оси на какой то угол, например на 30 градусов.

3. Теперь мы повернули и сам контейнер вокруг той же оси на какой-то угол, например 30 градусов.

4. Вопрос, а каким теперь будет угол поворота акселерометра вокруг этой же оси относительно земли?


Очевидно, что в этом частном случае что на картинке - он будет 60 градусов?
Но как быть в общем случае, когда вращение идет в пространстве?

Можно ли просто суммировать углы поворота вокруг осей каждого из объектов (а вдруг их будут больше двух, например,
акселерометр может лежать на черепахе, которая может наклоняться в любую сторону, и сама черепаха стоит на слонах,
которые тоже могут играть в присядки)?

Или же опять нужно что-то городить в матрицами? Если да, то как это делается?  Строит глазки

При этом, как я понимаю, каждый объект имеет свою матрицу и прочие 3-д параметры

 

19  Программирование / Алгоритмы / Re: Определить проекции вектора гравитации на три оси зная углы поворота по осям : Март 19, 2021, 12:16
Цитата: Igors
Ну стало быть найти  вектор гравитации в СК прибора.

Агаа... Спасибо..

Вопросы:

1)

Цитировать
// матрица прибора, порядок вращений XYZ
QMatrix4 m;
m.rotate(angleZ, 0, 0, 1);
m.rotate(angleY, 0, 1, 0);
m.rotate(angleX, 1, 0, 0);

А надо ли мне делать это, если, к примеру, мой 3-д объект имеет Transform айтем?

Там уже есть как бы матрица 4x4.., то я могу взять ее?

2) Нужно ли нормализовать эту матрицу в диапазон 0-1 (типа чтобы потом делать m.mapVector()) ? Если да - то как?
20  Программирование / Алгоритмы / Re: Определить проекции вектора гравитации на три оси зная углы поворота по осям : Март 19, 2021, 11:31
Цитата: Igors
Не понял. Может так:

Есть вектор гравитации G - он направлен всегда вниз по оси Z. Его длина всегда равна 1-це.

Есть акселерометр, у него есть тоже три оси X,Y,Z (типа система координат, связанная с ним).

Допустим, если он лежит горизонтально, то его ось Z совпадает с вектором гравитации Z, а оси
X,Y - перпендикулярны..

В итоге имеем, что проекция гравитации на ось Z - равна 1-це, а на остальные оси - по нулям.

Теперь, вращаем акселерометр вокруг оси Y, против часовой стрелки на 45 градусов.
Тогда угол альфа станет 45 градусов - и следовательно, проекции вектора гравитации на оси
акселерометра изменятся.

Теперь добавится какая то составляющая по оси X, а по оси Z - уменьшится..

Так вот.. найти эти составляющие - проекции.

Цитата: ssoft
Получается сложнейшая система из 3-х линейных уравнений относительно A2x, A2y, A2z.

Именно, и по ходу нерешаемая.

Может есть другие варианты как это делается?
21  Программирование / Алгоритмы / Определить проекции вектора гравитации на три оси зная углы поворота по осям : Март 19, 2021, 10:46
Всем привет.

Чую, мне кирдык.

Есть ли вариант пересчитать углы поворота вокруг осей X,Y,Z в проекции вектора гравитации на эти оси?

Тут нашел пример http://bitaks.com/resources/inclinometer/content.html,
но там приведены прямые формулы - т.е. они получают углы из проекций, а мне надо наоборот
- проекции из углов:

22  Qt / Qt-инструментарий / Re: Использование QtCreator-а для для программирования микроконтроллеров, без Qbs : Январь 24, 2021, 23:15
Подниму эту мертвотему и на правах рекламы скажу, что сейчас уже много чего возможно используя Qbs в связке с QtCreator или VSCode.

Если у кого есть время и желание и знание джавы, то он может попробовать запилить плагин и для эклипса. Это очень увлекательное и интересное занятие.  Смеющийся

Без  Qbs будет хреновенько с подсветкой инклудов компилера, предопределенных макросов компилера, да и вообще не комильфо.
23  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Январь 11, 2021, 20:30
Выкатил первую как бы стабильную версию плагина v1.0.0: https://github.com/denis-shienkov/vscode-qbs/releases

Также, обновил ее в VSCode маркете.

Список изменений тут: https://github.com/denis-shienkov/vscode-qbs/blob/master/CHANGELOG.md

Пользуйтесь наздоровье, товарищи! Улыбающийся
24  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Декабрь 29, 2020, 19:45
Ну, т.е. надо бы как-то сообщать что тулчейн протух, и не запускать билд.

А какое поведение с этим в QtC сейчас?

25  Qt / Вопросы новичков / Re: quint16 uint16_t : Декабрь 28, 2020, 11:47
и я бы еще завернул структуры в pragma pack и их аналоги. чтобы точно знать что будет передано то что надо.

и датастрим тут избыточен, имхо.
26  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Декабрь 23, 2020, 15:37
Упс, да.  Смеющийся
27  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Декабрь 22, 2020, 14:53
@alex312, я создал issue на гитхабе по поводу outline: https://github.com/microsoft/vscode-cpptools/issues/6693

Глянь, плз, то это или не то что ты имел ввиду. Если то - то тоже можешь пять копеек добавить. Улыбающийся  
28  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Декабрь 21, 2020, 20:01
Цитата: alex312
А было бы прикольно если бы оно или аналогичное показывалось всесте с деревом проекта.

Ахх, ясно.

Тут по ходу можно конечно, но придется пере-реализовывать всю логику:

* https://code.visualstudio.com/api/references/vscode-api#registerDocumentSymbolProvider

Из плагина 'cpp-tools' (а там не мало, честно сказать):

* https://github.com/microsoft/vscode-cpptools/blob/main/Extension/src/LanguageServer/Providers/documentSymbolProvider.ts

Может поэтому тоже этой фичи нет и в cmake плагине (по крайней мере у меня нет outline в дереве проекта cmake).
29  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Декабрь 21, 2020, 17:32
UPD: По поводу "отключенных" узлов в дереве проекта пока сделал их отображение в виде зачеркнутого текста (см. картинку).
Но как-то смотрится не очень.

Может какие-нить "кошерные" юникод символы для таких узлов в конце вставлять?
Типа могилки, крестиков и прочих? )

Типа: ❌ , ✗, † , ✂,
30  Qt / Дополнительные компоненты / Re: Создаю QBS плагин для VS Code : Декабрь 21, 2020, 15:58
Цитата: alex312
Сейчас окошко "outline" отображается строго в файлэксплорере.

А что это за окошко? Моешь заскринить? В СМаке плагине оно есть (где)?

Цитата: alex312
Как я писал в дискорде. Есть небольшая проблемка, когда плагин пытается использовать протухший тулчейн.

Тут я хз, надо разбираться почему тут successfully ))

Цитата: alex312
Как видно, запускаемый таргет обозначен ракетой

Нашел ракету, но сюда ее не вставить - она портит тут сообщение.

Цитата: alex312
а uninstall  - зелененький.

А что это за таргет? Почему он зеленый? Может это просто ты забыл в Гит добавить его? (т.к. оно вроде зеленым помечает новые файлы/директории, которые еще не запушены в гит).
Страниц: 1 [2] 3 4 ... 188

Страница сгенерирована за 0.062 секунд. Запросов: 24.