Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 26.12.2015
Сообщений: 4

Смена типа переменной

29.11.2017, 19:44. Показов 1162. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, форумчане! Имеется проблема: разбираю Oculus SDK а именно приложенные к нему примеры. Забегая наперед скажу, что в основном писал на C# и очень узконаправленные утилитки, поэтому и нуждаюсь в помощи в этой реализации на C++. В фрагменте кода, там где XMMatrixSet судя по всему идет оперирование с позицией Oculus Rift. Каким образом я могу сохранять эти значения в переменные типа double/float ?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#define STAGE4_ConfigureVR ovrEyeRenderDesc eyeRenderDesc[2];                                                                                               \
    eyeRenderDesc[0] = ovr_GetRenderDesc(session, ovrEye_Left, HMDInfo.DefaultEyeFov[0]);                                            \
    eyeRenderDesc[1] = ovr_GetRenderDesc(session, ovrEye_Right, HMDInfo.DefaultEyeFov[1]);                                           \
 
#define STAGE4_GetEyePoses ovrPosef EyeRenderPose[2];                                                                                                    \
    ovrPosef HmdToEyePose[2] = { eyeRenderDesc[0].HmdToEyePose, eyeRenderDesc[1].HmdToEyePose };                   \
    double           ftiming = ovr_GetPredictedDisplayTime(session, 0);                                                              \
    ovrTrackingState hmdState = ovr_GetTrackingState(session, ftiming, ovrTrue);                                                     \
    ovr_CalcEyePoses(hmdState.HeadPose.ThePose, HmdToEyePose, EyeRenderPose);
 
#define STAGE4_GetMatrices XMVECTOR eyeQuat = XMVectorSet(EyeRenderPose[eye].Orientation.x, EyeRenderPose[eye].Orientation.y,                                 \
    EyeRenderPose[eye].Orientation.z, EyeRenderPose[eye].Orientation.w);                                  \
    XMVECTOR eyePos = XMVectorSet(EyeRenderPose[eye].Position.x, EyeRenderPose[eye].Position.y, EyeRenderPose[eye].Position.z, 0);    \
    XMVECTOR CombinedPos = XMVectorAdd(mainCam.Pos, XMVector3Rotate(eyePos, mainCam.Rot));                                            \
    Camera finalCam(CombinedPos, (XMQuaternionMultiply(eyeQuat, mainCam.Rot)));                                                   \
    XMMATRIX view = finalCam.GetViewMatrix();                                                                                         \
    ovrMatrix4f p = ovrMatrix4f_Projection(eyeRenderDesc[eye].Fov, 0.2f, 1000.0f, ovrProjection_None);                                \
    XMMATRIX proj = XMMatrixSet(p.M[0][0], p.M[1][0], p.M[2][0], p.M[3][0], \
    p.M[0][1], p.M[1][1], p.M[2][1], p.M[3][1], \
    p.M[0][2], p.M[1][2], p.M[2][2], p.M[3][2], \
    p.M[0][3], p.M[1][3], p.M[2][3], p.M[3][3]);
P.S вопрос скорее к знанию синтаксиса C++, заранее благодарю за помощь
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.11.2017, 19:44
Ответы с готовыми решениями:

MFC смена типа приложения
Может кто подскажет, как без создания нового проекта переделать приложение с много документным интерфейсом в одно документный?

Динамическое изменение типа переменной
Всем привет, я только недавно начал вникать в азы программирования и сейчас, делая проект, столкнулся с такой проблемой, что не возникает...

Задать значение переменной типа DWORD из файла
Всем привет. Решил одну проблему, но появилась другая. Мне нужно задать значение переменной типа DWORD из файла, вот мой код: FILE *fp; ...

1
913 / 339 / 135
Регистрация: 18.07.2017
Сообщений: 1,485
04.12.2017, 22:19
Если p.M - открытый член, то можно так:

C++
1
2
3
4
5
float mas[4][4];
 
for(int i=0; i<4; i++)
  for(int j=0; j<4; j++)
    mas[i][j]=p.M[i][j];
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.12.2017, 22:19
Помогаю со студенческими работами здесь

Проблема с выводом в textbox переменной типа double
проблема вот в чем, после нехитрого преобразования // это кусок кода, от калькулятора, выводящий значения на табло. // Я знаю, что у...

Можно ли заменить обращение к Union без указания типа переменной?
Можно ли заменить обращение к Union без указания типа переменной?(т.е. без .i .f .str, а просто к &quot;data&quot;) #include...

Dialog based MFC приложение, установка лимита для переменной Edit типа Double
Здравствуйте! Возникла проблемка, мне нужно связать поле Edit1 с переменной m_x1 типа double и установить диапазон: Минимальное значение:...

Смена типа переменной string на int
Нужно сменить тип переменной string на int.

Смена типа переменной и удаление ее из файла после чтения
Помогите решить проблему схема такая: 1) Записали число С в файл 2) Открыли этот файл прочитали переменную С и прибавили к ней + 1....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru